* removed clutter
* moved hot reload to seperate module
* added back "assets loaded" event, removed useless events
* registered HideUntilReady component for users
* minor tweaks & cleanups
* bumped up Bevy version to v0.14 !
* fixed (albeit in a clunky way) issues with sub blueprint detection
* improved error message for missing material library
* added HideUntilReady component & logic, to hide 'in-spawning' blueprint instances until they are ready
* "add-to-world" is now only trigerred for blueprint instances that have no parents (avoid footgun)
* minor cleanups & tweaks
* added test component with Vec3 to double check for issues
* updated test blend file to include the component above + added a light to the test spawnable blueprint
to check for "light flashes" (aka indirectly testing "HideUntilReady")
* includes components, registry export & blueprints
* overhauled settings / config to match the new structure
* keeping the different sub plugins for now
* cleaned up some of the internals of the blueprints code
* related tweaks & cleanups
* added events to blueprints : for when assets have been loaded & when a blueprint has been spawned (wip)
* various experiments with blueprints
* updated testing to make use of new crate & logic
* removed/ obsoleted blueprintsList
* now using AllAssets (meh naming)
* modified example & internals to enable loading levels as Blueprints as well
* internals quite messy for now, needs a big cleanup still
* disabled materials library for now, needs to be overhauled to make use of asset logic as well
* added more mock assets for testing
* related changes to blender & bevy side
* changed all various uses of short name to long_name
* same for type_names
* also changed bevy_registry_export to output "long_name" instead of "title" for coherence
* related changes & tweaks
* still WIP
* moved triggering of frame marker events to the blueprints crate
* added additional handling of frame markers for blueprint animations (yikes is this convoluted)
* added additional animated blueprint for testing blueprint animation markers
* renamed Animated component to AnimationInfos, fleshed it out with additional
frame informations etc
* restructured & cleaned up Bevy & Blender code in those areas a bit
* various related minor tweaks
* added additional component on the Bevy side + experimented with handling the data in the testing setup
* added parsing of animation markers on the Blender side + injection of custom property/ component
* rough around the edges, but the basics work !
* auto_export now injecting the list of available animations into the "Animated" component
for any object with animations
* modified bevy side struct to match
* fleshed out testing of hierarchy
* added export of serialized hierarchy from the bevy side & comparing it with a reference
one on the python side
* various tweaks
* allows to not be restricted by bevy's a bit weird logic for AnimationPlayers
* updated crate & tooling
* updated testing example with a bit more complex nesting cases for testing
* now trying to copy the animation to the "empty" placeholder using animation linking operator
* now in gltf viewer we can see the two animations/actions, but still nothing in Bevy
* closes#80
* preliminary work for further asset management from the Blender side without needing additional dependencies & boilerplate on the Bevy side
* feat(auto_export):
* now injecting list/tree of sub blueprints to main scenes/levels & blueprints
* made blueprints/asset list conditional on NOT legacy mode
* feat(gltf_blueprints):
* basics of dynamic loading of sub_blueprints
* added same kind of logic to the loading of material files
* also made a more generic variant of the BlueprintAssetLoadTracker
* added gltf file path for more informative error in case a gltf is missing
* refactor():
* made the various gltf assets loaded by bevy_asset_loader optional (to handle the case where they are not present)
* updated all examples accordingly
* chore(crates): fixed links, slight tweaks, bumped versions
* chore(crates): updated crates to Bevy 0.13
* updated deps
* updated / changed code where relevant
* updated README files
* bumped version numbers for upcoming release
* updated rust-toolchain
* updated assets where relevant
* closes#132
* feat(bevy_gltf_components):
* added GltfProcessed flag component to improve performance of iteration over added<gltfExtras>
* closes#144
* light & shadow processing is now integrated, to match lights coming from Blender: you can now control whether
lights cast shadows, the cascade resolution , background color etc from Blender
* closes#155
* feat(bevy_registry_export): added boilerplate to make registry path relative to assets folder
* closes#137
* feat(tools): added boilerplate for internal tools
* clean zip file generator for blender add-on releases
* example gltf file generator
* feat(lighting): added components, exporter support & testing for blender-configurable shadows
* added BlenderLightShadows component to bevy_gltf_components
* added writing shadow information to gltf_auto_export
* updated tests
* closes#157
Co-authored-by: Jan Hohenheim <jan@hohenheim.ch>
* fix(gltf_auto_export): added fix for correct "deep-copying" of objects & hierarchy so that animated
meshes & nested hierarchies get exported correctly
* test(gltf_auto_export):
* added visual testing to check for overall regression :
* added screenshoting in bevy app
* added visual compare with reference screenshot on python side
* added testing of correct export of animated models
* added testing of correct export of empties
* added testing of correct export of nested hierarchies
* added testing of correct export of blueprints, with & without components etc
* fixes#147
* added filtering out of invalid components/ custom properties:
* includes filtering out of invalid / disabled components as defined in bevy_components, components_meta etc
* completely changed handling of "unique" (non blueprint) objects by copying them instead of moving/renaming them & manipulating their custom properties : much cleaner, much simpler !
* disabled default gltf export of optimised animations
* added tests !
* closes#139
* closes#141
* closes#142
* closes#146