Blender Bevy Components Workflow Addon Free Download
Crates & tools for adding components from gltf files in the Bevy game engine.
It enables minimalistic Blender (gltf) centric workflow for Bevy, ie defining entites & their components inside Blender using Blender’s objects custom properties. Aka “Blender as editor for Bevy”
It also allows you to setup ‘blueprints’ in Blender by using collections (the recomended way to go most of the time), or directly on single use objects .
Features
Useful if you want to use Blender (or any editor allowing to export gltf with configurable gltf_extras) as your Editor
define Bevy components as custom properties in Blender (some visually , some using RON, though an older JSON version is also available)
no plugin or extra tools needed in Blender (but I provide a little Blender add-on to auto-export to gltf on save (and more !) if you want !)
now also with a nice UI tool to add & edit Bevy components in Blender
define components in Blender Collections & override any of them in your collection instances if you want
ability to automatically turn your Blender collections into gltf Blueprints for reuse
minimal setup & code, you can have something basic running fast
minimal dependencies: Bevy, Serde & Ron only !
opensource
Crates
bevy_gltf_components This crate allows you to define components direclty inside gltf files and instanciate/inject the components on the Bevy side.
There is a video tutorial/explanation if you want, or you can read the crate docs. The examples for the crate are here
bevy_gltf_blueprints This crate adds the ability to 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
There is a video tutorial/explanation for this one too, or you can read the crate docs The examples for the crate are here
Note: this is the recomended crate to use and uses bevy_gltf_components under the hood
bevy_gltf_save_load This crate adds the ability to save & load your game state in a relatively simple way, by leveraging the blueprint functionality of bevy_gltf_blueprints to only save a minimal subset of dynamic data, seperating dynamic & static parts of levels etc. The examples for the crate are here
Note: this uses bevy_gltf_blueprints under the hood
bevy_registry_export This crate adds the ability to 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 bevy_components add-on
Tools
Blender: gltf_auto_export
for convenience I also added a Blender addon that automatically exports your level/world from Blender to gltf whenever you save your Blend file
it also supports automatical exports of collections as Gltf blueprints & more !
Please read the README of the add-on for installation & use instructionsExamples
you can find all examples, by crate as seperate crates for clearer dependencies in here
bevy_gltf_components
basic use of bevy_gltf_components only, to spawn entities with components defined inside gltf files
bevy_gltf_blueprints
basic more advanced example : use of bevy_gltf_blueprints to spawn a level and then populate it with entities coming from different gltf files, live (at runtime) spawning of entities etc
animation how to use and trigger animations from gltf files (a feature of bevy_gltf_blueprints)
& lots more
bevy_gltf_save_load
bevy_registry_export
Workflow
The workflow goes as follows (once you got your Bevy code setup)
create & register all your components you want to be able to set from the Blender side (this is basic Bevy, no specific work needed)
component registration
then you have two options
add your components to objects in Blender manually as custom properties : see here for more details
add your components to objects in Blender with a nice UI see here for more details
Post Comment