* feat(bevy_gltf_blueprints):
* added support for nested blueprints
* added example/test for nested blueprints with multiple levels of nesting
* feat(tools/gltf_auto_export):
* implemented functionality to export nested blueprints/collection instances
* added add prefs to control nested blueprints export
* experiments with nested blueprints merge modes
* when exporting of nested blueprints is disabled, will not scan for nested blueprints
and thus no export them
* docs(): updated docs & added images for nested blueprints support
* feat(tools): scene component injection & export
- ambient light, shadowmap resolution, bloom intensity, ambient occlusion are now directly settable from scene components that are injected automatically in the scene
- relaxed requirements for changes(aka when to export gltf) for main scenes,
so that render , background etc changes also trigger a save
- added scene components examples
- added additional proxies & handling for camera & lights
- in relevant cases, made sure that entity specific components are not overridden by scene components
- added option to toggle scene level exports of params/ components
- ambient colour/ intensity is now also set as background/clear colour
- updated docs
* updates both gltf_auto_export & bevy_gltf_blueprints to avoid duplicating common materials across blueprints
* feat(tools/gltf_auto_export): added materials library export !
* export all materials in use by blueprints to a separate temporary scene with cubes (for now)
with the materials assigned
* injecting MaterialInfo components to each blueprint above with Material name + library name
* generated gltf is named based on the project/blend file, so multiple blend file projects
can each have their own material libraries
* added preferences & ui & handling to be able to toggle material library exports
* feat(bevy_gltf_blueprints): added support for materials library!
* material injection (toggleable via the plugin configuration)
* added example
* added materials library + texture files + updated assets
* added physics debug toggling
* updated documentation
* closes#63
* restrict main_menu system to only run in AppState::MenuRunning
* this is desired because hitting enter once we transition to AppState::AppRunning pressing enter will still trigger keycode.just_pressed in main_menu and set state to AppState::AppLoading and crash the game when it tries to create another scene, camera, etc...
* settable via a config flag & systems won't run if the flag is not set
* caches aabbs per blueprint name so they do not need to be recomputed multiple time for the same blueprint
* closes#56
* added basic assets & logic for scene switching upon reaching a trigger zone ! Works !
* added toggling of physics debug
* added handling of nested colliders for LevelTransitions
* fix/ addition for point light intensity scaling & shadows
* closes#40
* feat(examples): added basic_xpbd_physics example
* adapted code from rapier physics
* updated blend file & exported gltf files
* changes & tweaks to cargo files so the examples are scanned as they should be
* various minor tweaks
* refactor(examples): moved examples into more logic folders & changed to allow for per example dependencies
* chore(): updated docs, added docs, updated deps , cargo files etc
* feat(animation): added example & boilerplate
* moved animations specific code to a different module
* added multiple robots & foxes
* added example of controlling animation based on distance from the player
* removed obsolete files
* added information about animation to READMEs
* updated dependencies
closes#26
* fixed bad default path for library
* added missing ComponentsFromGltfPlugin which causes the blueprint plugin not to work as expected if ComponentsFromGltfPlugin is not added elsewhere
* all info! calls are now debug! for a less spammy debugging experience
* refactor(examples:advanced):
* removed ComponentsFromGltfPlugin as that is now included directly in the blueprints plugin
* moved all physics (rapier) related code to the core/physics module
* feat(bevy_gltf_components):
* create crate
* added SystemSet (GltfComponentsSet) to run process_loaded_scenes (where components are injected)
in a specific systemset & allow ordering other systems relative to it
* feat(bevy_gltf_blueprints):
* created crate
* made the blueprint library path configurable
* added BluePrintBundle helper
* added SystemSet (GltfBlueprintsSet) for better system ordering
* integrated into advanced demo
* feat(tools-blender-auto-export):
* renamed blender tool to gltf_auto_export
* rewritten auto_export
* added blueprint / prefab support
* creates scene with empties with BlueprintName components in the scene
* export of the main scene now exports this scene instead of real main scene
* changes collection stand in names in original scene & sets them back after export
to have correctly named collection instance exports
* also added an additional 'SpawnHere' component to not conflate BlueprintNames & spawning requests
* toggling & blueprint library output parameters added
* added correct handling/ restoring of saved selection when using blueprints
* feat(examples):
* added advanced example
* general example renamed to "basic", and cleaned up
* feat(various): a lot of experiments with saving & loading etc
* chore(assets): updated blend & generated assets
* fix(examples-advanced): disabling hot reloading as it messes up scenes in experiments with save & loading
* docs():
* added & fleshing out docs for the various crates & main README
* added process doc image & tweaks to README
* added missing licence info where relevant
* fixed broken links
* clarified some aspects
* added updated screenshots where relevant
* added tweaks & improvements etc
* split documentation between main docs & example docs
* clearer seperation between example, blender add on etc
* some minor code quality improvements based on Clippy linting
* minor tweaks & additions to Blender & gltf example files: swapped out one mesh collider
for a capsule collider for demo purposes
* cleanups, tweaks, badges etc
* refactor(): restructured code to turn the process_gltf (core) part into a crate
* changed process_gltf into a lib/crate basics
* changed current demo setup into an example that is importing the new crate
* updated imports in the crate side
* updated dependencies
* cleanups
* added more clear information about preUpdate vs setup
* improved README/ added use as crate examples