mirror of
https://github.com/kaosat-dev/Blender_bevy_components_workflow.git
synced 2024-11-22 03:50:52 +00:00
Compare commits
2 Commits
b3fe1b33bb
...
ad1670829d
Author | SHA1 | Date | |
---|---|---|---|
|
ad1670829d | ||
|
a2f8a66f66 |
38
README.md
38
README.md
@ -29,8 +29,8 @@ Want to jump right in? See the [quickstart guide](https://github.com/kaosat-dev/
|
||||
## Features
|
||||
|
||||
* Useful if you want to use Blender as your Editor
|
||||
* define Bevy components as custom properties in Blender with an UI tool to add & edit Bevy components, automatically export gltf blueprints & more in [Blender](./tools/blenvy/README.md)
|
||||
* blueprints & levels system : turn your Blender collections into [gltf Blueprints](./crates/blenvy/README.md) for reuse inside levels that are just Blender scenes
|
||||
* define Bevy components as custom properties in Blender with an UI tool to add & edit Bevy components, automatically export gltf blueprints & more in [Blender](https://github.com/kaosat-dev/Blenvy/tree/blenvy/tools/blenvy)
|
||||
* blueprints & levels system : turn your Blender collections into [gltf Blueprints](https://github.com/kaosat-dev/Blenvy/tree/blenvy/crates/blenvy) for reuse inside levels that are just Blender scenes
|
||||
* setup & tweak components in Blender Collections & override any of them in your collection instances if you want
|
||||
* setup & tweak components for objects, meshes and materials as well !
|
||||
* automatically load all assets for each blueprint (gltf files, manually added assets), with no setup required
|
||||
@ -39,15 +39,15 @@ Want to jump right in? See the [quickstart guide](https://github.com/kaosat-dev/
|
||||
* minimal dependencies: Bevy, Serde & RON only!
|
||||
* opensource
|
||||
|
||||
> If you were previously using the individual bevy_gltf_xxx crates & Blender add-ons please see the [migration guide](./Migration_guide.md)
|
||||
> If you were previously using the individual bevy_gltf_xxx crates & Blender add-ons please see the [migration guide](https://github.com/kaosat-dev/Blenvy/blob/blenvy/Migration_guide.md)
|
||||
|
||||
## Crates
|
||||
|
||||
One crate to rule them all !
|
||||
|
||||
* [blenvy](./crates/blenvy/) This crate allows you to
|
||||
* [blenvy](https://github.com/kaosat-dev/Blenvy/tree/blenvy/crates/blenvy) This crate allows you to
|
||||
* define components direclty inside gltf files and instanciate/inject the components on the Bevy side.
|
||||
* export your project's Bevy registry to json, in order to be able to generate custom component UIs on the Blender side in the Blender [blenvy](./tools/blenvy/README.md) add-on
|
||||
* export your project's Bevy registry to json, in order to be able to generate custom component UIs on the Blender side in the Blender [blenvy](https://github.com/kaosat-dev/Blenvy/tree/blenvy/tools/blenvy) add-on
|
||||
* define Blueprints/Prefabs for Bevy inside gltf files and spawn them in Bevy. With the ability to override and add components when spawning, efficient "level" loading etc
|
||||
* the ability to save & load your game state in a relatively simple way, by leveraging the blueprint functionality to only save a minimal subset of dynamic data, seperating dynamic & static parts of levels etc.
|
||||
|
||||
@ -55,26 +55,26 @@ One crate to rule them all !
|
||||
There is a [video tutorial/explanation](https://youtu.be/-lcScjQCA3c) if you want, or you can read the crate docs.
|
||||
There is a [video tutorial/explanation](https://youtu.be/CgyNtwgYwdM) for this one too, or you can read the crate docs
|
||||
|
||||
The examples for the crate are [here](./examples/blenvy/)
|
||||
The examples for the crate are [here](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples)
|
||||
|
||||
## Tools
|
||||
|
||||
### Blender: blenvy
|
||||
|
||||
* an all in one [Blender addon](./tools/blenvy/README.md) for the Blender side of the workflow:
|
||||
* an all in one [Blender addon](https://github.com/kaosat-dev/Blenvy/tree/blenvy/tools/blenvy) for the Blender side of the workflow:
|
||||
* allow easilly adding & editing Bevy components , using automatically generated UIs for each component
|
||||
* automatically exports your level/world from Blender to gltf whenever you save your Blend file
|
||||
* automatically export your [Gltf blueprints](./crates/blenvy/README.md) & assets
|
||||
* automatically export your [Gltf blueprints](https://github.com/kaosat-dev/Blenvy/tree/blenvy/crates/blenvy) & assets
|
||||
|
||||
## Examples
|
||||
|
||||
you can find all examples, [here](./examples/blenvy)
|
||||
you can find all examples, [here](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples)
|
||||
|
||||
* [components](./examples/blenvy/components/) use of ```components``` only, to spawn entities with components defined inside gltf files
|
||||
* [blueprints](./examples/blenvy/blueprints/) use of ```blueprints``` and ```levels``` to spawn a level and then populate it with entities coming from different gltf files, live (at runtime) spawning of entities etc
|
||||
* [animation](./examples/blenvy/animation/) how to use and trigger animations from gltf files
|
||||
* [save_load](./examples/blenvy/save_load/) how to save & load levels
|
||||
* [demo](./examples/demo/) a full demo showcasing all features , including physics, animation
|
||||
* [`components`](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples/components/) use of ```components``` only, to spawn entities with components defined inside gltf files
|
||||
* [`blueprints`](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples/blueprints/) use of ```blueprints``` and ```levels``` to spawn a level and then populate it with entities coming from different gltf files, live (at runtime) spawning of entities etc
|
||||
* [`animation`](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples/animation/) how to use and trigger animations from gltf files
|
||||
* [`save_load`](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples/save_load/) how to save & load levels
|
||||
* [`demo`](https://github.com/kaosat-dev/Blenvy/tree/blenvy/examples/demo/) a full demo showcasing all features , including physics, animation
|
||||
|
||||
## Workflow
|
||||
|
||||
@ -84,12 +84,12 @@ The workflow goes as follows (once you got your Bevy code setup)
|
||||
|
||||
![component registration](https://github.com/kaosat-dev/Blenvy/blob/main/docs/component_registration.png)
|
||||
|
||||
* setup & then use the Blenvy [Bevy crate](./crates/blenvy/README.md)
|
||||
* setup & then use the Blenvy [Blender add-on](./tools/blenvy/README.md)
|
||||
* setup & then use the Blenvy [Bevy crate](https://github.com/kaosat-dev/Blenvy/tree/blenvy/crates/blenvy)
|
||||
* setup & then use the Blenvy [Blender add-on](https://github.com/kaosat-dev/Blenvy/tree/blenvy/tools/blenvy)
|
||||
* iterate
|
||||
* have fun !
|
||||
|
||||
* then add your components to objects in Blender **with a nice UI** see [here](./README-workflow-ui.md) for more details
|
||||
* then add your components to objects in Blender **with a nice UI** see [here](https://github.com/kaosat-dev/Blenvy/blob/blenvy/README-workflow-ui.md) for more details
|
||||
|
||||
See the [quickstart](https://github.com/kaosat-dev/Blenvy/blob/main/docs/quickstart/README.md) for a full step-by-step guide.
|
||||
|
||||
@ -119,5 +119,5 @@ Thanks to all the contributors helping out with this project ! Big kudos to you,
|
||||
|
||||
This repo, all its code, contents & assets is Dual-licensed under either of
|
||||
|
||||
* Apache License, Version 2.0, ([LICENSE-APACHE](./LICENSE_APACHE.md) or <https://www.apache.org/licenses/LICENSE-2.0>)
|
||||
* MIT license ([LICENSE-MIT](./LICENSE_MIT.md) or <https://opensource.org/licenses/MIT>)
|
||||
* Apache License, Version 2.0, ([LICENSE-APACHE](https://github.com/kaosat-dev/Blenvy/blob/blenvy/LICENSE_APACHE.md) or <https://www.apache.org/licenses/LICENSE-2.0>)
|
||||
* MIT license ([LICENSE-MIT](https://github.com/kaosat-dev/Blenvy/blob/blenvy/LICENSE_MIT.mdd) or <https://opensource.org/licenses/MIT>)
|
||||
|
@ -1,3 +1,5 @@
|
||||
#![doc = include_str!("../../../README.md")]
|
||||
|
||||
use bevy::{render::primitives::Aabb, utils::HashMap};
|
||||
use std::path::PathBuf;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user