* relying on the fact that the mesh-per-material generated by the gltf exporter is deterministic:
ie always uses the ordering of materials in an object
* added new component MaterialInfos (plural) with a vec of MaterialInfo's
* modified how materials per object are gathered on the Blender side
* and modified the processing on the Bevy side to also use the ordered approach
* seems to work well so far !
* removed file_watcher feature, should be user settable
* added root blueprintInfo path to the list of assets to watch for hot reload
* removed settable aabb calculation: they will now always be done
* added "export_registry" setting to be able to disable registry export for wasm & co (automate later)
* minor tweaks
* cleanups
* fixed & improved the Blenvy crate README
* make a few things conditional on whether hot reload is enabled or not
* cleaned up very verbose debug messages
* a few renames & coherency pass
* cleanups cleanups, cleanups !
* chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14
* chore(Blender tools): some minor fixed for Bevy 0.14 & version bump
* normally this should NOT happen if the blueprints to spawn are correctly generated
(by the Blender add-on) gltf files, but better safe (no unwrap!) than sorry
* started docs for Blender Blenvy add-on
* started migration guide
* got rid of a few examples
* moved (for now, wip) all remaining examples under the Blenvy umbrella
* updated main README
* fixed issue with undeleted bin file when setting gltf export options for gltf/bin mode
* updated release tools (internal_generate_release_zips)
* moved main TODO to root of repo
* a lot of related prep work & cleanup
* does not try to respawn parents & their children at the same time anymore
* does not try to respawn already spawning blueprint instances anymore
* "batches" respawning per set of simultaneous changes to assets to avoid chaotic respawning
* minor other tweaks & improvements
* added mapping of assets to blueprint instance ids so we know which blueprint instances
need to be de/respawned when a given asset changes
* simplified & streamlined internals of hot reloading using the above
* related cleanups & minor improvements
* fixed huge logical error in component processing (require Name components) that was breaking
scene level extras/components
* added a convience from_path function to BlueprintInfos to generate name from path
* minor tweaks
* VERY clunky code so far, needs a massive cleanup, but works !
* modified relevant code
* modified testing/example
* related minor tweaks & changes
* small changes to blend project to test instance vs blueprint level animation controls
* updated logic to account for bevy 0.14 changes (animation graph, transitions component etc)
* added back & updated per blueprint animation example to the testing project
* updated matching blend file with new style components
* spawnHere => spawnBlueprint
* added back tagging of Blueprint contents with "InBlueprint" / noInBlueprint
* overall cleanup pass (wip)
* 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")
* updated simple test to include deep nested blueprint instance within blueprint instance case
* restructured materials handling to use the new logic, removed clutter
* experimenting with solutions to the deeply nested blueprint instances problem
* moved out all obsolete code to "old" folder, keeeping around until all problems are solved
* added hack-ish solution to the "aabb system as post process" implementation
* various minor boilerprate changes
* added logic to track spawning of sub blueprints
* added ability to determine when a blueprint instance is truly ready
(aka all its assets have been loaded, blueprint scene & sub scenes spawned & processed etc)
* reworked spawning steps for more determinism & reliability
* no more "seperate" spawning post process
* lots of related changes
* still messy but functional
* Blender: some additional component filtering for upgrade ui
* Bevy:
* experimenting with overhauled blueprint spawning logic, sub-blueprint instance tracking etc
* added a more simple blend file to test things out with
* cleaned up hot reload code a bit
* renamed a few things for clarity
* experimented with hiding entity while spawning & showing it again after spawn to
try and remove "flashes" happening when spawning blueprints with lights
* for testing example, fixed dynamic spawner test
* contains both name & path
* also experimented with merging the asset load tracking into BlenvyAssets by adding the fields from the
asset loading tracker & ignoring them/ defaulting them for deserialization
to get the list of assets & preload them
* a tiny bit clunky but works and is somewhat cleaner than the previous "staggered loading" approach
* enables having level load state (could be used for progress information & co)
* modified blueprints spawning to used the new system
* various cleanups & related tweaks
* fixed issues on the Blender side when with the formating of the ron data for assets
* fixed handling of scene gltf_extras
* fixed handling of colors for BlenderBackgroundShader
* added scene tonemapping & scene colorgrading and handling on the Bevy side.
* experimented with exporting ron asset files, updated & overhauled asset file generation, adapted
for blueprints
* various cleanups
* 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
* tweaked & changed code where relevant
* also added support for the new gltf_xxx_extras in bevy_gltf_components
* animation support needs an overhaul given the extensive changes in v0.14 (wip)
* still a giant mess, but works
* examples not yet updated, will get overhauled
* testing project is now independant from the "common" example code: ie no debug ui, no physics,
no bevy_asset_loader
* testing project WORKS , even without any of the above, so asset loading (even if rough), is functional !
* added VERY rough hierarchy/ components debug to testing project to visualize things
without bevy_editor_pls egui & co
* related tweaks & changes
* removed old blender add-ons, there is now only Blenvy !
* updated most of the main docs accordingly
* updated project name in main README
* etc
* related tweaks
* removed format, materials library path, & library path from blueprints, obsoleted through "blueprints_path"
* related cleanups
* added back materials library support but using the assets path
* split out materials scan from injection of materialInfo into objects
* added material Asset injection into list of assets at scene level
* related tweaks & cleanups
* continued overhaul on the bevy side
* 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