From 3380f4c71d8bbd8ceb62fbf9d4130e431967b0c7 Mon Sep 17 00:00:00 2001 From: "kaosat.dev" Date: Tue, 16 Jul 2024 01:14:41 +0200 Subject: [PATCH] chore(): updated docs, moved examples around etc * 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 --- Cargo.toml | 5 +- Migration_guide.md | 143 + README-workflow-ui.md | 4 +- README.md | 86 +- tools/blenvy/TODO.md => TODO.md | 16 +- .../src/blueprints/spawn_from_blueprints.rs | 7 +- .../bevy_gltf_components/basic/Cargo.toml | 10 - examples/bevy_gltf_components/basic/README.md | 64 - .../basic/assets/basic.blend | Bin 1372324 -> 0 bytes .../basic/assets/models/Level1.glb | Bin 78932 -> 0 bytes .../bevy_gltf_components/basic/index.html | 27 - .../bevy_gltf_components/basic/src/main.rs | 74 - .../basic/src/test_components.rs | 80 - .../bevy_registry_export/basic/Cargo.toml | 13 - examples/bevy_registry_export/basic/README.md | 15 - .../basic/assets/assets_core.assets.ron | 1 - .../basic/assets/assets_game.assets.ron | 6 - .../basic/assets/basic.blend | Bin 1427248 -> 0 bytes .../basic/assets/models/World.glb | Bin 8092 -> 0 bytes .../basic/assets/models/library/Container.glb | Bin 5556 -> 0 bytes .../assets/models/library/Health_Pickup.glb | Bin 5104 -> 0 bytes .../assets/models/library/MagicTeapot.glb | Bin 23656 -> 0 bytes .../basic/assets/models/library/Pillar.glb | Bin 3596 -> 0 bytes .../basic/assets/models/library/Player.glb | Bin 28332 -> 0 bytes .../models/library/Unused_in_level_test.glb | Bin 5212 -> 0 bytes .../basic/assets/registry.json | 13008 ---------------- .../basic/src/core/mod.rs | 19 - .../basic/src/game/in_game.rs | 83 - .../basic/src/game/in_main_menu.rs | 107 - .../basic/src/game/mod.rs | 19 - .../bevy_registry_export/basic/src/main.rs | 24 - .../basic/src/test_components.rs | 136 - .../animation/Cargo.toml | 0 .../animation/README.md | 0 .../animation/assets/animation.blend | Bin .../animation/assets/assets_core.assets.ron | 0 .../animation/assets/assets_game.assets.ron | 0 .../animation/assets/models/Level1.glb | Bin .../animation/assets/models/animation.glb | Bin .../assets/models/library/Container.glb | Bin .../animation/assets/models/library/Fox.glb | Bin .../assets/models/library/Health_Pickup.glb | Bin .../assets/models/library/MagicTeapot.glb | Bin .../assets/models/library/Pillar.glb | Bin .../assets/models/library/Player.glb | Bin .../assets/models/library/Wheelbot.glb | Bin .../animation/src/core/mod.rs | 0 .../animation/src/game/in_game.rs | 0 .../animation/src/game/in_main_menu.rs | 0 .../animation/src/game/mod.rs | 0 .../animation/src/main.rs | 0 .../animation/src/state.rs | 0 .../animation/src/test_components.rs | 0 .../basic/Cargo.toml | 0 .../basic/README.md | 0 .../basic/assets/assets_core.assets.ron | 0 .../basic/assets/assets_game.assets.ron | 0 .../basic/assets/basic.blend | Bin .../basic/assets/models/World.glb | Bin .../basic/assets/models/library/Container.glb | Bin .../basic/assets/models/library/Enemy.glb | Bin .../basic/assets/models/library/Finger.glb | Bin .../basic/assets/models/library/Hand.glb | Bin .../assets/models/library/Health_Pickup.glb | Bin .../assets/models/library/Humanoid_cactus.glb | Bin .../assets/models/library/MagicTeapot.glb | Bin .../basic/assets/models/library/Pillar.glb | Bin .../basic/assets/models/library/Player.glb | Bin .../models/library/Unused_in_level_test.glb | Bin .../basic/index.html | 0 .../basic/src/core/mod.rs | 0 .../basic/src/game/in_game.rs | 0 .../basic/src/game/in_main_menu.rs | 0 .../basic/src/game/mod.rs | 0 .../basic/src/main.rs | 0 .../basic/src/test_components.rs | 0 .../basic_xpbd_physics/Cargo.toml | 0 .../basic_xpbd_physics/README.md | 0 .../basic_xpbd_physics/assets/advanced.blend | Bin .../assets/assets_core.assets.ron | 0 .../assets/assets_game.assets.ron | 0 .../assets/models/World.glb | Bin .../assets/models/library/Container.glb | Bin .../assets/models/library/Health_Pickup.glb | Bin .../assets/models/library/MagicTeapot.glb | Bin .../assets/models/library/Pillar.glb | Bin .../assets/models/library/Player.glb | Bin .../models/library/Unused_in_level_test.glb | Bin .../basic_xpbd_physics/src/core/mod.rs | 0 .../basic_xpbd_physics/src/game/in_game.rs | 0 .../src/game/in_main_menu.rs | 0 .../basic_xpbd_physics/src/game/mod.rs | 0 .../basic_xpbd_physics/src/main.rs | 0 .../basic_xpbd_physics/src/test_components.rs | 0 .../materials/Cargo.toml | 0 .../materials/README.md | 0 .../materials/assets/assets_core.assets.ron | 0 .../materials/assets/assets_game.assets.ron | 0 .../materials/assets/materials.blend | Bin .../materials/materials_materials_library.glb | Bin .../materials/assets/models/Level1.glb | Bin .../assets/models/library/Container.glb | Bin .../assets/models/library/Health_Pickup.glb | Bin .../assets/models/library/Magic Sphere.glb | Bin .../assets/models/library/MagicTeapot.glb | Bin .../assets/models/library/Pillar.glb | Bin .../assets/models/library/Pillar2.glb | Bin .../assets/models/library/Player.glb | Bin .../assets/models/library/Watermelon cut.glb | Bin .../assets/models/library/Watermelon.glb | Bin .../assets/models/library/Watermelon2.glb | Bin .../assets/textures/juicy-watermelon-5882.png | Bin .../assets/textures/watermelon-6441.png | Bin .../materials/src/core/mod.rs | 0 .../materials/src/game/in_game.rs | 0 .../materials/src/game/in_main_menu.rs | 0 .../materials/src/game/mod.rs | 0 .../materials/src/main.rs | 0 .../materials/src/test_components.rs | 0 .../basic => blenvy/save_load}/Cargo.toml | 0 .../basic => blenvy/save_load}/README.md | 0 .../save_load}/assets/assets_core.assets.ron | 0 .../save_load}/assets/assets_game.assets.ron | 0 .../save_load}/assets/basic.blend | Bin .../save_load}/assets/models/World.glb | Bin .../assets/models/World_dynamic.glb | Bin .../assets/models/library/Container.glb | Bin .../assets/models/library/Ground.glb | Bin .../assets/models/library/Health_Pickup.glb | Bin .../assets/models/library/MagicTeapot.glb | Bin .../assets/models/library/Pillar.glb | Bin .../assets/models/library/Player.glb | Bin .../assets/models/library/Sphero.glb | Bin .../models/library/Unused_in_level_test.glb | Bin .../save_load}/assets/scenes/save.scn.ron | 0 .../save_load}/src/core/mod.rs | 0 .../save_load}/src/game/in_game.rs | 0 .../save_load}/src/game/in_game_loading.rs | 0 .../save_load}/src/game/in_game_saving.rs | 0 .../save_load}/src/game/in_main_menu.rs | 0 .../save_load}/src/game/mod.rs | 0 .../basic => blenvy/save_load}/src/main.rs | 0 .../save_load}/src/test_components.rs | 0 tools/blenvy/README.md | 288 + tools/blenvy/README_components.md | 297 - tools/blenvy/TODO_auto_export.md | 69 - tools/blenvy/add_ons/auto_export/__init__.py | 6 + .../blender_addon_install.png | Bin .../blenvy/{README_auto_export.md => old.md} | 213 +- tools/internal_generate_release_zips.py | 6 +- 150 files changed, 613 insertions(+), 14213 deletions(-) create mode 100644 Migration_guide.md rename tools/blenvy/TODO.md => TODO.md (97%) delete mode 100644 examples/bevy_gltf_components/basic/Cargo.toml delete mode 100644 examples/bevy_gltf_components/basic/README.md delete mode 100644 examples/bevy_gltf_components/basic/assets/basic.blend delete mode 100644 examples/bevy_gltf_components/basic/assets/models/Level1.glb delete mode 100644 examples/bevy_gltf_components/basic/index.html delete mode 100644 examples/bevy_gltf_components/basic/src/main.rs delete mode 100644 examples/bevy_gltf_save_load/basic/src/test_components.rs delete mode 100644 examples/bevy_registry_export/basic/Cargo.toml delete mode 100644 examples/bevy_registry_export/basic/README.md delete mode 100644 examples/bevy_registry_export/basic/assets/assets_core.assets.ron delete mode 100644 examples/bevy_registry_export/basic/assets/assets_game.assets.ron delete mode 100644 examples/bevy_registry_export/basic/assets/basic.blend delete mode 100644 examples/bevy_registry_export/basic/assets/models/World.glb delete mode 100644 examples/bevy_registry_export/basic/assets/models/library/Container.glb delete mode 100644 examples/bevy_registry_export/basic/assets/models/library/Health_Pickup.glb delete mode 100644 examples/bevy_registry_export/basic/assets/models/library/MagicTeapot.glb delete mode 100644 examples/bevy_registry_export/basic/assets/models/library/Pillar.glb delete mode 100644 examples/bevy_registry_export/basic/assets/models/library/Player.glb delete mode 100644 examples/bevy_registry_export/basic/assets/models/library/Unused_in_level_test.glb delete mode 100644 examples/bevy_registry_export/basic/assets/registry.json delete mode 100644 examples/bevy_registry_export/basic/src/core/mod.rs delete mode 100644 examples/bevy_registry_export/basic/src/game/in_game.rs delete mode 100644 examples/bevy_registry_export/basic/src/game/in_main_menu.rs delete mode 100644 examples/bevy_registry_export/basic/src/game/mod.rs delete mode 100644 examples/bevy_registry_export/basic/src/main.rs delete mode 100644 examples/bevy_registry_export/basic/src/test_components.rs rename examples/{bevy_gltf_blueprints => blenvy}/animation/Cargo.toml (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/README.md (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/animation.blend (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/assets_core.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/assets_game.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/Level1.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/animation.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/Container.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/Fox.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/Health_Pickup.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/MagicTeapot.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/Pillar.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/Player.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/assets/models/library/Wheelbot.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/core/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/game/in_game.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/game/in_main_menu.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/game/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/main.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/state.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/animation/src/test_components.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/Cargo.toml (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/README.md (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/assets_core.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/assets_game.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/basic.blend (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/World.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Container.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Enemy.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Finger.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Hand.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Health_Pickup.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Humanoid_cactus.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/MagicTeapot.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Pillar.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Player.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/assets/models/library/Unused_in_level_test.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/index.html (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/src/core/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/src/game/in_game.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/src/game/in_main_menu.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/src/game/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/src/main.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic/src/test_components.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/Cargo.toml (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/README.md (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/advanced.blend (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/assets_core.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/assets_game.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/World.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/library/Container.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/library/Health_Pickup.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/library/MagicTeapot.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/library/Pillar.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/library/Player.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/assets/models/library/Unused_in_level_test.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/src/core/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/src/game/in_game.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/src/game/in_main_menu.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/src/game/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/src/main.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/basic_xpbd_physics/src/test_components.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/Cargo.toml (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/README.md (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/assets_core.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/assets_game.assets.ron (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/materials.blend (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/materials/materials_materials_library.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/Level1.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Container.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Health_Pickup.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Magic Sphere.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/MagicTeapot.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Pillar.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Pillar2.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Player.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Watermelon cut.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Watermelon.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/models/library/Watermelon2.glb (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/textures/juicy-watermelon-5882.png (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/assets/textures/watermelon-6441.png (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/src/core/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/src/game/in_game.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/src/game/in_main_menu.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/src/game/mod.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/src/main.rs (100%) rename examples/{bevy_gltf_blueprints => blenvy}/materials/src/test_components.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/Cargo.toml (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/README.md (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/assets_core.assets.ron (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/assets_game.assets.ron (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/basic.blend (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/World.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/World_dynamic.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Container.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Ground.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Health_Pickup.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/MagicTeapot.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Pillar.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Player.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Sphero.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/models/library/Unused_in_level_test.glb (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/assets/scenes/save.scn.ron (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/core/mod.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/game/in_game.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/game/in_game_loading.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/game/in_game_saving.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/game/in_main_menu.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/game/mod.rs (100%) rename examples/{bevy_gltf_save_load/basic => blenvy/save_load}/src/main.rs (100%) rename examples/{bevy_gltf_components/basic => blenvy/save_load}/src/test_components.rs (100%) create mode 100644 tools/blenvy/README.md delete mode 100644 tools/blenvy/README_components.md delete mode 100644 tools/blenvy/TODO_auto_export.md rename tools/blenvy/docs/{auto_export => }/blender_addon_install.png (100%) rename tools/blenvy/{README_auto_export.md => old.md} (60%) diff --git a/Cargo.toml b/Cargo.toml index 707d803..06d67d6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,10 +2,7 @@ members = [ "crates/*", "examples/common*", - "examples/bevy_gltf_components/*", - "examples/bevy_gltf_blueprints/*", - "examples/bevy_gltf_save_load/*", - "examples/bevy_registry_export/*", + "examples/blenvy/*", "testing/bevy_example/", ] resolver = "2" diff --git a/Migration_guide.md b/Migration_guide.md new file mode 100644 index 0000000..d53eb26 --- /dev/null +++ b/Migration_guide.md @@ -0,0 +1,143 @@ +# Blender add-ons + +- gltf_auto_export and bevy_components have been replaced with a single add-on for simplicity + +## Components: + +- no more need to add your components to an empty called xxx_components, you can now directly add your components to the blueprint's collection itself +- you will need to "upgrade" your components from the previous add-on, as they are stored in a completely different way +- bonus: you can also visualize & edit your blueprint's component directly on each instance + +## Multiple components with the same short name + + Up until now , it was not possible to have multiple components with the same name (ie foo::bar::componentA & some::other::componentA) as all the logic was based on short names, + this is not an issue anymore + +## Auto export: + +- the previous stripped down gltf export settings are not part of the add-on anymore, please configure them like this: +- you need to reconfigure your auto export settings , as they have changed significantly as has their storage + +## All the Bevy crates have been replaced with a single one + +- the new crate doesn't even really need configuring, so +- in your cargo.toml file, replace any references to the old crates (bevy_gltf_components, bevy_gltf_blueprints, bevy_registry_export, bevy_gltf_save_load etc) +with: + +```toml +# Cargo.toml +[dependencies] +bevy="0.14" +blenvy = { version = "0.1.0"} +``` + +and set things up in your code: + +```rust no_run +use bevy::prelude::*; +use blenvy::*; + +fn main() { + App::new() + .add_plugins(DefaultPlugins) + .add_plugins(BlenvyPlugin) + + .run(); +} +``` + +## Removed almost all setting for the crate + +- the ONLY setting is **aabbs** // defaults to true + +## Legacy mode has been removed + +- less headaches when using the tools! +If you still want to manually specify components using Blender's custom properties you need to + + +## BlueprintName replaced with BlueprintInfo + +- this is a very important change ! to avoid possible path clashes , the ```BlueprintInfo``` component contains +the actual path (with your **assets** folder) to the Blueprint, and a name (for convenience) + +## SpawnHere renamed to SpawnBlueprint + +changed the naming for more clarity & specificity + + +## Automatic assets loading + +- no more need to preload gltf files, you can spawn a level & all its blueprint like this: + +```rust no_run +commands.spawn(( + BlueprintInfo::from_path("levels/World.gltf"), + HideUntilReady, // Only if you want to keep the level hidden until it is finished spawning + SpawnBlueprint, // See note above + GameWorldTag, + InAppRunning, +)); +``` + +Blenvy will take care of loading all needed blueprints & other assets for you + +## Blueprint instance events + +- you can now use the ```BlueprintEvent``` to get notified of crucial blueprint instance events + + * ```AssetsLoaded``` + ```rust no run + /// event fired when a blueprint instance has finished loading all of its assets & before it attempts spawning + AssetsLoaded { + entity: Entity, + blueprint_name: String, + blueprint_path: String, + // TODO: add assets list ? + } + ``` + + * ```InstanceReady``` + ```rust no run + /// event fired when a blueprint instance has completely finished spawning, ie + /// - all its assests have been loaded + /// - all of its child blueprint instances are ready + /// - all the post processing is finished (aabb calculation, material replacements etc) + InstanceReady { + entity: Entity, + blueprint_name: String, + blueprint_path: String, + }, + + ``` + +## BlueprintDisabled + +you can now query for this component + +## Track loading blueprint instances with the BlueprintSpawning component + +- other than with events, you can also query for the ```BlueprintSpawning``` component to be sure an entity you are manipulating is finished with its blueprint instance spawning process + +## Keep your currently spawning blueprint instances hidden until they are ready with the HideUntilReady component + +If you want your blueprint instance to be hidden until it is ready, just add this component to the entity. +This can be particularly usefull in at least two use cases: +- when spawning levels +- when spawning bluprint instances that contain **lights** at runtime: in previous versions I have noticed some very unpleasant "flashing" effect when spawning blueprints with lights, +this component avoids that issue + +## Hot reload + +if you have configured your Bevy project to use hot reload you will automatically get hot reloading of levels & blueprints + +## Improved animation handling + +- sceneAnimations +- animationTriggers + +## Completely restructured blueprint spawning process + + +Additionally +- you do not really need to worry about SystemSets anymore diff --git a/README-workflow-ui.md b/README-workflow-ui.md index dcf8ef2..c6e0c51 100644 --- a/README-workflow-ui.md +++ b/README-workflow-ui.md @@ -4,11 +4,11 @@ The workflow goes as follows (once you got your Bevy code setup) ## Bevy side - create & register all your components you want to be able to set from the Blender side (this is basic Bevy, no specific work needed) -- follow the instructions in the [bevy_registry_export](./crates/bevy_registry_export/) to generate a registry export +- follow the instructions in the [blenvy](./crates/blenvy/) to generate a registry export ## Component creation -Setup the Blender [bevy_components](./tools/blenvy/README.md) add-on +Setup the Blender [Blenvy](./tools/blenvy/README.md) blender add-on to add & edit your components visually & reliably ![bevy_components](./docs/bevy_components.png) diff --git a/README.md b/README.md index 91c0a8a..530ec1f 100644 --- a/README.md +++ b/README.md @@ -8,44 +8,41 @@ Crates & tools for adding components from gltf files in the [Bevy](https://bevyengine.org/) game engine. -It enables minimalistic [Blender](https://www.blender.org/) (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 enables a [Blender](https://www.blender.org/) (gltf) centric workflow for Bevy, ie defining entites & their components +inside Blender. 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) -* now also with an UI tool to add & edit Bevy components, automatically export gltf blueprints & more in [Blender](./tools/blenvy/README.md) -* 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](./crates/bevy_gltf_blueprints/README.md) for reuse -* minimal setup & code, you can have something basic running fast +* 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 +* 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 +* hot reload of your levels & blueprints +* minimal setup & code, you can have something basic running fast * 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) ## Crates -- [bevy_gltf_components](./crates/bevy_gltf_components/) This crate allows you to define components direclty inside gltf files and instanciate/inject the components on the Bevy side. +One crate to rule them all ! +- [blenvy](./crates/blenvu/) 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 + * 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. + + OLD videos: There is a [video tutorial/explanation](https://youtu.be/-lcScjQCA3c) if you want, or you can read the crate docs. - The examples for the crate are [here](./examples/bevy_gltf_components/) - -- [bevy_gltf_blueprints](./crates/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](https://youtu.be/CgyNtwgYwdM) for this one too, or you can read the crate docs - The examples for the crate are [here](./examples/bevy_gltf_blueprints/) - > Note: this is the recomended crate to use and uses ```bevy_gltf_components``` under the hood -- [bevy_gltf_save_load](./crates/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](./examples/bevy_gltf_save_load/) - > Note: this uses ```bevy_gltf_blueprints``` under the hood - -- [bevy_registry_export](./crates/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 [blenvy](./tools/blenvy/README.md) add-on - + The examples for the crate are [here](./examples/blenvy/) ## Tools @@ -54,50 +51,37 @@ The examples for the crate are [here](./examples/bevy_gltf_save_load/) - an all in one [Blender addon](./tools/blenvy/README.md) 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 - - it also supports automatical exports of collections as [Gltf blueprints](./crates/bevy_gltf_blueprints/README.md) & - -Please read the [README]((./tools/blenvy/README.md)) of the add-on for installation & use instructions - - + - automatically export your [Gltf blueprints](./crates/blenvy/README.md) & assets ## Examples -you can find all examples, by crate as seperate crates for clearer dependencies in [here](./examples/) - -- [bevy_gltf_components](./examples/bevy_gltf_components/) - * [basic](./examples/bevy_gltf_components/basic/) use of ```bevy_gltf_components``` only, to spawn entities with components defined inside gltf files - -- [bevy_gltf_blueprints](./examples/bevy_gltf_blueprints/) - * [basic](./examples/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](./examples/bevy_gltf_blueprints/animation/) how to use and trigger animations from gltf files (a feature of ```bevy_gltf_blueprints```) - * & lots more - -- [bevy_gltf_save_load](./examples/bevy_gltf_save_load/) - -- [bevy_registry_export](./examples/bevy_registry_export/) +you can find all examples, [here](./examples/blenvy) +* [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 ## 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](./docs/component_registration.png) -- then you have two options - - add your components to objects in Blender **manually** as **custom properties** : see [here](./README-workflow-classic.md) for more details - - add your components to objects in Blender **with a nice UI** see [here](./README-workflow-ui.md) for more details +- setup & then use the Blenvy [Bevy crate](./crates/blenvy/README.md) +- setup & then use the Blenvy [Blender add-on](./tools/blenvy/README.md) +- iterate +- have fun ! + +- then add your components to objects in Blender **with a nice UI** see [here](./README-workflow-ui.md) for more details ## Limitations / issues -- Some of `bevy_rapier`/physics code / ways to define colliders could perhaps be done better/visually within Blender (currently it also goes via RON) -## Future work -- I have a number of other tools/ code helpers that I have not yet included here, because they need cleanup/ might make this example too complex - -## Credits - -- somebody I cannot recall helped me originally with the gltf loading tracker in the Bevy Discord, so thanks ! And if it was you, please let me know so I can give credit where credit is due :) +- Some of `avian` or `bevy_rapier` /physics code / ways to define colliders could perhaps be done better/visually within Blender ## Contributors diff --git a/tools/blenvy/TODO.md b/TODO.md similarity index 97% rename from tools/blenvy/TODO.md rename to TODO.md index c94cf2b..ee1ed84 100644 --- a/tools/blenvy/TODO.md +++ b/TODO.md @@ -31,13 +31,13 @@ Assets: - [x] store assets - [x] per main scene for level/world assets - [x] per blueprint for blueprint in lib scene - - [ ] UI: + - [x] UI: - [x] we need to display all direct assets (stored in the scene) - [ ] indirect assets: - QUESTION : do we want to include them in the list of assets per level ? - this would enable pre-loading ALL the assets, but is not ideal in most other cases - so add an option ? - - [ ] the assets of local blueprints + - [x] the assets of local blueprints Blueprints: - [x] on save: write IN THE COLLECTION PROPERTIES @@ -119,7 +119,7 @@ General issues: - [x] load settings on file load - [x] auto_export - [x] components - - [ ] add handling of errors when trying to load settings + - [x] add handling of errors when trying to load settings - [x] fix auto export workflow @@ -161,7 +161,7 @@ Blender side: - [ ] move the rename detection to AFTER scene serialization, otherwise we could have a naming mistmatch - weird behaviour, perhaps find another way , ie for example replace scene name in saved previous data - is post save causing the issue ? review -- [ ] investigate weird issue of changes detected to all after a reload +- [x] investigate weird issue of changes detected to all after a reload - [x] should we write the previous _xxx data only AFTER a sucessfull export only ? - [x] finer grained control of setting changes to trigger a re-export: @@ -201,7 +201,7 @@ Blender side: - [x] change scene serialization to account for collections ...sigh - [x] also add one NOT PER scene for materials, to fix the above issue with materials - [x] move material caching into hash material -- [ ] also remove ____dummy____.bin when export format is gltf +- [x] also remove ____dummy____.bin when export format is gltf - [ ] fix/cleanup asset information injection (also needed for hot reload) - [ ] add back per blueprint assets @@ -260,12 +260,12 @@ Bevy Side: - [x] fix/upgrade blueprint level animations - [x] fix/upgrade scene level animations - [ ] rename SceneAnimations to LevelAnimations (more coherent with the rest) + - [ ] add back & cleanup animation frame triggers - [x] move sub blueprint handling to blueprints_finalize_instances - [x] look into component overriding , it seems broken: - [x] blueprint level/ collection level components are now visible in instances in Blender - [x] they do not seem to be transfered to the (instance) entity above: could they be on the "empty node" ? -- [ ] add back & cleanup animation frame triggers - [ ] simplify testing example: - [x] remove use of rapier physics (or even the whole common boilerplate ?) @@ -298,6 +298,10 @@ Bevy Side: - [x] fix animation handling - [x] how to deal with animation graphs ? + +- [ ] remove "Library" component & co +- [ ] BlueprintDisabled => BlueprintInstanceDisabled + - [ ] update main docs - [ ] rename project to Blenvy - [ ] replace all references to the old 2 add-ons with those to Blenvy diff --git a/crates/blenvy/src/blueprints/spawn_from_blueprints.rs b/crates/blenvy/src/blueprints/spawn_from_blueprints.rs index 3534c85..e6cbf4c 100644 --- a/crates/blenvy/src/blueprints/spawn_from_blueprints.rs +++ b/crates/blenvy/src/blueprints/spawn_from_blueprints.rs @@ -76,7 +76,7 @@ pub struct BlueprintDisabled; #[derive(Event, Debug)] pub enum BlueprintEvent { - /// event fired when a blueprint has finished loading all of its assets & before it attempts spawning + /// event fired when a blueprint instance has finished loading all of its assets & before it attempts spawning AssetsLoaded { entity: Entity, blueprint_name: String, @@ -84,7 +84,10 @@ pub enum BlueprintEvent { // TODO: add assets list ? }, - /// + /// event fired when a blueprint instance has completely finished spawning, ie + /// - all its assests have been loaded + /// - all of its child blueprint instances are ready + /// - all the post processing is finished (aabb calculation, material replacements etc) InstanceReady { entity: Entity, blueprint_name: String, diff --git a/examples/bevy_gltf_components/basic/Cargo.toml b/examples/bevy_gltf_components/basic/Cargo.toml deleted file mode 100644 index ab6eb9d..0000000 --- a/examples/bevy_gltf_components/basic/Cargo.toml +++ /dev/null @@ -1,10 +0,0 @@ -[package] -name = "bevy_gltf_components_basic_example" -version = "0.3.0" -edition = "2021" -license = "MIT OR Apache-2.0" - -[dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } -bevy_gltf_components = { path = "../../../crates/bevy_gltf_components" } -bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } diff --git a/examples/bevy_gltf_components/basic/README.md b/examples/bevy_gltf_components/basic/README.md deleted file mode 100644 index d12e91e..0000000 --- a/examples/bevy_gltf_components/basic/README.md +++ /dev/null @@ -1,64 +0,0 @@ - -# Basic bevy_gltf_components + wasm demo - - -## Running this example (non-wasm) - -``` -cargo run --features bevy/dynamic_linking -``` - -## Wasm - -### Setup - -as per the bevy documentation: - -```shell -rustup target add wasm32-unknown-unknown -cargo install wasm-bindgen-cli -``` - - -### Building this example - -navigate to the current folder , and then - - -```shell -cargo build --release --target wasm32-unknown-unknown --target-dir ./target -wasm-bindgen --out-name wasm_example \ - --out-dir ./target/wasm \ - --target web target/wasm32-unknown-unknown/release/bevy_gltf_components_basic_wasm_example.wasm - -``` - -### Running this example - -run a web server in the current folder, and navigate to the page, you should see the example in your browser - - -## Additional notes - -* You usually define either the Components directly or use ```Proxy components``` that get replaced in Bevy systems with the actual Components that you want (usually when for some reason, ie external crates with unregistered components etc) you cannot use the components directly. - -Included are the following modules / tools - * [```process_gltf```](./src/process_gltfs.rs) the most important module: this is the one extracting ```component``` information from the gltf files - * [```insert_dependant_component```](./src/core/relationships/relationships_insert_dependant_components.rs) a small utility to automatically inject - components that are dependant on an other component - for example an Entity with a Player component should also always have a ShouldBeWithPlayer component - you get a warning if you use this though, as I consider this to be stop-gap solution (usually you should have either a bundle, or directly define all needed components) - * [```camera```](./src/core/camera/) an example post process/replace proxies plugin, for Camera that also adds CameraTracking functions (to enable a camera to follow an object, ie the player) - * [```lighting```](./src/core/lighting/) an other example post process/replace proxies plugin for lighting, that toggles shadows, lighting config, etc so that things look closer to the original Blender data - * [```physics```](./src/core/physics/) an other example post process/replace proxies plugin for physics, that add [Rapier](https://rapier.rs/docs/user_guides/bevy_plugin/getting_started_bevy) Colliders, Rigidbodies etc . Most of these do not need proxies these days, as the most Rapier components are in the Registry & can be used directly - -Feel free to use as you want, rip it appart, use any/all parts that you need ! - -This tooling and workflow has enabled me to go from a blank Bevy + Blender setup to a working barebones level in very little time (30 minutes or so ?) ! -You can then add your own components & systems for your own gameplay very easilly - - -## Information -- the Bevy/ Rust code is [here](./src/main.rs) -- the Blender file is [here](./assets/basic.blend) -- I added [bevy_editor_pls](https://github.com/jakobhellermann/bevy_editor_pls) as a dependency for convenience so you can inspect your level/components diff --git a/examples/bevy_gltf_components/basic/assets/basic.blend b/examples/bevy_gltf_components/basic/assets/basic.blend deleted file mode 100644 index 044720567c678e4c18472f2b37cdf109c6bf9b5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1372324 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 - - - - - - diff --git a/examples/bevy_gltf_components/basic/src/main.rs b/examples/bevy_gltf_components/basic/src/main.rs deleted file mode 100644 index 40df6cf..0000000 --- a/examples/bevy_gltf_components/basic/src/main.rs +++ /dev/null @@ -1,74 +0,0 @@ -use bevy::{gltf::Gltf, prelude::*}; -use bevy_gltf_components::ComponentsFromGltfPlugin; -use bevy_gltf_worlflow_examples_common_rapier::CorePlugin; - -mod test_components; -use test_components::*; - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -/// helper marker component -pub struct LoadedMarker; - -#[derive(Debug, Clone, Copy, Default, Eq, PartialEq, Hash, States)] -enum AppState { - #[default] - Loading, - Running, -} - -#[derive(Resource)] -pub struct MyGltf(pub Handle); - -// we preload the data here, but this is for DEMO PURPOSES ONLY !! Please use https://github.com/NiklasEi/bevy_asset_loader or a similar logic to seperate loading / pre processing -// of assets from the spawning -// MyGltf is also just for the same purpose, you do not need it in a real scenario -// the states here are also for demo purposes only, -fn setup(mut commands: Commands, asset_server: Res) { - commands.insert_resource(MyGltf(asset_server.load("models/Level1.glb"))); -} - -fn spawn_level( - mut commands: Commands, - scene_markers: Query<&LoadedMarker>, - mut asset_event_reader: EventReader>, - mut next_state: ResMut>, - models: Res>, -) { - if let Some(asset_event) = asset_event_reader.read().next() { - if let AssetEvent::Added { id } = asset_event { - info!("GLTF loaded/ added {:?}", asset_event); - let my_gltf = models.get(*id).unwrap(); - if scene_markers.is_empty() { - info!("spawning scene"); - commands.spawn(( - SceneBundle { - scene: my_gltf.scenes[0].clone(), - ..default() - }, - LoadedMarker, - Name::new("Level1"), - )); - next_state.set(AppState::Running); - } - } - } -} - -fn main() { - App::new() - .add_plugins(( - DefaultPlugins.set(AssetPlugin::default()), - // editor - // EditorPlugin::default(), - // physics - // our custom plugins - ComponentsFromGltfPlugin::default(), - CorePlugin, // reusable plugins - ComponentsTestPlugin, // Showcases different type of components /structs - )) - .init_state::() - .add_systems(Startup, setup) - .add_systems(Update, (spawn_level.run_if(in_state(AppState::Loading)),)) - .run(); -} diff --git a/examples/bevy_gltf_save_load/basic/src/test_components.rs b/examples/bevy_gltf_save_load/basic/src/test_components.rs deleted file mode 100644 index b5384e2..0000000 --- a/examples/bevy_gltf_save_load/basic/src/test_components.rs +++ /dev/null @@ -1,80 +0,0 @@ -use bevy::prelude::*; - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct UnitTest; - -#[derive(Component, Reflect, Default, Debug, Deref, DerefMut)] -#[reflect(Component)] -struct TupleTestF32(f32); - -#[derive(Component, Reflect, Default, Debug, Deref, DerefMut)] -#[reflect(Component)] -struct TupleTestU64(u64); - -#[derive(Component, Reflect, Default, Debug, Deref, DerefMut)] -#[reflect(Component)] -pub struct TupleTestStr(String); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleTest2(f32, u64, String); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleTestBool(bool); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVec2(Vec2); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVec3(Vec3); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVec(Vec); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleTestColor(Color); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct BasicTest { - a: f32, - b: u64, - c: String, -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub enum EnumTest { - Metal, - Wood, - Rock, - Cloth, - Squishy, - #[default] - None, -} - -pub struct ComponentsTestPlugin; -impl Plugin for ComponentsTestPlugin { - fn build(&self, app: &mut App) { - app.register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::>(); - } -} diff --git a/examples/bevy_registry_export/basic/Cargo.toml b/examples/bevy_registry_export/basic/Cargo.toml deleted file mode 100644 index 346510e..0000000 --- a/examples/bevy_registry_export/basic/Cargo.toml +++ /dev/null @@ -1,13 +0,0 @@ -[package] -name = "bevy_bevy_registry_export_basic_example" -version = "0.3.0" -edition = "2021" -license = "MIT OR Apache-2.0" - -[dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } -bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } -bevy_registry_export = { path = "../../../crates/bevy_registry_export" } -bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } -rand = "0.8.5" diff --git a/examples/bevy_registry_export/basic/README.md b/examples/bevy_registry_export/basic/README.md deleted file mode 100644 index d2ac337..0000000 --- a/examples/bevy_registry_export/basic/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# Bevy registry export example/demo - -This example showcases -* the use of the bevy_registry_export crate to extract all components & types information into a json file. -* That file is then used by the [Blender addon](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/tools/blenvy) to create Uis for each component, -to be able to add & edit Bevy components easilly in Blender ! - - -## Running this example - -``` -cargo run --features bevy/dynamic_linking -``` - -Running the example also regenerates the registry.json file. diff --git a/examples/bevy_registry_export/basic/assets/assets_core.assets.ron b/examples/bevy_registry_export/basic/assets/assets_core.assets.ron deleted file mode 100644 index 8d0a099..0000000 --- a/examples/bevy_registry_export/basic/assets/assets_core.assets.ron +++ /dev/null @@ -1 +0,0 @@ -({}) \ No newline at end of file diff --git a/examples/bevy_registry_export/basic/assets/assets_game.assets.ron b/examples/bevy_registry_export/basic/assets/assets_game.assets.ron deleted file mode 100644 index 5b1e969..0000000 --- a/examples/bevy_registry_export/basic/assets/assets_game.assets.ron +++ /dev/null @@ -1,6 +0,0 @@ -({ - "world":File (path: "models/World.glb"), - "models": Folder ( - path: "models/library", - ), -}) \ No newline at end of file diff --git a/examples/bevy_registry_export/basic/assets/basic.blend b/examples/bevy_registry_export/basic/assets/basic.blend deleted file mode 100644 index cdb6b22d0f4e2d9a3351fff065d47a74cb79d816..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1427248 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 PD(OU~Y-e@;@Be=Q@O>M* diff --git a/examples/bevy_registry_export/basic/assets/models/library/Health_Pickup.glb b/examples/bevy_registry_export/basic/assets/models/library/Health_Pickup.glb deleted file mode 100644 index 0361392d7b59c0753851b55121fdf7cc99ce92e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5104 zcmb7GS#ujj5dOHrec!iOE(a8`hi*W|F*!^eJJ?P*Ob{z+Briz2Vt3`(aSWk&ql)5z zAHZ{d0IxDtJo8(iDz7}yJ=#%5L6Q}x(*Ablo1X5kyC-S2H%{IT;Gf5VjU&KE>#Hk! zh8sm9Hp+WOOZXym;~+H3#+j`!@PjDTq9du}ZQ(aWm|A*gHMO11n3-(WNE_QCjJ&`n zvYj!F{j?!=V&U^rbUqRdqr7RHIlWfxxUmR5w;feQ$BQCwTU4Vs6n-n-GA^c#s7|*U zWivq$9osW}w?k`2wHk{~w<;;s)52}XTh()3{hMBwuJ?n6V78gIF7A^f^}T0wM6@M6 zCT>PfR$C(Ih&bG(i1#?;&?PT>29pG5KIe9Vo*$QO^C;c27_{3S7@UFOZB>C`B53en8u__B3(Te!70r%qp-Y4SD4 zyK7#{Ya9<6yR`k`F6HLcS@p3=)`Lzr@P!{o25U2{fmF8<^yrdxN{fmVhdn{1OGJDaU{73^8N;C`JWg>DFC_Xdo zWK2@t4eQm0w{4W|w9)qb0p@LkR;%%Dmm6nsb#3Lu+ByjpG#XWR$BU|N+iTI7CfE8w zwe590ns~WD!Y2X`0VJ!Sy?T@6UpXS7|nzl79<$p8Y5MshDG6|MZLh&Wh(X{#49bXqt@094l)= zKCjM-HBI_6Vx!A2kF~^W- z!nw_gnXC9yu{JNPiJGGk%&}^HG85J`QFFxkPQywE=1j$$TcXL;TfnS?;va^I`o}@S zKNKgr&2vvp!sLYeit|$M&s5C5XnvK?u{f!V%w-nLF;HGA_d_wq$}tmBy$@5dmb>a7 zj(-Gm1c?r6zGST@t!p~4AEm`tcs)IimsK0D;%rJSL64`#3pMohA(v(!g%)`0}nKPR44z z&sfh((|>-_dZKfm{4q!Mn6Al)e=Wy(-T#C*D`WWVZ+^_Wj6siwII2I#@ui=HuY3;q zx*t6+zB|#JwNm-=94Rb)X>}R$b)R}{x=+$U&5o=M`T1XL319B(e9cc^!(0pHllwto z6({>q{F{A_@F~aPTcP2JI%wLe_eb`T7C-C8KIJ;ck>ty>KYTY5ZPi(xO&Rl~vpQeH z6Z6&mXjtVX@4d;-Fb2v+Vdf8W(XiB1)$t}j+#7QLCce^vXGH11ad3~x-xKbYx~RK= zyYMJIOpoGj+=*xL3fWii2=2jSc#7;(cmNM0h1bZwhR1O~o`fJP@D-lG>+r~WXy9o) zhdHuycp1+lgFM+hj^ZV}fw#!M1p{v)hZ5Nm-o~p)BP1K5g<~jVpX@#&n6ObHTR{;H zPGFhrGW~a~fcLRLb^-6=1DwUjWIx7-cn`;Mne1hJk42orHrZ|L;S|o`JlXSD!AH0q z_maIA8(76B*d)7&bzH!Gc!=yn_#A8a3>~r^?BG*8h#J`%+Bk_Us${EJf`xbRBH0&l z5vTDbj*vZq+wcWmz%yi@!5whXM3-zAU!#sK#AIXm_y*tN3fU{TgaAE!NA^4H;y*(5 B-~|8x diff --git a/examples/bevy_registry_export/basic/assets/models/library/MagicTeapot.glb b/examples/bevy_registry_export/basic/assets/models/library/MagicTeapot.glb deleted file mode 100644 index 35b4638bc53a27689dbead1a96be944279facbe2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23656 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 diff --git a/examples/bevy_registry_export/basic/assets/models/library/Unused_in_level_test.glb b/examples/bevy_registry_export/basic/assets/models/library/Unused_in_level_test.glb deleted file mode 100644 index 18b9054aed21c1638ee7e07f25b1afc8161087b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5212 zcmb7FO>-mF6+L`^We5R6AV4rp527(f zG0srMo(;u?mh3`R;PRI z;)4J_dmi}VQQ)Js)s;QNi(`=(l|7>)0ugyh7#S7g@^%ykVLaENEpz9)B4~?fZt0!X zxt(0r%;s`N#@G>2?1ur7?W}3+XAH5Mh=7;k^;oox%7$_IQp4?eiHLl!8@ru?P!>Vh z7QD&KSeyH#r#|l)JrQq9;Z$v$fZGvaPbATh^55eEB9FxOj7!4n3ie^%>xF|Lso3UO zI&3lQc71Y!9xQtOc+eH|*G0>j->sNgGcz}=oU^i)DSvFIl(S0tQfBTJKRlb68)Z%* zn%O)bw&v{!ui0fI=+jldbtC;W&rchE$8Vnx+e3Q%!H`PyTYLx8YHfwRei(=#i4At@ ze@#uD1 zjd0M}4n!>PvFXKvE-j3-8k~}ux6FcFvTY}4mF7KZHoq_ZrT&wxsW%p77qnZ0Cf(|>$*pZK=+LJvnh^3l z^4k7@Qa7`Okv=MxX+Zp2MC4nb{LGA#HOYA|YPoHH$EesDqf5gfF+Vm4xyi84{j<2* zSh>(xBcsB0+x2$+*!8-8hh{fDHVECW-}C7;AQ#B^)Zo4sw7eT4Ynm3@95IPTm?w_j z97z)S%>hj!-}=?nwWVuIt1EKmR#qEV7M6{QMN)py_FK%M6jjp^X_-}b*59Y@&$fkW}SjrDCQj} zS9VOg=5pp<7TMSH$%G9a+q)Icjgc6`BaPJL>lYRs`5MuSusGjz>?Rd4Z9iFd?|$cw z3Dmyo{I$h}<%NbE?K>Ihwn|Hz!$d3}zkO-s9P*P_R=2j~mjJa*;zb?)J|N=?Hop~* z#b(%iEH~?ZdOwby?U+R_Mmyf&F*-gztwT%Rp}C|M`r-_5erW{4fx zS0DcU*msBX|7aY|f{9mO|8`UI?*rFZKjlxwoCE9s<;*uSpBZsY<4?uxh33gv%(=2B zl*$*gV$GAI8L{$#`BO31#+sbZec+nLpNch4>XR^OsXnRCg4ws!hx&bB_CfKdV$Ol} z$q$*&jF@{v@uy;KUf2^gM+16 zdH?&rO8r@I>RXL_Y7%B0@{sG2^L`p;Et+4YITok)BJ-aGr?p7_ESPiUJc+B`4^y#L zyXqg#e+2WnY3*vh>dE>TzSK$i zO7nz2sV+WS<*#uLG|YY~&VhzU{L$C-Jjn+&J2gGGlrMdl#Md-O&eb#zHO&3Pd8&R; znEOZNFv6!ARnK$13iDi4$GkVxdY!piE$aOv&!u&K|H!^bH6=gQ9JlvS!==({igY^WmZSrjQ2aTdS8ukjYew_xB+#dTc4M|cpAQ+yoP zu!>KxL2(0XxQ-|BG{vX!TYQY)phvNXU3`ikp-HicE-t`7U^hyhQOOJdEE%pii-nKcEdC3B?2fZs3pDqqv71gc#s9#oM@r{{zW^nRfsH diff --git a/examples/bevy_registry_export/basic/assets/registry.json b/examples/bevy_registry_export/basic/assets/registry.json deleted file mode 100644 index 9aa5141..0000000 --- a/examples/bevy_registry_export/basic/assets/registry.json +++ /dev/null @@ -1,13008 +0,0 @@ -{ - "$defs": { - "(f32, f32)": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - }, - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "(f32, f32)", - "title": "(f32, f32)", - "type": "array", - "typeInfo": "Tuple" - }, - "alloc::borrow::Cow": { - "isComponent": false, - "isResource": false, - "short_name": "Cow", - "title": "alloc::borrow::Cow", - "type": "object", - "typeInfo": "Value" - }, - "alloc::borrow::Cow": { - "isComponent": false, - "isResource": false, - "short_name": "Cow", - "title": "alloc::borrow::Cow", - "type": "object", - "typeInfo": "Value" - }, - "alloc::string::String": { - "isComponent": false, - "isResource": false, - "short_name": "String", - "title": "alloc::string::String", - "type": "string", - "typeInfo": "Value" - }, - "alloc::vec::Vec<(f32, f32)>": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/(f32, f32)" - } - }, - "short_name": "Vec<(f32, f32)>", - "title": "alloc::vec::Vec<(f32, f32)>", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_animation::VariableCurve" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::TupleVec3" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_text::text::TextSection" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/glam::Quat" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "alloc::vec::Vec": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "short_name": "Vec", - "title": "alloc::vec::Vec", - "type": "array", - "typeInfo": "List" - }, - "bevy_animation::AnimationClip": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "curves": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec>" - } - }, - "duration": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "paths": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" - } - } - }, - "required": [ - "curves", - "paths", - "duration" - ], - "short_name": "AnimationClip", - "title": "bevy_animation::AnimationClip", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_animation::AnimationPlayer": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "animation": { - "type": { - "$ref": "#/$defs/bevy_animation::PlayingAnimation" - } - }, - "paused": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "paused", - "animation" - ], - "short_name": "AnimationPlayer", - "title": "bevy_animation::AnimationPlayer", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_animation::Interpolation": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Linear", - "Step", - "CubicSpline" - ], - "short_name": "Interpolation", - "title": "bevy_animation::Interpolation", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_animation::Keyframes": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "Rotation", - "title": "Rotation", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "Translation", - "title": "Translation", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "Scale", - "title": "Scale", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "Weights", - "title": "Weights", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Keyframes", - "title": "bevy_animation::Keyframes", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_animation::VariableCurve": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "interpolation": { - "type": { - "$ref": "#/$defs/bevy_animation::Interpolation" - } - }, - "keyframe_timestamps": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "keyframes": { - "type": { - "$ref": "#/$defs/bevy_animation::Keyframes" - } - } - }, - "required": [ - "keyframe_timestamps", - "keyframes", - "interpolation" - ], - "short_name": "VariableCurve", - "title": "bevy_animation::VariableCurve", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_asset::handle::Handle<()>": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId<()>" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle<()>", - "title": "bevy_asset::handle::Handle<()>", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId<()>": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId<()>", - "title": "bevy_asset::id::AssetId<()>", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_asset::path::AssetPath<'static>": { - "isComponent": false, - "isResource": false, - "short_name": "AssetPath<'static>", - "title": "bevy_asset::path::AssetPath<'static>", - "type": "object", - "typeInfo": "Value" - }, - "bevy_audio::audio::DefaultSpatialScale": { - "isComponent": false, - "isResource": true, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_audio::audio::SpatialScale" - } - } - ], - "short_name": "DefaultSpatialScale", - "title": "bevy_audio::audio::DefaultSpatialScale", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_audio::audio::GlobalVolume": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "volume": { - "type": { - "$ref": "#/$defs/bevy_audio::audio::Volume" - } - } - }, - "required": [ - "volume" - ], - "short_name": "GlobalVolume", - "title": "bevy_audio::audio::GlobalVolume", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_audio::audio::PlaybackMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Once", - "Loop", - "Despawn", - "Remove" - ], - "short_name": "PlaybackMode", - "title": "bevy_audio::audio::PlaybackMode", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_audio::audio::PlaybackSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "mode": { - "type": { - "$ref": "#/$defs/bevy_audio::audio::PlaybackMode" - } - }, - "paused": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "spatial": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "spatial_scale": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "speed": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "volume": { - "type": { - "$ref": "#/$defs/bevy_audio::audio::Volume" - } - } - }, - "required": [ - "mode", - "volume", - "speed", - "paused", - "spatial" - ], - "short_name": "PlaybackSettings", - "title": "bevy_audio::audio::PlaybackSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_audio::audio::SpatialListener": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "left_ear_offset": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "right_ear_offset": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "left_ear_offset", - "right_ear_offset" - ], - "short_name": "SpatialListener", - "title": "bevy_audio::audio::SpatialListener", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_audio::audio::Volume": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Volume", - "title": "bevy_audio::audio::Volume", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::BasicTest": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "a": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "b": { - "type": { - "$ref": "#/$defs/u64" - } - }, - "c": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - }, - "required": [ - "a", - "b", - "c" - ], - "short_name": "BasicTest", - "title": "bevy_bevy_registry_export_basic_example::test_components::BasicTest", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_bevy_registry_export_basic_example::test_components::EnumComplex": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Float", - "title": "Float", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - ], - "short_name": "Wood", - "title": "Wood", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::BasicTest" - } - } - ], - "short_name": "Vec", - "title": "Vec", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "SomeThing" - }, - { - "title": "None" - } - ], - "short_name": "EnumComplex", - "title": "bevy_bevy_registry_export_basic_example::test_components::EnumComplex", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_bevy_registry_export_basic_example::test_components::EnumTest": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Metal", - "Wood", - "Rock", - "Cloth", - "Squishy", - "None" - ], - "short_name": "EnumTest", - "title": "bevy_bevy_registry_export_basic_example::test_components::EnumTest", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_bevy_registry_export_basic_example::test_components::NestedTupleStuff": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - }, - { - "type": { - "$ref": "#/$defs/u64" - } - }, - { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::NestingTestLevel2" - } - } - ], - "short_name": "NestedTupleStuff", - "title": "bevy_bevy_registry_export_basic_example::test_components::NestedTupleStuff", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::NestingTestLevel2": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "basic": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::BasicTest" - } - }, - "color": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::TupleTestColor" - } - }, - "colors_list": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::VecOfColors" - } - }, - "enable": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "enum_inner": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::EnumTest" - } - }, - "nested": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::NestingTestLevel3" - } - }, - "text": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - }, - "toggle": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::TupleTestBool" - } - } - }, - "required": [ - "text", - "enable", - "enum_inner", - "color", - "toggle", - "basic", - "nested", - "colors_list" - ], - "short_name": "NestingTestLevel2", - "title": "bevy_bevy_registry_export_basic_example::test_components::NestingTestLevel2", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_bevy_registry_export_basic_example::test_components::NestingTestLevel3": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "vec": { - "type": { - "$ref": "#/$defs/bevy_bevy_registry_export_basic_example::test_components::TupleVec3" - } - } - }, - "required": [ - "vec" - ], - "short_name": "NestingTestLevel3", - "title": "bevy_bevy_registry_export_basic_example::test_components::NestingTestLevel3", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleTest2": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - }, - { - "type": { - "$ref": "#/$defs/u64" - } - }, - { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - ], - "short_name": "TupleTest2", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleTest2", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleTestBool": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bool" - } - } - ], - "short_name": "TupleTestBool", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleTestBool", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleTestColor": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - ], - "short_name": "TupleTestColor", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleTestColor", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleTestF32": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "TupleTestF32", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleTestF32", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleTestStr": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - ], - "short_name": "TupleTestStr", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleTestStr", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleTestU64": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u64" - } - } - ], - "short_name": "TupleTestU64", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleTestU64", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleVec": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "TupleVec", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleVec", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleVec2": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - ], - "short_name": "TupleVec2", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleVec2", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleVec3": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - ], - "short_name": "TupleVec3", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleVec3", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::TupleVecF32F32": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec<(f32, f32)>" - } - } - ], - "short_name": "TupleVecF32F32", - "title": "bevy_bevy_registry_export_basic_example::test_components::TupleVecF32F32", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::UnitTest": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "UnitTest", - "title": "bevy_bevy_registry_export_basic_example::test_components::UnitTest", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_bevy_registry_export_basic_example::test_components::VecOfColors": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "VecOfColors", - "title": "bevy_bevy_registry_export_basic_example::test_components::VecOfColors", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_bevy_registry_export_basic_example::test_components::VecOfVec3s2": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "VecOfVec3s2", - "title": "bevy_bevy_registry_export_basic_example::test_components::VecOfVec3s2", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_core::name::Name": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "hash": { - "type": { - "$ref": "#/$defs/u64" - } - }, - "name": { - "type": { - "$ref": "#/$defs/alloc::borrow::Cow" - } - } - }, - "required": [ - "hash", - "name" - ], - "short_name": "Name", - "title": "bevy_core::name::Name", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::bloom::settings::BloomCompositeMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "EnergyConserving", - "Additive" - ], - "short_name": "BloomCompositeMode", - "title": "bevy_core_pipeline::bloom::settings::BloomCompositeMode", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_core_pipeline::bloom::settings::BloomPrefilterSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "threshold": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "threshold_softness": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "threshold", - "threshold_softness" - ], - "short_name": "BloomPrefilterSettings", - "title": "bevy_core_pipeline::bloom::settings::BloomPrefilterSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::bloom::settings::BloomSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "composite_mode": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::bloom::settings::BloomCompositeMode" - } - }, - "high_pass_frequency": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "intensity": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "low_frequency_boost": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "low_frequency_boost_curvature": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "prefilter_settings": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::bloom::settings::BloomPrefilterSettings" - } - } - }, - "required": [ - "intensity", - "low_frequency_boost", - "low_frequency_boost_curvature", - "high_pass_frequency", - "prefilter_settings", - "composite_mode" - ], - "short_name": "BloomSettings", - "title": "bevy_core_pipeline::bloom::settings::BloomSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::contrast_adaptive_sharpening::ContrastAdaptiveSharpeningSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "denoise": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "enabled": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "sharpening_strength": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "enabled", - "sharpening_strength", - "denoise" - ], - "short_name": "ContrastAdaptiveSharpeningSettings", - "title": "bevy_core_pipeline::contrast_adaptive_sharpening::ContrastAdaptiveSharpeningSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::core_2d::camera_2d::Camera2d": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Camera2d", - "title": "bevy_core_pipeline::core_2d::camera_2d::Camera2d", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::core_3d::camera_3d::Camera3d": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "depth_load_op": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp" - } - }, - "depth_texture_usages": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthTextureUsage" - } - }, - "screen_space_specular_transmission_quality": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::ScreenSpaceTransmissionQuality" - } - }, - "screen_space_specular_transmission_steps": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "depth_load_op", - "depth_texture_usages", - "screen_space_specular_transmission_steps", - "screen_space_specular_transmission_quality" - ], - "short_name": "Camera3d", - "title": "bevy_core_pipeline::core_3d::camera_3d::Camera3d", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Clear", - "title": "Clear", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Load" - } - ], - "short_name": "Camera3dDepthLoadOp", - "title": "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthTextureUsage": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "Camera3dDepthTextureUsage", - "title": "bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthTextureUsage", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_core_pipeline::core_3d::camera_3d::ScreenSpaceTransmissionQuality": { - "isComponent": false, - "isResource": true, - "oneOf": [ - "Low", - "Medium", - "High", - "Ultra" - ], - "short_name": "ScreenSpaceTransmissionQuality", - "title": "bevy_core_pipeline::core_3d::camera_3d::ScreenSpaceTransmissionQuality", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_core_pipeline::fxaa::Fxaa": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "edge_threshold": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::fxaa::Sensitivity" - } - }, - "edge_threshold_min": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::fxaa::Sensitivity" - } - }, - "enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "enabled", - "edge_threshold", - "edge_threshold_min" - ], - "short_name": "Fxaa", - "title": "bevy_core_pipeline::fxaa::Fxaa", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::prepass::DeferredPrepass": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "DeferredPrepass", - "title": "bevy_core_pipeline::prepass::DeferredPrepass", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::prepass::DepthPrepass": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "DepthPrepass", - "title": "bevy_core_pipeline::prepass::DepthPrepass", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::prepass::MotionVectorPrepass": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "MotionVectorPrepass", - "title": "bevy_core_pipeline::prepass::MotionVectorPrepass", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::prepass::NormalPrepass": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "NormalPrepass", - "title": "bevy_core_pipeline::prepass::NormalPrepass", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_core_pipeline::tonemapping::DebandDither": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Disabled", - "Enabled" - ], - "short_name": "DebandDither", - "title": "bevy_core_pipeline::tonemapping::DebandDither", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_core_pipeline::tonemapping::Tonemapping": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "None", - "Reinhard", - "ReinhardLuminance", - "AcesFitted", - "AgX", - "SomewhatBoringDisplayTransform", - "TonyMcMapface", - "BlenderFilmic" - ], - "short_name": "Tonemapping", - "title": "bevy_core_pipeline::tonemapping::Tonemapping", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ecs::component::ComponentId": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/usize" - } - } - ], - "short_name": "ComponentId", - "title": "bevy_ecs::component::ComponentId", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_ecs::component::ComponentTicks": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "added": { - "type": { - "$ref": "#/$defs/bevy_ecs::component::Tick" - } - }, - "changed": { - "type": { - "$ref": "#/$defs/bevy_ecs::component::Tick" - } - } - }, - "required": [ - "added", - "changed" - ], - "short_name": "ComponentTicks", - "title": "bevy_ecs::component::ComponentTicks", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ecs::component::Tick": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "tick": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "tick" - ], - "short_name": "Tick", - "title": "bevy_ecs::component::Tick", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ecs::entity::Entity": { - "isComponent": false, - "isResource": false, - "short_name": "Entity", - "title": "bevy_ecs::entity::Entity", - "type": "object", - "typeInfo": "Value" - }, - "bevy_egui::EguiSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "default_open_url_target": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "scale_factor": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "scale_factor" - ], - "short_name": "EguiSettings", - "title": "bevy_egui::EguiSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gizmos::aabb::AabbGizmoConfigGroup": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "default_color": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "draw_all": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "draw_all" - ], - "short_name": "AabbGizmoConfigGroup", - "title": "bevy_gizmos::aabb::AabbGizmoConfigGroup", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gizmos::config::GizmoConfig": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "depth_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "enabled": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "line_perspective": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "line_width": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "render_layers": { - "type": { - "$ref": "#/$defs/bevy_render::view::visibility::render_layers::RenderLayers" - } - } - }, - "required": [ - "enabled", - "line_width", - "line_perspective", - "depth_bias", - "render_layers" - ], - "short_name": "GizmoConfig", - "title": "bevy_gizmos::config::GizmoConfig", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf::GltfExtras": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "value": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - }, - "required": [ - "value" - ], - "short_name": "GltfExtras", - "title": "bevy_gltf::GltfExtras", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_blueprints::animation::Animated": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Animated", - "title": "bevy_gltf_blueprints::animation::Animated", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_blueprints::animation::Animations": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "named_animations": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" - } - } - }, - "required": [ - "named_animations" - ], - "short_name": "Animations", - "title": "bevy_gltf_blueprints::animation::Animations", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_blueprints::materials::MaterialInfo": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "name": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - }, - "source": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - }, - "required": [ - "name", - "source" - ], - "short_name": "MaterialInfo", - "title": "bevy_gltf_blueprints::materials::MaterialInfo", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_blueprints::spawn_from_blueprints::BlueprintName": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - ], - "short_name": "BlueprintName", - "title": "bevy_gltf_blueprints::spawn_from_blueprints::BlueprintName", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_gltf_blueprints::spawn_from_blueprints::BlueprintsList": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" - } - } - ], - "short_name": "BlueprintsList", - "title": "bevy_gltf_blueprints::spawn_from_blueprints::BlueprintsList", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_gltf_blueprints::spawn_from_blueprints::SpawnHere": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "SpawnHere", - "title": "bevy_gltf_blueprints::spawn_from_blueprints::SpawnHere", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_components::GltfProcessed": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "GltfProcessed", - "title": "bevy_gltf_components::GltfProcessed", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_components::blender_settings::lighting::BlenderBackgroundShader": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "strength": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "color", - "strength" - ], - "short_name": "BlenderBackgroundShader", - "title": "bevy_gltf_components::blender_settings::lighting::BlenderBackgroundShader", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_components::blender_settings::lighting::BlenderLightShadows": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "buffer_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "enabled", - "buffer_bias" - ], - "short_name": "BlenderLightShadows", - "title": "bevy_gltf_components::blender_settings::lighting::BlenderLightShadows", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_components::blender_settings::lighting::BlenderShadowSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "cascade_size": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "cascade_size" - ], - "short_name": "BlenderShadowSettings", - "title": "bevy_gltf_components::blender_settings::lighting::BlenderShadowSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_worlflow_examples_common::core::camera::camera_replace_proxies::SSAOSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "SSAOSettings", - "title": "bevy_gltf_worlflow_examples_common::core::camera::camera_replace_proxies::SSAOSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_worlflow_examples_common::core::camera::camera_tracking::CameraTrackable": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "CameraTrackable", - "title": "bevy_gltf_worlflow_examples_common::core::camera::camera_tracking::CameraTrackable", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_worlflow_examples_common::core::camera::camera_tracking::CameraTracking": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "offset": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "offset" - ], - "short_name": "CameraTracking", - "title": "bevy_gltf_worlflow_examples_common::core::camera::camera_tracking::CameraTracking", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_worlflow_examples_common::core::camera::camera_tracking::CameraTrackingOffset": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - ], - "short_name": "CameraTrackingOffset", - "title": "bevy_gltf_worlflow_examples_common::core::camera::camera_tracking::CameraTrackingOffset", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_gltf_worlflow_examples_common::game::picking::Pickable": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Pickable", - "title": "bevy_gltf_worlflow_examples_common::game::picking::Pickable", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_worlflow_examples_common::game::player::Player": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Player", - "title": "bevy_gltf_worlflow_examples_common::game::player::Player", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_gltf_worlflow_examples_common_rapier::physics::physics_replace_proxies::AutoAABBCollider": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Cuboid", - "Ball", - "Capsule" - ], - "short_name": "AutoAABBCollider", - "title": "bevy_gltf_worlflow_examples_common_rapier::physics::physics_replace_proxies::AutoAABBCollider", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_gltf_worlflow_examples_common_rapier::physics::physics_replace_proxies::Collider": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Ball", - "title": "Ball", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - ], - "short_name": "Cuboid", - "title": "Cuboid", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Capsule", - "title": "Capsule", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Mesh" - } - ], - "short_name": "Collider", - "title": "bevy_gltf_worlflow_examples_common_rapier::physics::physics_replace_proxies::Collider", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_hierarchy::components::children::Children": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>" - } - } - ], - "short_name": "Children", - "title": "bevy_hierarchy::components::children::Children", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_hierarchy::components::parent::Parent": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - ], - "short_name": "Parent", - "title": "bevy_hierarchy::components::parent::Parent", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_input::ButtonState": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Pressed", - "Released" - ], - "short_name": "ButtonState", - "title": "bevy_input::ButtonState", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_input::gamepad::AxisSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "deadzone_lowerbound": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "deadzone_upperbound": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "livezone_lowerbound": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "livezone_upperbound": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "threshold": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "livezone_upperbound", - "deadzone_upperbound", - "deadzone_lowerbound", - "livezone_lowerbound", - "threshold" - ], - "short_name": "AxisSettings", - "title": "bevy_input::gamepad::AxisSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::ButtonAxisSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "high": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "low": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "threshold": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "high", - "low", - "threshold" - ], - "short_name": "ButtonAxisSettings", - "title": "bevy_input::gamepad::ButtonAxisSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::ButtonSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "press_threshold": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "release_threshold": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "press_threshold", - "release_threshold" - ], - "short_name": "ButtonSettings", - "title": "bevy_input::gamepad::ButtonSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::Gamepad": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "id": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "id" - ], - "short_name": "Gamepad", - "title": "bevy_input::gamepad::Gamepad", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::GamepadAxis": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "axis_type": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::GamepadAxisType" - } - }, - "gamepad": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::Gamepad" - } - } - }, - "required": [ - "gamepad", - "axis_type" - ], - "short_name": "GamepadAxis", - "title": "bevy_input::gamepad::GamepadAxis", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::GamepadAxisType": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "LeftStickX" - }, - { - "title": "LeftStickY" - }, - { - "title": "LeftZ" - }, - { - "title": "RightStickX" - }, - { - "title": "RightStickY" - }, - { - "title": "RightZ" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u8" - } - } - ], - "short_name": "Other", - "title": "Other", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "GamepadAxisType", - "title": "bevy_input::gamepad::GamepadAxisType", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::gamepad::GamepadButton": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "button_type": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::GamepadButtonType" - } - }, - "gamepad": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::Gamepad" - } - } - }, - "required": [ - "gamepad", - "button_type" - ], - "short_name": "GamepadButton", - "title": "bevy_input::gamepad::GamepadButton", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::GamepadButtonInput": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "button": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::GamepadButton" - } - }, - "state": { - "type": { - "$ref": "#/$defs/bevy_input::ButtonState" - } - } - }, - "required": [ - "button", - "state" - ], - "short_name": "GamepadButtonInput", - "title": "bevy_input::gamepad::GamepadButtonInput", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::gamepad::GamepadButtonType": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "South" - }, - { - "title": "East" - }, - { - "title": "North" - }, - { - "title": "West" - }, - { - "title": "C" - }, - { - "title": "Z" - }, - { - "title": "LeftTrigger" - }, - { - "title": "LeftTrigger2" - }, - { - "title": "RightTrigger" - }, - { - "title": "RightTrigger2" - }, - { - "title": "Select" - }, - { - "title": "Start" - }, - { - "title": "Mode" - }, - { - "title": "LeftThumb" - }, - { - "title": "RightThumb" - }, - { - "title": "DPadUp" - }, - { - "title": "DPadDown" - }, - { - "title": "DPadLeft" - }, - { - "title": "DPadRight" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u8" - } - } - ], - "short_name": "Other", - "title": "Other", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "GamepadButtonType", - "title": "bevy_input::gamepad::GamepadButtonType", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::gamepad::GamepadConnection": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::GamepadInfo" - } - } - ], - "short_name": "Connected", - "title": "Connected", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Disconnected" - } - ], - "short_name": "GamepadConnection", - "title": "bevy_input::gamepad::GamepadConnection", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::gamepad::GamepadSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "axis_settings": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" - } - }, - "button_axis_settings": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" - } - }, - "button_settings": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" - } - }, - "default_axis_settings": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::AxisSettings" - } - }, - "default_button_axis_settings": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::ButtonAxisSettings" - } - }, - "default_button_settings": { - "type": { - "$ref": "#/$defs/bevy_input::gamepad::ButtonSettings" - } - } - }, - "required": [ - "default_button_settings", - "default_axis_settings", - "default_button_axis_settings", - "button_settings", - "axis_settings", - "button_axis_settings" - ], - "short_name": "GamepadSettings", - "title": "bevy_input::gamepad::GamepadSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::keyboard::Key": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/smol_str::SmolStr" - } - } - ], - "short_name": "Character", - "title": "Character", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_input::keyboard::NativeKey" - } - } - ], - "short_name": "Unidentified", - "title": "Unidentified", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - ], - "short_name": "Dead", - "title": "Dead", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Alt" - }, - { - "title": "AltGraph" - }, - { - "title": "CapsLock" - }, - { - "title": "Control" - }, - { - "title": "Fn" - }, - { - "title": "FnLock" - }, - { - "title": "NumLock" - }, - { - "title": "ScrollLock" - }, - { - "title": "Shift" - }, - { - "title": "Symbol" - }, - { - "title": "SymbolLock" - }, - { - "title": "Meta" - }, - { - "title": "Hyper" - }, - { - "title": "Super" - }, - { - "title": "Enter" - }, - { - "title": "Tab" - }, - { - "title": "Space" - }, - { - "title": "ArrowDown" - }, - { - "title": "ArrowLeft" - }, - { - "title": "ArrowRight" - }, - { - "title": "ArrowUp" - }, - { - "title": "End" - }, - { - "title": "Home" - }, - { - "title": "PageDown" - }, - { - "title": "PageUp" - }, - { - "title": "Backspace" - }, - { - "title": "Clear" - }, - { - "title": "Copy" - }, - { - "title": "CrSel" - }, - { - "title": "Cut" - }, - { - "title": "Delete" - }, - { - "title": "EraseEof" - }, - { - "title": "ExSel" - }, - { - "title": "Insert" - }, - { - "title": "Paste" - }, - { - "title": "Redo" - }, - { - "title": "Undo" - }, - { - "title": "Accept" - }, - { - "title": "Again" - }, - { - "title": "Attn" - }, - { - "title": "Cancel" - }, - { - "title": "ContextMenu" - }, - { - "title": "Escape" - }, - { - "title": "Execute" - }, - { - "title": "Find" - }, - { - "title": "Help" - }, - { - "title": "Pause" - }, - { - "title": "Play" - }, - { - "title": "Props" - }, - { - "title": "Select" - }, - { - "title": "ZoomIn" - }, - { - "title": "ZoomOut" - }, - { - "title": "BrightnessDown" - }, - { - "title": "BrightnessUp" - }, - { - "title": "Eject" - }, - { - "title": "LogOff" - }, - { - "title": "Power" - }, - { - "title": "PowerOff" - }, - { - "title": "PrintScreen" - }, - { - "title": "Hibernate" - }, - { - "title": "Standby" - }, - { - "title": "WakeUp" - }, - { - "title": "AllCandidates" - }, - { - "title": "Alphanumeric" - }, - { - "title": "CodeInput" - }, - { - "title": "Compose" - }, - { - "title": "Convert" - }, - { - "title": "FinalMode" - }, - { - "title": "GroupFirst" - }, - { - "title": "GroupLast" - }, - { - "title": "GroupNext" - }, - { - "title": "GroupPrevious" - }, - { - "title": "ModeChange" - }, - { - "title": "NextCandidate" - }, - { - "title": "NonConvert" - }, - { - "title": "PreviousCandidate" - }, - { - "title": "Process" - }, - { - "title": "SingleCandidate" - }, - { - "title": "HangulMode" - }, - { - "title": "HanjaMode" - }, - { - "title": "JunjaMode" - }, - { - "title": "Eisu" - }, - { - "title": "Hankaku" - }, - { - "title": "Hiragana" - }, - { - "title": "HiraganaKatakana" - }, - { - "title": "KanaMode" - }, - { - "title": "KanjiMode" - }, - { - "title": "Katakana" - }, - { - "title": "Romaji" - }, - { - "title": "Zenkaku" - }, - { - "title": "ZenkakuHankaku" - }, - { - "title": "Soft1" - }, - { - "title": "Soft2" - }, - { - "title": "Soft3" - }, - { - "title": "Soft4" - }, - { - "title": "ChannelDown" - }, - { - "title": "ChannelUp" - }, - { - "title": "Close" - }, - { - "title": "MailForward" - }, - { - "title": "MailReply" - }, - { - "title": "MailSend" - }, - { - "title": "MediaClose" - }, - { - "title": "MediaFastForward" - }, - { - "title": "MediaPause" - }, - { - "title": "MediaPlay" - }, - { - "title": "MediaPlayPause" - }, - { - "title": "MediaRecord" - }, - { - "title": "MediaRewind" - }, - { - "title": "MediaStop" - }, - { - "title": "MediaTrackNext" - }, - { - "title": "MediaTrackPrevious" - }, - { - "title": "New" - }, - { - "title": "Open" - }, - { - "title": "Print" - }, - { - "title": "Save" - }, - { - "title": "SpellCheck" - }, - { - "title": "Key11" - }, - { - "title": "Key12" - }, - { - "title": "AudioBalanceLeft" - }, - { - "title": "AudioBalanceRight" - }, - { - "title": "AudioBassBoostDown" - }, - { - "title": "AudioBassBoostToggle" - }, - { - "title": "AudioBassBoostUp" - }, - { - "title": "AudioFaderFront" - }, - { - "title": "AudioFaderRear" - }, - { - "title": "AudioSurroundModeNext" - }, - { - "title": "AudioTrebleDown" - }, - { - "title": "AudioTrebleUp" - }, - { - "title": "AudioVolumeDown" - }, - { - "title": "AudioVolumeUp" - }, - { - "title": "AudioVolumeMute" - }, - { - "title": "MicrophoneToggle" - }, - { - "title": "MicrophoneVolumeDown" - }, - { - "title": "MicrophoneVolumeUp" - }, - { - "title": "MicrophoneVolumeMute" - }, - { - "title": "SpeechCorrectionList" - }, - { - "title": "SpeechInputToggle" - }, - { - "title": "LaunchApplication1" - }, - { - "title": "LaunchApplication2" - }, - { - "title": "LaunchCalendar" - }, - { - "title": "LaunchContacts" - }, - { - "title": "LaunchMail" - }, - { - "title": "LaunchMediaPlayer" - }, - { - "title": "LaunchMusicPlayer" - }, - { - "title": "LaunchPhone" - }, - { - "title": "LaunchScreenSaver" - }, - { - "title": "LaunchSpreadsheet" - }, - { - "title": "LaunchWebBrowser" - }, - { - "title": "LaunchWebCam" - }, - { - "title": "LaunchWordProcessor" - }, - { - "title": "BrowserBack" - }, - { - "title": "BrowserFavorites" - }, - { - "title": "BrowserForward" - }, - { - "title": "BrowserHome" - }, - { - "title": "BrowserRefresh" - }, - { - "title": "BrowserSearch" - }, - { - "title": "BrowserStop" - }, - { - "title": "AppSwitch" - }, - { - "title": "Call" - }, - { - "title": "Camera" - }, - { - "title": "CameraFocus" - }, - { - "title": "EndCall" - }, - { - "title": "GoBack" - }, - { - "title": "GoHome" - }, - { - "title": "HeadsetHook" - }, - { - "title": "LastNumberRedial" - }, - { - "title": "Notification" - }, - { - "title": "MannerMode" - }, - { - "title": "VoiceDial" - }, - { - "title": "TV" - }, - { - "title": "TV3DMode" - }, - { - "title": "TVAntennaCable" - }, - { - "title": "TVAudioDescription" - }, - { - "title": "TVAudioDescriptionMixDown" - }, - { - "title": "TVAudioDescriptionMixUp" - }, - { - "title": "TVContentsMenu" - }, - { - "title": "TVDataService" - }, - { - "title": "TVInput" - }, - { - "title": "TVInputComponent1" - }, - { - "title": "TVInputComponent2" - }, - { - "title": "TVInputComposite1" - }, - { - "title": "TVInputComposite2" - }, - { - "title": "TVInputHDMI1" - }, - { - "title": "TVInputHDMI2" - }, - { - "title": "TVInputHDMI3" - }, - { - "title": "TVInputHDMI4" - }, - { - "title": "TVInputVGA1" - }, - { - "title": "TVMediaContext" - }, - { - "title": "TVNetwork" - }, - { - "title": "TVNumberEntry" - }, - { - "title": "TVPower" - }, - { - "title": "TVRadioService" - }, - { - "title": "TVSatellite" - }, - { - "title": "TVSatelliteBS" - }, - { - "title": "TVSatelliteCS" - }, - { - "title": "TVSatelliteToggle" - }, - { - "title": "TVTerrestrialAnalog" - }, - { - "title": "TVTerrestrialDigital" - }, - { - "title": "TVTimer" - }, - { - "title": "AVRInput" - }, - { - "title": "AVRPower" - }, - { - "title": "ColorF0Red" - }, - { - "title": "ColorF1Green" - }, - { - "title": "ColorF2Yellow" - }, - { - "title": "ColorF3Blue" - }, - { - "title": "ColorF4Grey" - }, - { - "title": "ColorF5Brown" - }, - { - "title": "ClosedCaptionToggle" - }, - { - "title": "Dimmer" - }, - { - "title": "DisplaySwap" - }, - { - "title": "DVR" - }, - { - "title": "Exit" - }, - { - "title": "FavoriteClear0" - }, - { - "title": "FavoriteClear1" - }, - { - "title": "FavoriteClear2" - }, - { - "title": "FavoriteClear3" - }, - { - "title": "FavoriteRecall0" - }, - { - "title": "FavoriteRecall1" - }, - { - "title": "FavoriteRecall2" - }, - { - "title": "FavoriteRecall3" - }, - { - "title": "FavoriteStore0" - }, - { - "title": "FavoriteStore1" - }, - { - "title": "FavoriteStore2" - }, - { - "title": "FavoriteStore3" - }, - { - "title": "Guide" - }, - { - "title": "GuideNextDay" - }, - { - "title": "GuidePreviousDay" - }, - { - "title": "Info" - }, - { - "title": "InstantReplay" - }, - { - "title": "Link" - }, - { - "title": "ListProgram" - }, - { - "title": "LiveContent" - }, - { - "title": "Lock" - }, - { - "title": "MediaApps" - }, - { - "title": "MediaAudioTrack" - }, - { - "title": "MediaLast" - }, - { - "title": "MediaSkipBackward" - }, - { - "title": "MediaSkipForward" - }, - { - "title": "MediaStepBackward" - }, - { - "title": "MediaStepForward" - }, - { - "title": "MediaTopMenu" - }, - { - "title": "NavigateIn" - }, - { - "title": "NavigateNext" - }, - { - "title": "NavigateOut" - }, - { - "title": "NavigatePrevious" - }, - { - "title": "NextFavoriteChannel" - }, - { - "title": "NextUserProfile" - }, - { - "title": "OnDemand" - }, - { - "title": "Pairing" - }, - { - "title": "PinPDown" - }, - { - "title": "PinPMove" - }, - { - "title": "PinPToggle" - }, - { - "title": "PinPUp" - }, - { - "title": "PlaySpeedDown" - }, - { - "title": "PlaySpeedReset" - }, - { - "title": "PlaySpeedUp" - }, - { - "title": "RandomToggle" - }, - { - "title": "RcLowBattery" - }, - { - "title": "RecordSpeedNext" - }, - { - "title": "RfBypass" - }, - { - "title": "ScanChannelsToggle" - }, - { - "title": "ScreenModeNext" - }, - { - "title": "Settings" - }, - { - "title": "SplitScreenToggle" - }, - { - "title": "STBInput" - }, - { - "title": "STBPower" - }, - { - "title": "Subtitle" - }, - { - "title": "Teletext" - }, - { - "title": "VideoModeNext" - }, - { - "title": "Wink" - }, - { - "title": "ZoomToggle" - }, - { - "title": "F1" - }, - { - "title": "F2" - }, - { - "title": "F3" - }, - { - "title": "F4" - }, - { - "title": "F5" - }, - { - "title": "F6" - }, - { - "title": "F7" - }, - { - "title": "F8" - }, - { - "title": "F9" - }, - { - "title": "F10" - }, - { - "title": "F11" - }, - { - "title": "F12" - }, - { - "title": "F13" - }, - { - "title": "F14" - }, - { - "title": "F15" - }, - { - "title": "F16" - }, - { - "title": "F17" - }, - { - "title": "F18" - }, - { - "title": "F19" - }, - { - "title": "F20" - }, - { - "title": "F21" - }, - { - "title": "F22" - }, - { - "title": "F23" - }, - { - "title": "F24" - }, - { - "title": "F25" - }, - { - "title": "F26" - }, - { - "title": "F27" - }, - { - "title": "F28" - }, - { - "title": "F29" - }, - { - "title": "F30" - }, - { - "title": "F31" - }, - { - "title": "F32" - }, - { - "title": "F33" - }, - { - "title": "F34" - }, - { - "title": "F35" - } - ], - "short_name": "Key", - "title": "bevy_input::keyboard::Key", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::keyboard::KeyCode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_input::keyboard::NativeKeyCode" - } - } - ], - "short_name": "Unidentified", - "title": "Unidentified", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Backquote" - }, - { - "title": "Backslash" - }, - { - "title": "BracketLeft" - }, - { - "title": "BracketRight" - }, - { - "title": "Comma" - }, - { - "title": "Digit0" - }, - { - "title": "Digit1" - }, - { - "title": "Digit2" - }, - { - "title": "Digit3" - }, - { - "title": "Digit4" - }, - { - "title": "Digit5" - }, - { - "title": "Digit6" - }, - { - "title": "Digit7" - }, - { - "title": "Digit8" - }, - { - "title": "Digit9" - }, - { - "title": "Equal" - }, - { - "title": "IntlBackslash" - }, - { - "title": "IntlRo" - }, - { - "title": "IntlYen" - }, - { - "title": "KeyA" - }, - { - "title": "KeyB" - }, - { - "title": "KeyC" - }, - { - "title": "KeyD" - }, - { - "title": "KeyE" - }, - { - "title": "KeyF" - }, - { - "title": "KeyG" - }, - { - "title": "KeyH" - }, - { - "title": "KeyI" - }, - { - "title": "KeyJ" - }, - { - "title": "KeyK" - }, - { - "title": "KeyL" - }, - { - "title": "KeyM" - }, - { - "title": "KeyN" - }, - { - "title": "KeyO" - }, - { - "title": "KeyP" - }, - { - "title": "KeyQ" - }, - { - "title": "KeyR" - }, - { - "title": "KeyS" - }, - { - "title": "KeyT" - }, - { - "title": "KeyU" - }, - { - "title": "KeyV" - }, - { - "title": "KeyW" - }, - { - "title": "KeyX" - }, - { - "title": "KeyY" - }, - { - "title": "KeyZ" - }, - { - "title": "Minus" - }, - { - "title": "Period" - }, - { - "title": "Quote" - }, - { - "title": "Semicolon" - }, - { - "title": "Slash" - }, - { - "title": "AltLeft" - }, - { - "title": "AltRight" - }, - { - "title": "Backspace" - }, - { - "title": "CapsLock" - }, - { - "title": "ContextMenu" - }, - { - "title": "ControlLeft" - }, - { - "title": "ControlRight" - }, - { - "title": "Enter" - }, - { - "title": "SuperLeft" - }, - { - "title": "SuperRight" - }, - { - "title": "ShiftLeft" - }, - { - "title": "ShiftRight" - }, - { - "title": "Space" - }, - { - "title": "Tab" - }, - { - "title": "Convert" - }, - { - "title": "KanaMode" - }, - { - "title": "Lang1" - }, - { - "title": "Lang2" - }, - { - "title": "Lang3" - }, - { - "title": "Lang4" - }, - { - "title": "Lang5" - }, - { - "title": "NonConvert" - }, - { - "title": "Delete" - }, - { - "title": "End" - }, - { - "title": "Help" - }, - { - "title": "Home" - }, - { - "title": "Insert" - }, - { - "title": "PageDown" - }, - { - "title": "PageUp" - }, - { - "title": "ArrowDown" - }, - { - "title": "ArrowLeft" - }, - { - "title": "ArrowRight" - }, - { - "title": "ArrowUp" - }, - { - "title": "NumLock" - }, - { - "title": "Numpad0" - }, - { - "title": "Numpad1" - }, - { - "title": "Numpad2" - }, - { - "title": "Numpad3" - }, - { - "title": "Numpad4" - }, - { - "title": "Numpad5" - }, - { - "title": "Numpad6" - }, - { - "title": "Numpad7" - }, - { - "title": "Numpad8" - }, - { - "title": "Numpad9" - }, - { - "title": "NumpadAdd" - }, - { - "title": "NumpadBackspace" - }, - { - "title": "NumpadClear" - }, - { - "title": "NumpadClearEntry" - }, - { - "title": "NumpadComma" - }, - { - "title": "NumpadDecimal" - }, - { - "title": "NumpadDivide" - }, - { - "title": "NumpadEnter" - }, - { - "title": "NumpadEqual" - }, - { - "title": "NumpadHash" - }, - { - "title": "NumpadMemoryAdd" - }, - { - "title": "NumpadMemoryClear" - }, - { - "title": "NumpadMemoryRecall" - }, - { - "title": "NumpadMemoryStore" - }, - { - "title": "NumpadMemorySubtract" - }, - { - "title": "NumpadMultiply" - }, - { - "title": "NumpadParenLeft" - }, - { - "title": "NumpadParenRight" - }, - { - "title": "NumpadStar" - }, - { - "title": "NumpadSubtract" - }, - { - "title": "Escape" - }, - { - "title": "Fn" - }, - { - "title": "FnLock" - }, - { - "title": "PrintScreen" - }, - { - "title": "ScrollLock" - }, - { - "title": "Pause" - }, - { - "title": "BrowserBack" - }, - { - "title": "BrowserFavorites" - }, - { - "title": "BrowserForward" - }, - { - "title": "BrowserHome" - }, - { - "title": "BrowserRefresh" - }, - { - "title": "BrowserSearch" - }, - { - "title": "BrowserStop" - }, - { - "title": "Eject" - }, - { - "title": "LaunchApp1" - }, - { - "title": "LaunchApp2" - }, - { - "title": "LaunchMail" - }, - { - "title": "MediaPlayPause" - }, - { - "title": "MediaSelect" - }, - { - "title": "MediaStop" - }, - { - "title": "MediaTrackNext" - }, - { - "title": "MediaTrackPrevious" - }, - { - "title": "Power" - }, - { - "title": "Sleep" - }, - { - "title": "AudioVolumeDown" - }, - { - "title": "AudioVolumeMute" - }, - { - "title": "AudioVolumeUp" - }, - { - "title": "WakeUp" - }, - { - "title": "Meta" - }, - { - "title": "Hyper" - }, - { - "title": "Turbo" - }, - { - "title": "Abort" - }, - { - "title": "Resume" - }, - { - "title": "Suspend" - }, - { - "title": "Again" - }, - { - "title": "Copy" - }, - { - "title": "Cut" - }, - { - "title": "Find" - }, - { - "title": "Open" - }, - { - "title": "Paste" - }, - { - "title": "Props" - }, - { - "title": "Select" - }, - { - "title": "Undo" - }, - { - "title": "Hiragana" - }, - { - "title": "Katakana" - }, - { - "title": "F1" - }, - { - "title": "F2" - }, - { - "title": "F3" - }, - { - "title": "F4" - }, - { - "title": "F5" - }, - { - "title": "F6" - }, - { - "title": "F7" - }, - { - "title": "F8" - }, - { - "title": "F9" - }, - { - "title": "F10" - }, - { - "title": "F11" - }, - { - "title": "F12" - }, - { - "title": "F13" - }, - { - "title": "F14" - }, - { - "title": "F15" - }, - { - "title": "F16" - }, - { - "title": "F17" - }, - { - "title": "F18" - }, - { - "title": "F19" - }, - { - "title": "F20" - }, - { - "title": "F21" - }, - { - "title": "F22" - }, - { - "title": "F23" - }, - { - "title": "F24" - }, - { - "title": "F25" - }, - { - "title": "F26" - }, - { - "title": "F27" - }, - { - "title": "F28" - }, - { - "title": "F29" - }, - { - "title": "F30" - }, - { - "title": "F31" - }, - { - "title": "F32" - }, - { - "title": "F33" - }, - { - "title": "F34" - }, - { - "title": "F35" - } - ], - "short_name": "KeyCode", - "title": "bevy_input::keyboard::KeyCode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::keyboard::KeyboardInput": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "key_code": { - "type": { - "$ref": "#/$defs/bevy_input::keyboard::KeyCode" - } - }, - "logical_key": { - "type": { - "$ref": "#/$defs/bevy_input::keyboard::Key" - } - }, - "state": { - "type": { - "$ref": "#/$defs/bevy_input::ButtonState" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "key_code", - "logical_key", - "state", - "window" - ], - "short_name": "KeyboardInput", - "title": "bevy_input::keyboard::KeyboardInput", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::keyboard::NativeKey": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Unidentified" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "Android", - "title": "Android", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u16" - } - } - ], - "short_name": "MacOS", - "title": "MacOS", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u16" - } - } - ], - "short_name": "Windows", - "title": "Windows", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "Xkb", - "title": "Xkb", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/smol_str::SmolStr" - } - } - ], - "short_name": "Web", - "title": "Web", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "NativeKey", - "title": "bevy_input::keyboard::NativeKey", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::keyboard::NativeKeyCode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Unidentified" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "Android", - "title": "Android", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u16" - } - } - ], - "short_name": "MacOS", - "title": "MacOS", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u16" - } - } - ], - "short_name": "Windows", - "title": "Windows", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "Xkb", - "title": "Xkb", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "NativeKeyCode", - "title": "bevy_input::keyboard::NativeKeyCode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::mouse::MouseButton": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Left" - }, - { - "title": "Right" - }, - { - "title": "Middle" - }, - { - "title": "Back" - }, - { - "title": "Forward" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u16" - } - } - ], - "short_name": "Other", - "title": "Other", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "MouseButton", - "title": "bevy_input::mouse::MouseButton", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::mouse::MouseButtonInput": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "button": { - "type": { - "$ref": "#/$defs/bevy_input::mouse::MouseButton" - } - }, - "state": { - "type": { - "$ref": "#/$defs/bevy_input::ButtonState" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "button", - "state", - "window" - ], - "short_name": "MouseButtonInput", - "title": "bevy_input::mouse::MouseButtonInput", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::mouse::MouseMotion": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "delta": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "delta" - ], - "short_name": "MouseMotion", - "title": "bevy_input::mouse::MouseMotion", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::mouse::MouseScrollUnit": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Line", - "Pixel" - ], - "short_name": "MouseScrollUnit", - "title": "bevy_input::mouse::MouseScrollUnit", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_input::mouse::MouseWheel": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "unit": { - "type": { - "$ref": "#/$defs/bevy_input::mouse::MouseScrollUnit" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "unit", - "x", - "y", - "window" - ], - "short_name": "MouseWheel", - "title": "bevy_input::mouse::MouseWheel", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::touch::ForceTouch": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "altitude_angle": { - "title": "altitude_angle", - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "force": { - "title": "force", - "type": { - "$ref": "#/$defs/f64" - } - }, - "max_possible_force": { - "title": "max_possible_force", - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "force", - "max_possible_force" - ], - "short_name": "Calibrated", - "title": "Calibrated", - "type": "object", - "typeInfo": "Struct" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f64" - } - } - ], - "short_name": "Normalized", - "title": "Normalized", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "ForceTouch", - "title": "bevy_input::touch::ForceTouch", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_input::touch::TouchInput": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "force": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "id": { - "type": { - "$ref": "#/$defs/u64" - } - }, - "phase": { - "type": { - "$ref": "#/$defs/bevy_input::touch::TouchPhase" - } - }, - "position": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "phase", - "position", - "window", - "id" - ], - "short_name": "TouchInput", - "title": "bevy_input::touch::TouchInput", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::touch::TouchPhase": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Started", - "Moved", - "Ended", - "Canceled" - ], - "short_name": "TouchPhase", - "title": "bevy_input::touch::TouchPhase", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_input::touchpad::TouchpadMagnify": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "TouchpadMagnify", - "title": "bevy_input::touchpad::TouchpadMagnify", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_input::touchpad::TouchpadRotate": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "TouchpadRotate", - "title": "bevy_input::touchpad::TouchpadRotate", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_math::Rect": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "max": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "min": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "min", - "max" - ], - "short_name": "Rect", - "title": "bevy_math::Rect", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::alpha::AlphaMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Opaque" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Mask", - "title": "Mask", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Blend" - }, - { - "title": "Premultiplied" - }, - { - "title": "Add" - }, - { - "title": "Multiply" - } - ], - "short_name": "AlphaMode", - "title": "bevy_pbr::alpha::AlphaMode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::bundle::CascadesVisibleEntities": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "CascadesVisibleEntities", - "title": "bevy_pbr::bundle::CascadesVisibleEntities", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::bundle::CubemapVisibleEntities": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "CubemapVisibleEntities", - "title": "bevy_pbr::bundle::CubemapVisibleEntities", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::fog::FogFalloff": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "end": { - "title": "end", - "type": { - "$ref": "#/$defs/f32" - } - }, - "start": { - "title": "start", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "start", - "end" - ], - "short_name": "Linear", - "title": "Linear", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "density": { - "title": "density", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "density" - ], - "short_name": "Exponential", - "title": "Exponential", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "density": { - "title": "density", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "density" - ], - "short_name": "ExponentialSquared", - "title": "ExponentialSquared", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "extinction": { - "title": "extinction", - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "inscattering": { - "title": "inscattering", - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "extinction", - "inscattering" - ], - "short_name": "Atmospheric", - "title": "Atmospheric", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "FogFalloff", - "title": "bevy_pbr::fog::FogFalloff", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::fog::FogSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "directional_light_color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "directional_light_exponent": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "falloff": { - "type": { - "$ref": "#/$defs/bevy_pbr::fog::FogFalloff" - } - } - }, - "required": [ - "color", - "directional_light_color", - "directional_light_exponent", - "falloff" - ], - "short_name": "FogSettings", - "title": "bevy_pbr::fog::FogSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::AmbientLight": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "brightness": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - }, - "required": [ - "color", - "brightness" - ], - "short_name": "AmbientLight", - "title": "bevy_pbr::light::AmbientLight", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::Cascade": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "projection": { - "type": { - "$ref": "#/$defs/glam::Mat4" - } - }, - "texel_size": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "view_projection": { - "type": { - "$ref": "#/$defs/glam::Mat4" - } - }, - "view_transform": { - "type": { - "$ref": "#/$defs/glam::Mat4" - } - } - }, - "required": [ - "view_transform", - "projection", - "view_projection", - "texel_size" - ], - "short_name": "Cascade", - "title": "bevy_pbr::light::Cascade", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::CascadeShadowConfig": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "bounds": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "minimum_distance": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "overlap_proportion": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "bounds", - "overlap_proportion", - "minimum_distance" - ], - "short_name": "CascadeShadowConfig", - "title": "bevy_pbr::light::CascadeShadowConfig", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::Cascades": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "cascades": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>" - } - } - }, - "required": [ - "cascades" - ], - "short_name": "Cascades", - "title": "bevy_pbr::light::Cascades", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::ClusterConfig": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "title": "Single" - }, - { - "additionalProperties": false, - "properties": { - "dimensions": { - "title": "dimensions", - "type": { - "$ref": "#/$defs/glam::UVec3" - } - }, - "dynamic_resizing": { - "title": "dynamic_resizing", - "type": { - "$ref": "#/$defs/bool" - } - }, - "z_config": { - "title": "z_config", - "type": { - "$ref": "#/$defs/bevy_pbr::light::ClusterZConfig" - } - } - }, - "required": [ - "dimensions", - "z_config", - "dynamic_resizing" - ], - "short_name": "XYZ", - "title": "XYZ", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "dynamic_resizing": { - "title": "dynamic_resizing", - "type": { - "$ref": "#/$defs/bool" - } - }, - "total": { - "title": "total", - "type": { - "$ref": "#/$defs/u32" - } - }, - "z_config": { - "title": "z_config", - "type": { - "$ref": "#/$defs/bevy_pbr::light::ClusterZConfig" - } - }, - "z_slices": { - "title": "z_slices", - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "total", - "z_slices", - "z_config", - "dynamic_resizing" - ], - "short_name": "FixedZ", - "title": "FixedZ", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "ClusterConfig", - "title": "bevy_pbr::light::ClusterConfig", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::light::ClusterFarZMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "MaxLightRange" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Constant", - "title": "Constant", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "ClusterFarZMode", - "title": "bevy_pbr::light::ClusterFarZMode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::light::ClusterZConfig": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "far_z_mode": { - "type": { - "$ref": "#/$defs/bevy_pbr::light::ClusterFarZMode" - } - }, - "first_slice_depth": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "first_slice_depth", - "far_z_mode" - ], - "short_name": "ClusterZConfig", - "title": "bevy_pbr::light::ClusterZConfig", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::DirectionalLight": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "illuminance": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_depth_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_normal_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadows_enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "color", - "illuminance", - "shadows_enabled", - "shadow_depth_bias", - "shadow_normal_bias" - ], - "short_name": "DirectionalLight", - "title": "bevy_pbr::light::DirectionalLight", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::DirectionalLightShadowMap": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "size": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "size" - ], - "short_name": "DirectionalLightShadowMap", - "title": "bevy_pbr::light::DirectionalLightShadowMap", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::NotShadowCaster": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "NotShadowCaster", - "title": "bevy_pbr::light::NotShadowCaster", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::NotShadowReceiver": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "NotShadowReceiver", - "title": "bevy_pbr::light::NotShadowReceiver", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::PointLight": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "intensity": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "radius": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "range": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_depth_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_normal_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadows_enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "color", - "intensity", - "range", - "radius", - "shadows_enabled", - "shadow_depth_bias", - "shadow_normal_bias" - ], - "short_name": "PointLight", - "title": "bevy_pbr::light::PointLight", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::PointLightShadowMap": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "size": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "size" - ], - "short_name": "PointLightShadowMap", - "title": "bevy_pbr::light::PointLightShadowMap", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::ShadowFilteringMethod": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Hardware2x2", - "Castano13", - "Jimenez14" - ], - "short_name": "ShadowFilteringMethod", - "title": "bevy_pbr::light::ShadowFilteringMethod", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_pbr::light::SpotLight": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "inner_angle": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "intensity": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "outer_angle": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "radius": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "range": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_depth_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_normal_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadows_enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "color", - "intensity", - "range", - "radius", - "shadows_enabled", - "shadow_depth_bias", - "shadow_normal_bias", - "outer_angle", - "inner_angle" - ], - "short_name": "SpotLight", - "title": "bevy_pbr::light::SpotLight", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light_probe::LightProbe": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "LightProbe", - "title": "bevy_pbr::light_probe::LightProbe", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light_probe::environment_map::EnvironmentMapLight": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "diffuse_map": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - }, - "intensity": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "specular_map": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - }, - "required": [ - "diffuse_map", - "specular_map", - "intensity" - ], - "short_name": "EnvironmentMapLight", - "title": "bevy_pbr::light_probe::environment_map::EnvironmentMapLight", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light_probe::irradiance_volume::IrradianceVolume": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "intensity": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "voxels": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - }, - "required": [ - "voxels", - "intensity" - ], - "short_name": "IrradianceVolume", - "title": "bevy_pbr::light_probe::irradiance_volume::IrradianceVolume", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::material::DefaultOpaqueRendererMethod": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_pbr::material::OpaqueRendererMethod" - } - } - ], - "short_name": "DefaultOpaqueRendererMethod", - "title": "bevy_pbr::material::DefaultOpaqueRendererMethod", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_pbr::material::OpaqueRendererMethod": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Forward", - "Deferred", - "Auto" - ], - "short_name": "OpaqueRendererMethod", - "title": "bevy_pbr::material::OpaqueRendererMethod", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_pbr::parallax::ParallaxMappingMethod": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Occlusion" - }, - { - "additionalProperties": false, - "properties": { - "max_steps": { - "title": "max_steps", - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "max_steps" - ], - "short_name": "Relief", - "title": "Relief", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "ParallaxMappingMethod", - "title": "bevy_pbr::parallax::ParallaxMappingMethod", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::pbr_material::StandardMaterial": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "alpha_mode": { - "type": { - "$ref": "#/$defs/bevy_pbr::alpha::AlphaMode" - } - }, - "attenuation_color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "attenuation_distance": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "base_color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "base_color_texture": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "deferred_lighting_pass_id": { - "type": { - "$ref": "#/$defs/u8" - } - }, - "depth_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "depth_map": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "diffuse_transmission": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "double_sided": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "emissive": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "emissive_texture": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "flip_normal_map_y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "fog_enabled": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "ior": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "lightmap_exposure": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "max_parallax_layer_count": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "metallic": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "metallic_roughness_texture": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "normal_map_texture": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "occlusion_texture": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "opaque_render_method": { - "type": { - "$ref": "#/$defs/bevy_pbr::material::OpaqueRendererMethod" - } - }, - "parallax_depth_scale": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "parallax_mapping_method": { - "type": { - "$ref": "#/$defs/bevy_pbr::parallax::ParallaxMappingMethod" - } - }, - "perceptual_roughness": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "reflectance": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "specular_transmission": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "thickness": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "unlit": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "base_color", - "emissive", - "perceptual_roughness", - "metallic", - "reflectance", - "diffuse_transmission", - "specular_transmission", - "thickness", - "ior", - "attenuation_distance", - "attenuation_color", - "flip_normal_map_y", - "double_sided", - "unlit", - "fog_enabled", - "alpha_mode", - "depth_bias", - "parallax_depth_scale", - "parallax_mapping_method", - "max_parallax_layer_count", - "lightmap_exposure", - "opaque_render_method", - "deferred_lighting_pass_id" - ], - "short_name": "StandardMaterial", - "title": "bevy_pbr::pbr_material::StandardMaterial", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionSettings": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "quality_level": { - "type": { - "$ref": "#/$defs/bevy_pbr::ssao::ScreenSpaceAmbientOcclusionQualityLevel" - } - } - }, - "required": [ - "quality_level" - ], - "short_name": "ScreenSpaceAmbientOcclusionSettings", - "title": "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionSettings", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::NoWireframe": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "NoWireframe", - "title": "bevy_pbr::wireframe::NoWireframe", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::Wireframe": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Wireframe", - "title": "bevy_pbr::wireframe::Wireframe", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::WireframeColor": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - }, - "required": [ - "color" - ], - "short_name": "WireframeColor", - "title": "bevy_pbr::wireframe::WireframeColor", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::WireframeConfig": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "default_color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "global": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "global", - "default_color" - ], - "short_name": "WireframeConfig", - "title": "bevy_pbr::wireframe::WireframeConfig", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::AdditionalMassProperties": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Mass", - "title": "Mass", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_rapier3d::dynamics::rigid_body::MassProperties" - } - } - ], - "short_name": "MassProperties", - "title": "MassProperties", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "AdditionalMassProperties", - "title": "bevy_rapier3d::dynamics::rigid_body::AdditionalMassProperties", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_rapier3d::dynamics::rigid_body::Ccd": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "enabled" - ], - "short_name": "Ccd", - "title": "bevy_rapier3d::dynamics::rigid_body::Ccd", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::Damping": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "angular_damping": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "linear_damping": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "linear_damping", - "angular_damping" - ], - "short_name": "Damping", - "title": "bevy_rapier3d::dynamics::rigid_body::Damping", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::Dominance": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "groups": { - "type": { - "$ref": "#/$defs/i8" - } - } - }, - "required": [ - "groups" - ], - "short_name": "Dominance", - "title": "bevy_rapier3d::dynamics::rigid_body::Dominance", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::ExternalForce": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "force": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "torque": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "force", - "torque" - ], - "short_name": "ExternalForce", - "title": "bevy_rapier3d::dynamics::rigid_body::ExternalForce", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::ExternalImpulse": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "impulse": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "torque_impulse": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "impulse", - "torque_impulse" - ], - "short_name": "ExternalImpulse", - "title": "bevy_rapier3d::dynamics::rigid_body::ExternalImpulse", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::GravityScale": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "GravityScale", - "title": "bevy_rapier3d::dynamics::rigid_body::GravityScale", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_rapier3d::dynamics::rigid_body::LockedAxes": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u8" - } - } - ], - "short_name": "LockedAxes", - "title": "bevy_rapier3d::dynamics::rigid_body::LockedAxes", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_rapier3d::dynamics::rigid_body::MassProperties": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "local_center_of_mass": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "mass": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "principal_inertia": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "principal_inertia_local_frame": { - "type": { - "$ref": "#/$defs/glam::Quat" - } - } - }, - "required": [ - "local_center_of_mass", - "mass", - "principal_inertia_local_frame", - "principal_inertia" - ], - "short_name": "MassProperties", - "title": "bevy_rapier3d::dynamics::rigid_body::MassProperties", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::RigidBody": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Dynamic", - "Fixed", - "KinematicPositionBased", - "KinematicVelocityBased" - ], - "short_name": "RigidBody", - "title": "bevy_rapier3d::dynamics::rigid_body::RigidBody", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_rapier3d::dynamics::rigid_body::Sleeping": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "angular_threshold": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "linear_threshold": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "sleeping": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "linear_threshold", - "angular_threshold", - "sleeping" - ], - "short_name": "Sleeping", - "title": "bevy_rapier3d::dynamics::rigid_body::Sleeping", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::dynamics::rigid_body::Velocity": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "angvel": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "linvel": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "linvel", - "angvel" - ], - "short_name": "Velocity", - "title": "bevy_rapier3d::dynamics::rigid_body::Velocity", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::geometry::collider::CollidingEntities": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_utils::HashSet" - } - } - ], - "short_name": "CollidingEntities", - "title": "bevy_rapier3d::geometry::collider::CollidingEntities", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_rapier3d::geometry::collider::CollisionGroups": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "filters": { - "type": { - "$ref": "#/$defs/bevy_rapier3d::geometry::collider::Group" - } - }, - "memberships": { - "type": { - "$ref": "#/$defs/bevy_rapier3d::geometry::collider::Group" - } - } - }, - "required": [ - "memberships", - "filters" - ], - "short_name": "CollisionGroups", - "title": "bevy_rapier3d::geometry::collider::CollisionGroups", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::geometry::collider::ContactForceEventThreshold": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "ContactForceEventThreshold", - "title": "bevy_rapier3d::geometry::collider::ContactForceEventThreshold", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_rapier3d::geometry::collider::Friction": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "coefficient": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "combine_rule": { - "type": { - "$ref": "#/$defs/bevy_rapier3d::dynamics::CoefficientCombineRule" - } - } - }, - "required": [ - "coefficient", - "combine_rule" - ], - "short_name": "Friction", - "title": "bevy_rapier3d::geometry::collider::Friction", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::geometry::collider::Group": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "Group", - "title": "bevy_rapier3d::geometry::collider::Group", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_rapier3d::geometry::collider::Restitution": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "coefficient": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "combine_rule": { - "type": { - "$ref": "#/$defs/bevy_rapier3d::dynamics::CoefficientCombineRule" - } - } - }, - "required": [ - "coefficient", - "combine_rule" - ], - "short_name": "Restitution", - "title": "bevy_rapier3d::geometry::collider::Restitution", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::geometry::collider::Sensor": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Sensor", - "title": "bevy_rapier3d::geometry::collider::Sensor", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::geometry::collider::SolverGroups": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "filters": { - "type": { - "$ref": "#/$defs/bevy_rapier3d::geometry::collider::Group" - } - }, - "memberships": { - "type": { - "$ref": "#/$defs/bevy_rapier3d::geometry::collider::Group" - } - } - }, - "required": [ - "memberships", - "filters" - ], - "short_name": "SolverGroups", - "title": "bevy_rapier3d::geometry::collider::SolverGroups", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_rapier3d::render::DebugRenderContext": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "enabled" - ], - "short_name": "DebugRenderContext", - "title": "bevy_rapier3d::render::DebugRenderContext", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::camera::camera::Camera": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "clear_color": { - "type": { - "$ref": "#/$defs/bevy_render::camera::clear_color::ClearColorConfig" - } - }, - "hdr": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "is_active": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "msaa_writeback": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "order": { - "type": { - "$ref": "#/$defs/isize" - } - }, - "viewport": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - }, - "required": [ - "order", - "is_active", - "hdr", - "msaa_writeback", - "clear_color" - ], - "short_name": "Camera", - "title": "bevy_render::camera::camera::Camera", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::camera::camera::CameraMainTextureUsages": { - "isComponent": true, - "isResource": false, - "short_name": "CameraMainTextureUsages", - "title": "bevy_render::camera::camera::CameraMainTextureUsages", - "type": "object", - "typeInfo": "Value" - }, - "bevy_render::camera::camera::CameraRenderGraph": { - "isComponent": true, - "isResource": false, - "short_name": "CameraRenderGraph", - "title": "bevy_render::camera::camera::CameraRenderGraph", - "type": "object", - "typeInfo": "Value" - }, - "bevy_render::camera::camera::Exposure": { - "isComponent": true, - "isResource": false, - "short_name": "Exposure", - "title": "bevy_render::camera::camera::Exposure", - "type": "object", - "typeInfo": "Value" - }, - "bevy_render::camera::camera::RenderTarget": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowRef" - } - } - ], - "short_name": "Window", - "title": "Window", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - ], - "short_name": "Image", - "title": "Image", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::camera::manual_texture_view::ManualTextureViewHandle" - } - } - ], - "short_name": "TextureView", - "title": "TextureView", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "RenderTarget", - "title": "bevy_render::camera::camera::RenderTarget", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_render::camera::camera::Viewport": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "depth": { - "type": { - "$ref": "#/$defs/core::ops::Range" - } - }, - "physical_position": { - "type": { - "$ref": "#/$defs/glam::UVec2" - } - }, - "physical_size": { - "type": { - "$ref": "#/$defs/glam::UVec2" - } - } - }, - "required": [ - "physical_position", - "physical_size", - "depth" - ], - "short_name": "Viewport", - "title": "bevy_render::camera::camera::Viewport", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::camera::clear_color::ClearColor": { - "isComponent": false, - "isResource": true, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - ], - "short_name": "ClearColor", - "title": "bevy_render::camera::clear_color::ClearColor", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_render::camera::clear_color::ClearColorConfig": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Default" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - ], - "short_name": "Custom", - "title": "Custom", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "None" - } - ], - "short_name": "ClearColorConfig", - "title": "bevy_render::camera::clear_color::ClearColorConfig", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_render::camera::projection::OrthographicProjection": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "area": { - "type": { - "$ref": "#/$defs/bevy_math::Rect" - } - }, - "far": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "near": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "scale": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "scaling_mode": { - "type": { - "$ref": "#/$defs/bevy_render::camera::projection::ScalingMode" - } - }, - "viewport_origin": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "near", - "far", - "viewport_origin", - "scaling_mode", - "scale", - "area" - ], - "short_name": "OrthographicProjection", - "title": "bevy_render::camera::projection::OrthographicProjection", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::camera::projection::PerspectiveProjection": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "aspect_ratio": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "far": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "fov": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "near": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "fov", - "aspect_ratio", - "near", - "far" - ], - "short_name": "PerspectiveProjection", - "title": "bevy_render::camera::projection::PerspectiveProjection", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::camera::projection::Projection": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::camera::projection::PerspectiveProjection" - } - } - ], - "short_name": "Perspective", - "title": "Perspective", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::camera::projection::OrthographicProjection" - } - } - ], - "short_name": "Orthographic", - "title": "Orthographic", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Projection", - "title": "bevy_render::camera::projection::Projection", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_render::camera::projection::ScalingMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "height": { - "title": "height", - "type": { - "$ref": "#/$defs/f32" - } - }, - "width": { - "title": "width", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "width", - "height" - ], - "short_name": "Fixed", - "title": "Fixed", - "type": "object", - "typeInfo": "Struct" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "WindowSize", - "title": "WindowSize", - "type": "array", - "typeInfo": "Tuple" - }, - { - "additionalProperties": false, - "properties": { - "min_height": { - "title": "min_height", - "type": { - "$ref": "#/$defs/f32" - } - }, - "min_width": { - "title": "min_width", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "min_width", - "min_height" - ], - "short_name": "AutoMin", - "title": "AutoMin", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "max_height": { - "title": "max_height", - "type": { - "$ref": "#/$defs/f32" - } - }, - "max_width": { - "title": "max_width", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "max_width", - "max_height" - ], - "short_name": "AutoMax", - "title": "AutoMax", - "type": "object", - "typeInfo": "Struct" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "FixedVertical", - "title": "FixedVertical", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "FixedHorizontal", - "title": "FixedHorizontal", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "ScalingMode", - "title": "bevy_render::camera::projection::ScalingMode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_render::color::Color": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "blue": { - "title": "blue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "green": { - "title": "green", - "type": { - "$ref": "#/$defs/f32" - } - }, - "red": { - "title": "red", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "red", - "green", - "blue", - "alpha" - ], - "short_name": "Rgba", - "title": "Rgba", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "blue": { - "title": "blue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "green": { - "title": "green", - "type": { - "$ref": "#/$defs/f32" - } - }, - "red": { - "title": "red", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "red", - "green", - "blue", - "alpha" - ], - "short_name": "RgbaLinear", - "title": "RgbaLinear", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "hue": { - "title": "hue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "lightness": { - "title": "lightness", - "type": { - "$ref": "#/$defs/f32" - } - }, - "saturation": { - "title": "saturation", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "hue", - "saturation", - "lightness", - "alpha" - ], - "short_name": "Hsla", - "title": "Hsla", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "chroma": { - "title": "chroma", - "type": { - "$ref": "#/$defs/f32" - } - }, - "hue": { - "title": "hue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "lightness": { - "title": "lightness", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "lightness", - "chroma", - "hue", - "alpha" - ], - "short_name": "Lcha", - "title": "Lcha", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "Color", - "title": "bevy_render::color::Color", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_render::globals::GlobalsUniform": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "delta_time": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "frame_count": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "time": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "time", - "delta_time", - "frame_count" - ], - "short_name": "GlobalsUniform", - "title": "bevy_render::globals::GlobalsUniform", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::mesh::mesh::Indices": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "U16", - "title": "U16", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "U32", - "title": "U32", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Indices", - "title": "bevy_render::mesh::mesh::Indices", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_render::mesh::mesh::Mesh": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "asset_usage": { - "type": { - "$ref": "#/$defs/bevy_render::render_asset::RenderAssetUsages" - } - }, - "indices": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "morph_target_names": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "morph_targets": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - } - }, - "required": [ - "asset_usage" - ], - "short_name": "Mesh", - "title": "bevy_render::mesh::mesh::Mesh", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::mesh::mesh::skinning::SkinnedMesh": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "inverse_bindposes": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - }, - "joints": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - }, - "required": [ - "inverse_bindposes", - "joints" - ], - "short_name": "SkinnedMesh", - "title": "bevy_render::mesh::mesh::skinning::SkinnedMesh", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::mesh::morph::MeshMorphWeights": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "weights": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - }, - "required": [ - "weights" - ], - "short_name": "MeshMorphWeights", - "title": "bevy_render::mesh::morph::MeshMorphWeights", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::mesh::morph::MorphWeights": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "first_mesh": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - }, - "weights": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - }, - "required": [ - "weights" - ], - "short_name": "MorphWeights", - "title": "bevy_render::mesh::morph::MorphWeights", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::primitives::Aabb": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "center": { - "type": { - "$ref": "#/$defs/glam::Vec3A" - } - }, - "half_extents": { - "type": { - "$ref": "#/$defs/glam::Vec3A" - } - } - }, - "required": [ - "center", - "half_extents" - ], - "short_name": "Aabb", - "title": "bevy_render::primitives::Aabb", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::primitives::CascadesFrusta": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "CascadesFrusta", - "title": "bevy_render::primitives::CascadesFrusta", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::primitives::CubemapFrusta": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "CubemapFrusta", - "title": "bevy_render::primitives::CubemapFrusta", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::primitives::Frustum": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Frustum", - "title": "bevy_render::primitives::Frustum", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::texture::image::Image": { - "isComponent": false, - "isResource": false, - "short_name": "Image", - "title": "bevy_render::texture::image::Image", - "type": "object", - "typeInfo": "Value" - }, - "bevy_render::view::ColorGrading": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "exposure": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "gamma": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "post_saturation": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "pre_saturation": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "exposure", - "gamma", - "pre_saturation", - "post_saturation" - ], - "short_name": "ColorGrading", - "title": "bevy_render::view::ColorGrading", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::view::Msaa": { - "isComponent": false, - "isResource": true, - "oneOf": [ - "Off", - "Sample2", - "Sample4", - "Sample8" - ], - "short_name": "Msaa", - "title": "bevy_render::view::Msaa", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_render::view::visibility::InheritedVisibility": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bool" - } - } - ], - "short_name": "InheritedVisibility", - "title": "bevy_render::view::visibility::InheritedVisibility", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_render::view::visibility::NoFrustumCulling": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "NoFrustumCulling", - "title": "bevy_render::view::visibility::NoFrustumCulling", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::view::visibility::ViewVisibility": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bool" - } - } - ], - "short_name": "ViewVisibility", - "title": "bevy_render::view::visibility::ViewVisibility", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_render::view::visibility::Visibility": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Inherited", - "Hidden", - "Visible" - ], - "short_name": "Visibility", - "title": "bevy_render::view::visibility::Visibility", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_render::view::visibility::VisibleEntities": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "VisibleEntities", - "title": "bevy_render::view::visibility::VisibleEntities", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_render::view::visibility::render_layers::RenderLayers": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/u32" - } - } - ], - "short_name": "RenderLayers", - "title": "bevy_render::view::visibility::render_layers::RenderLayers", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_sprite::mesh2d::color_material::ColorMaterial": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "texture": { - "type": { - "$ref": "#/$defs/core::option::Option>" - } - } - }, - "required": [ - "color" - ], - "short_name": "ColorMaterial", - "title": "bevy_sprite::mesh2d::color_material::ColorMaterial", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_sprite::mesh2d::mesh::Mesh2dHandle": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - ], - "short_name": "Mesh2dHandle", - "title": "bevy_sprite::mesh2d::mesh::Mesh2dHandle", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_sprite::sprite::Anchor": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Center" - }, - { - "title": "BottomLeft" - }, - { - "title": "BottomCenter" - }, - { - "title": "BottomRight" - }, - { - "title": "CenterLeft" - }, - { - "title": "CenterRight" - }, - { - "title": "TopLeft" - }, - { - "title": "TopCenter" - }, - { - "title": "TopRight" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - ], - "short_name": "Custom", - "title": "Custom", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Anchor", - "title": "bevy_sprite::sprite::Anchor", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_sprite::sprite::ImageScaleMode": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::TextureSlicer" - } - } - ], - "short_name": "Sliced", - "title": "Sliced", - "type": "array", - "typeInfo": "Tuple" - }, - { - "additionalProperties": false, - "properties": { - "stretch_value": { - "title": "stretch_value", - "type": { - "$ref": "#/$defs/f32" - } - }, - "tile_x": { - "title": "tile_x", - "type": { - "$ref": "#/$defs/bool" - } - }, - "tile_y": { - "title": "tile_y", - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "tile_x", - "tile_y", - "stretch_value" - ], - "short_name": "Tiled", - "title": "Tiled", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "ImageScaleMode", - "title": "bevy_sprite::sprite::ImageScaleMode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_sprite::sprite::Sprite": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "anchor": { - "type": { - "$ref": "#/$defs/bevy_sprite::sprite::Anchor" - } - }, - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "custom_size": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "flip_x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "flip_y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "rect": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - }, - "required": [ - "color", - "flip_x", - "flip_y", - "anchor" - ], - "short_name": "Sprite", - "title": "bevy_sprite::sprite::Sprite", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_sprite::texture_atlas::TextureAtlas": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "index": { - "type": { - "$ref": "#/$defs/usize" - } - }, - "layout": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - }, - "required": [ - "layout", - "index" - ], - "short_name": "TextureAtlas", - "title": "bevy_sprite::texture_atlas::TextureAtlas", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_sprite::texture_atlas::TextureAtlasLayout": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "size": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "texture_handles": { - "type": { - "$ref": "#/$defs/core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>" - } - }, - "textures": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - }, - "required": [ - "size", - "textures" - ], - "short_name": "TextureAtlasLayout", - "title": "bevy_sprite::texture_atlas::TextureAtlasLayout", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_sprite::texture_slice::slicer::TextureSlicer": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "border": { - "type": { - "$ref": "#/$defs/bevy_sprite::texture_slice::border_rect::BorderRect" - } - }, - "center_scale_mode": { - "type": { - "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::SliceScaleMode" - } - }, - "max_corner_scale": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "sides_scale_mode": { - "type": { - "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::SliceScaleMode" - } - } - }, - "required": [ - "border", - "center_scale_mode", - "sides_scale_mode", - "max_corner_scale" - ], - "short_name": "TextureSlicer", - "title": "bevy_sprite::texture_slice::slicer::TextureSlicer", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_text::pipeline::TextLayoutInfo": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "glyphs": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "logical_size": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "glyphs", - "logical_size" - ], - "short_name": "TextLayoutInfo", - "title": "bevy_text::pipeline::TextLayoutInfo", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_text::text2d::Text2dBounds": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "size": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "size" - ], - "short_name": "Text2dBounds", - "title": "bevy_text::text2d::Text2dBounds", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_text::text::BreakLineOn": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "WordBoundary", - "AnyCharacter", - "NoWrap" - ], - "short_name": "BreakLineOn", - "title": "bevy_text::text::BreakLineOn", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_text::text::JustifyText": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Left", - "Center", - "Right" - ], - "short_name": "JustifyText", - "title": "bevy_text::text::JustifyText", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_text::text::Text": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "justify": { - "type": { - "$ref": "#/$defs/bevy_text::text::JustifyText" - } - }, - "linebreak_behavior": { - "type": { - "$ref": "#/$defs/bevy_text::text::BreakLineOn" - } - }, - "sections": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - }, - "required": [ - "sections", - "justify", - "linebreak_behavior" - ], - "short_name": "Text", - "title": "bevy_text::text::Text", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_text::text::TextSection": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "style": { - "type": { - "$ref": "#/$defs/bevy_text::text::TextStyle" - } - }, - "value": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - }, - "required": [ - "value", - "style" - ], - "short_name": "TextSection", - "title": "bevy_text::text::TextSection", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_text::text::TextStyle": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "font": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - }, - "font_size": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "font", - "font_size", - "color" - ], - "short_name": "TextStyle", - "title": "bevy_text::text::TextStyle", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::stopwatch::Stopwatch": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "elapsed": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "paused": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "elapsed", - "paused" - ], - "short_name": "Stopwatch", - "title": "bevy_time::stopwatch::Stopwatch", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::time::Time<()>": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "context": { - "type": { - "$ref": "#/$defs/()" - } - }, - "delta": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "delta_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "delta_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "elapsed_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_seconds_wrapped": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_wrapped_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_wrapped": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "wrap_period": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - } - }, - "required": [ - "context", - "wrap_period", - "delta", - "delta_seconds", - "delta_seconds_f64", - "elapsed", - "elapsed_seconds", - "elapsed_seconds_f64", - "elapsed_wrapped", - "elapsed_seconds_wrapped", - "elapsed_seconds_wrapped_f64" - ], - "short_name": "Time<()>", - "title": "bevy_time::time::Time<()>", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::time::Time": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "context": { - "type": { - "$ref": "#/$defs/bevy_time::fixed::Fixed" - } - }, - "delta": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "delta_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "delta_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "elapsed_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_seconds_wrapped": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_wrapped_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_wrapped": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "wrap_period": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - } - }, - "required": [ - "context", - "wrap_period", - "delta", - "delta_seconds", - "delta_seconds_f64", - "elapsed", - "elapsed_seconds", - "elapsed_seconds_f64", - "elapsed_wrapped", - "elapsed_seconds_wrapped", - "elapsed_seconds_wrapped_f64" - ], - "short_name": "Time", - "title": "bevy_time::time::Time", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::time::Time": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "context": { - "type": { - "$ref": "#/$defs/bevy_time::real::Real" - } - }, - "delta": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "delta_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "delta_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "elapsed_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_seconds_wrapped": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_wrapped_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_wrapped": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "wrap_period": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - } - }, - "required": [ - "context", - "wrap_period", - "delta", - "delta_seconds", - "delta_seconds_f64", - "elapsed", - "elapsed_seconds", - "elapsed_seconds_f64", - "elapsed_wrapped", - "elapsed_seconds_wrapped", - "elapsed_seconds_wrapped_f64" - ], - "short_name": "Time", - "title": "bevy_time::time::Time", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::time::Time": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "context": { - "type": { - "$ref": "#/$defs/bevy_time::virt::Virtual" - } - }, - "delta": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "delta_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "delta_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "elapsed_seconds": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_seconds_wrapped": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "elapsed_seconds_wrapped_f64": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "elapsed_wrapped": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "wrap_period": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - } - }, - "required": [ - "context", - "wrap_period", - "delta", - "delta_seconds", - "delta_seconds_f64", - "elapsed", - "elapsed_seconds", - "elapsed_seconds_f64", - "elapsed_wrapped", - "elapsed_seconds_wrapped", - "elapsed_seconds_wrapped_f64" - ], - "short_name": "Time", - "title": "bevy_time::time::Time", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::timer::Timer": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "duration": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "finished": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "mode": { - "type": { - "$ref": "#/$defs/bevy_time::timer::TimerMode" - } - }, - "stopwatch": { - "type": { - "$ref": "#/$defs/bevy_time::stopwatch::Stopwatch" - } - }, - "times_finished_this_tick": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "stopwatch", - "duration", - "mode", - "finished", - "times_finished_this_tick" - ], - "short_name": "Timer", - "title": "bevy_time::timer::Timer", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_time::virt::Virtual": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "effective_speed": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "max_delta": { - "type": { - "$ref": "#/$defs/bevy_utils::Duration" - } - }, - "paused": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "relative_speed": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "max_delta", - "paused", - "relative_speed", - "effective_speed" - ], - "short_name": "Virtual", - "title": "bevy_time::virt::Virtual", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_transform::components::global_transform::GlobalTransform": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::Affine3A" - } - } - ], - "short_name": "GlobalTransform", - "title": "bevy_transform::components::global_transform::GlobalTransform", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_transform::components::transform::Transform": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "rotation": { - "type": { - "$ref": "#/$defs/glam::Quat" - } - }, - "scale": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "translation", - "rotation", - "scale" - ], - "short_name": "Transform", - "title": "bevy_transform::components::transform::Transform", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::UiScale": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "UiScale", - "title": "bevy_ui::UiScale", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_ui::focus::FocusPolicy": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Block", - "Pass" - ], - "short_name": "FocusPolicy", - "title": "bevy_ui::focus::FocusPolicy", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::focus::Interaction": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Pressed", - "Hovered", - "None" - ], - "short_name": "Interaction", - "title": "bevy_ui::focus::Interaction", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::focus::RelativeCursorPosition": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "normalized": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "normalized_visible_node_rect": { - "type": { - "$ref": "#/$defs/bevy_math::Rect" - } - } - }, - "required": [ - "normalized_visible_node_rect" - ], - "short_name": "RelativeCursorPosition", - "title": "bevy_ui::focus::RelativeCursorPosition", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::geometry::UiRect": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "bottom": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "left": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "right": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "top": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - } - }, - "required": [ - "left", - "right", - "top", - "bottom" - ], - "short_name": "UiRect", - "title": "bevy_ui::geometry::UiRect", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::geometry::Val": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Auto" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Px", - "title": "Px", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Percent", - "title": "Percent", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Vw", - "title": "Vw", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Vh", - "title": "Vh", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "VMin", - "title": "VMin", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "VMax", - "title": "VMax", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Val", - "title": "bevy_ui::geometry::Val", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_ui::measurement::ContentSize": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "ContentSize", - "title": "bevy_ui::measurement::ContentSize", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::AlignContent": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Default", - "Start", - "End", - "FlexStart", - "FlexEnd", - "Center", - "Stretch", - "SpaceBetween", - "SpaceEvenly", - "SpaceAround" - ], - "short_name": "AlignContent", - "title": "bevy_ui::ui_node::AlignContent", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::AlignItems": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Default", - "Start", - "End", - "FlexStart", - "FlexEnd", - "Center", - "Baseline", - "Stretch" - ], - "short_name": "AlignItems", - "title": "bevy_ui::ui_node::AlignItems", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::AlignSelf": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Auto", - "Start", - "End", - "FlexStart", - "FlexEnd", - "Center", - "Baseline", - "Stretch" - ], - "short_name": "AlignSelf", - "title": "bevy_ui::ui_node::AlignSelf", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::BackgroundColor": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - ], - "short_name": "BackgroundColor", - "title": "bevy_ui::ui_node::BackgroundColor", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_ui::ui_node::BorderColor": { - "isComponent": true, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - ], - "short_name": "BorderColor", - "title": "bevy_ui::ui_node::BorderColor", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_ui::ui_node::CalculatedClip": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "clip": { - "type": { - "$ref": "#/$defs/bevy_math::Rect" - } - } - }, - "required": [ - "clip" - ], - "short_name": "CalculatedClip", - "title": "bevy_ui::ui_node::CalculatedClip", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::Direction": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Inherit", - "LeftToRight", - "RightToLeft" - ], - "short_name": "Direction", - "title": "bevy_ui::ui_node::Direction", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::Display": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Flex", - "Grid", - "None" - ], - "short_name": "Display", - "title": "bevy_ui::ui_node::Display", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::FlexDirection": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Row", - "Column", - "RowReverse", - "ColumnReverse" - ], - "short_name": "FlexDirection", - "title": "bevy_ui::ui_node::FlexDirection", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::FlexWrap": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "NoWrap", - "Wrap", - "WrapReverse" - ], - "short_name": "FlexWrap", - "title": "bevy_ui::ui_node::FlexWrap", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::GridAutoFlow": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Row", - "Column", - "RowDense", - "ColumnDense" - ], - "short_name": "GridAutoFlow", - "title": "bevy_ui::ui_node::GridAutoFlow", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::GridPlacement": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "end": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "span": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "start": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - }, - "required": [], - "short_name": "GridPlacement", - "title": "bevy_ui::ui_node::GridPlacement", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::GridTrack": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "max_sizing_function": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::MaxTrackSizingFunction" - } - }, - "min_sizing_function": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::MinTrackSizingFunction" - } - } - }, - "required": [ - "min_sizing_function", - "max_sizing_function" - ], - "short_name": "GridTrack", - "title": "bevy_ui::ui_node::GridTrack", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::JustifyContent": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Default", - "Start", - "End", - "FlexStart", - "FlexEnd", - "Center", - "Stretch", - "SpaceBetween", - "SpaceEvenly", - "SpaceAround" - ], - "short_name": "JustifyContent", - "title": "bevy_ui::ui_node::JustifyContent", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::JustifyItems": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Default", - "Start", - "End", - "Center", - "Baseline", - "Stretch" - ], - "short_name": "JustifyItems", - "title": "bevy_ui::ui_node::JustifyItems", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::JustifySelf": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Auto", - "Start", - "End", - "Center", - "Baseline", - "Stretch" - ], - "short_name": "JustifySelf", - "title": "bevy_ui::ui_node::JustifySelf", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::Node": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "calculated_size": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "outline_offset": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "outline_width": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "stack_index": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "unrounded_size": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "stack_index", - "calculated_size", - "outline_width", - "outline_offset", - "unrounded_size" - ], - "short_name": "Node", - "title": "bevy_ui::ui_node::Node", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::Outline": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "offset": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "width": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - } - }, - "required": [ - "width", - "offset", - "color" - ], - "short_name": "Outline", - "title": "bevy_ui::ui_node::Outline", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::Overflow": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::OverflowAxis" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::OverflowAxis" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "Overflow", - "title": "bevy_ui::ui_node::Overflow", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::OverflowAxis": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Visible", - "Clip" - ], - "short_name": "OverflowAxis", - "title": "bevy_ui::ui_node::OverflowAxis", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::PositionType": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Relative", - "Absolute" - ], - "short_name": "PositionType", - "title": "bevy_ui::ui_node::PositionType", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_ui::ui_node::RepeatedGridTrack": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "repetition": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::GridTrackRepetition" - } - }, - "tracks": { - "type": { - "$ref": "#/$defs/bevy_utils::smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>" - } - } - }, - "required": [ - "repetition", - "tracks" - ], - "short_name": "RepeatedGridTrack", - "title": "bevy_ui::ui_node::RepeatedGridTrack", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::Style": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "align_content": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::AlignContent" - } - }, - "align_items": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::AlignItems" - } - }, - "align_self": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::AlignSelf" - } - }, - "aspect_ratio": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "border": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::UiRect" - } - }, - "bottom": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "column_gap": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "direction": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::Direction" - } - }, - "display": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::Display" - } - }, - "flex_basis": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "flex_direction": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::FlexDirection" - } - }, - "flex_grow": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "flex_shrink": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "flex_wrap": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::FlexWrap" - } - }, - "grid_auto_columns": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "grid_auto_flow": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::GridAutoFlow" - } - }, - "grid_auto_rows": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "grid_column": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::GridPlacement" - } - }, - "grid_row": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::GridPlacement" - } - }, - "grid_template_columns": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "grid_template_rows": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "height": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "justify_content": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::JustifyContent" - } - }, - "justify_items": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::JustifyItems" - } - }, - "justify_self": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::JustifySelf" - } - }, - "left": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "margin": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::UiRect" - } - }, - "max_height": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "max_width": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "min_height": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "min_width": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "overflow": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::Overflow" - } - }, - "padding": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::UiRect" - } - }, - "position_type": { - "type": { - "$ref": "#/$defs/bevy_ui::ui_node::PositionType" - } - }, - "right": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "row_gap": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "top": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - }, - "width": { - "type": { - "$ref": "#/$defs/bevy_ui::geometry::Val" - } - } - }, - "required": [ - "display", - "position_type", - "overflow", - "direction", - "left", - "right", - "top", - "bottom", - "width", - "height", - "min_width", - "min_height", - "max_width", - "max_height", - "align_items", - "justify_items", - "align_self", - "justify_self", - "align_content", - "justify_content", - "margin", - "padding", - "border", - "flex_direction", - "flex_wrap", - "flex_grow", - "flex_shrink", - "flex_basis", - "row_gap", - "column_gap", - "grid_auto_flow", - "grid_template_rows", - "grid_template_columns", - "grid_auto_rows", - "grid_auto_columns", - "grid_row", - "grid_column" - ], - "short_name": "Style", - "title": "bevy_ui::ui_node::Style", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::TargetCamera": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - ], - "short_name": "TargetCamera", - "title": "bevy_ui::ui_node::TargetCamera", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_ui::ui_node::UiImage": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "flip_x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "flip_y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "texture": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - }, - "required": [ - "texture", - "flip_x", - "flip_y" - ], - "short_name": "UiImage", - "title": "bevy_ui::ui_node::UiImage", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::ui_node::ZIndex": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/i32" - } - } - ], - "short_name": "Local", - "title": "Local", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/i32" - } - } - ], - "short_name": "Global", - "title": "Global", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "ZIndex", - "title": "bevy_ui::ui_node::ZIndex", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_ui::widget::button::Button": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Button", - "title": "bevy_ui::widget::button::Button", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::widget::image::UiImageSize": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "size": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "size" - ], - "short_name": "UiImageSize", - "title": "bevy_ui::widget::image::UiImageSize", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::widget::label::Label": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Label", - "title": "bevy_ui::widget::label::Label", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ui::widget::text::TextFlags": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "needs_new_measure_func": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "needs_recompute": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "needs_new_measure_func", - "needs_recompute" - ], - "short_name": "TextFlags", - "title": "bevy_ui::widget::text::TextFlags", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_utils::Duration": { - "isComponent": false, - "isResource": false, - "short_name": "Duration", - "title": "bevy_utils::Duration", - "type": "object", - "typeInfo": "Value" - }, - "bevy_utils::HashSet": { - "isComponent": false, - "isResource": false, - "short_name": "HashSet", - "title": "bevy_utils::HashSet", - "type": "object", - "typeInfo": "Value" - }, - "bevy_utils::Instant": { - "isComponent": false, - "isResource": false, - "short_name": "Instant", - "title": "bevy_utils::Instant", - "type": "object", - "typeInfo": "Value" - }, - "bevy_utils::Uuid": { - "isComponent": false, - "isResource": false, - "short_name": "Uuid", - "title": "bevy_utils::Uuid", - "type": "object", - "typeInfo": "Value" - }, - "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { - "additionalProperties": { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - }, - "isComponent": false, - "isResource": false, - "short_name": "HashMap, DefaultHashBuilder>", - "title": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", - "type": "object", - "typeInfo": "Map" - }, - "bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - }, - "short_name": "SmallVec<[Entity; 8]>", - "title": "bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>", - "type": "array", - "typeInfo": "List" - }, - "bevy_window::cursor::CursorIcon": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Default", - "ContextMenu", - "Help", - "Pointer", - "Progress", - "Wait", - "Cell", - "Crosshair", - "Text", - "VerticalText", - "Alias", - "Copy", - "Move", - "NoDrop", - "NotAllowed", - "Grab", - "Grabbing", - "EResize", - "NResize", - "NeResize", - "NwResize", - "SResize", - "SeResize", - "SwResize", - "WResize", - "EwResize", - "NsResize", - "NeswResize", - "NwseResize", - "ColResize", - "RowResize", - "AllScroll", - "ZoomIn", - "ZoomOut" - ], - "short_name": "CursorIcon", - "title": "bevy_window::cursor::CursorIcon", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::event::ApplicationLifetime": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Started", - "Suspended", - "Resumed" - ], - "short_name": "ApplicationLifetime", - "title": "bevy_window::event::ApplicationLifetime", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::event::CursorEntered": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window" - ], - "short_name": "CursorEntered", - "title": "bevy_window::event::CursorEntered", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::CursorLeft": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window" - ], - "short_name": "CursorLeft", - "title": "bevy_window::event::CursorLeft", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::CursorMoved": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "delta": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "position": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "position" - ], - "short_name": "CursorMoved", - "title": "bevy_window::event::CursorMoved", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::FileDragAndDrop": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "path_buf": { - "title": "path_buf", - "type": { - "$ref": "#/$defs/std::path::PathBuf" - } - }, - "window": { - "title": "window", - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "path_buf" - ], - "short_name": "DroppedFile", - "title": "DroppedFile", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "path_buf": { - "title": "path_buf", - "type": { - "$ref": "#/$defs/std::path::PathBuf" - } - }, - "window": { - "title": "window", - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "path_buf" - ], - "short_name": "HoveredFile", - "title": "HoveredFile", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "window": { - "title": "window", - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window" - ], - "short_name": "HoveredFileCanceled", - "title": "HoveredFileCanceled", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "FileDragAndDrop", - "title": "bevy_window::event::FileDragAndDrop", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_window::event::ReceivedCharacter": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "char": { - "type": { - "$ref": "#/$defs/smol_str::SmolStr" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "char" - ], - "short_name": "ReceivedCharacter", - "title": "bevy_window::event::ReceivedCharacter", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::RequestRedraw": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "RequestRedraw", - "title": "bevy_window::event::RequestRedraw", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowBackendScaleFactorChanged": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "scale_factor": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "scale_factor" - ], - "short_name": "WindowBackendScaleFactorChanged", - "title": "bevy_window::event::WindowBackendScaleFactorChanged", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowCloseRequested": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window" - ], - "short_name": "WindowCloseRequested", - "title": "bevy_window::event::WindowCloseRequested", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowClosed": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window" - ], - "short_name": "WindowClosed", - "title": "bevy_window::event::WindowClosed", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowCreated": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window" - ], - "short_name": "WindowCreated", - "title": "bevy_window::event::WindowCreated", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowFocused": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "focused": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "focused" - ], - "short_name": "WindowFocused", - "title": "bevy_window::event::WindowFocused", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowMoved": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "position": { - "type": { - "$ref": "#/$defs/glam::IVec2" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "position" - ], - "short_name": "WindowMoved", - "title": "bevy_window::event::WindowMoved", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowOccluded": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "occluded": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "occluded" - ], - "short_name": "WindowOccluded", - "title": "bevy_window::event::WindowOccluded", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowResized": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "height": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "width": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "width", - "height" - ], - "short_name": "WindowResized", - "title": "bevy_window::event::WindowResized", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowScaleFactorChanged": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "scale_factor": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "scale_factor" - ], - "short_name": "WindowScaleFactorChanged", - "title": "bevy_window::event::WindowScaleFactorChanged", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::event::WindowThemeChanged": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "theme": { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowTheme" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - } - }, - "required": [ - "window", - "theme" - ], - "short_name": "WindowThemeChanged", - "title": "bevy_window::event::WindowThemeChanged", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::CompositeAlphaMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Auto", - "Opaque", - "PreMultiplied", - "PostMultiplied", - "Inherit" - ], - "short_name": "CompositeAlphaMode", - "title": "bevy_window::window::CompositeAlphaMode", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::window::Cursor": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "grab_mode": { - "type": { - "$ref": "#/$defs/bevy_window::window::CursorGrabMode" - } - }, - "hit_test": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "icon": { - "type": { - "$ref": "#/$defs/bevy_window::cursor::CursorIcon" - } - }, - "visible": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "icon", - "visible", - "grab_mode", - "hit_test" - ], - "short_name": "Cursor", - "title": "bevy_window::window::Cursor", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::CursorGrabMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "None", - "Confined", - "Locked" - ], - "short_name": "CursorGrabMode", - "title": "bevy_window::window::CursorGrabMode", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::window::EnabledButtons": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "close": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "maximize": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "minimize": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "minimize", - "maximize", - "close" - ], - "short_name": "EnabledButtons", - "title": "bevy_window::window::EnabledButtons", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::InternalWindowState": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "maximize_request": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "minimize_request": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "physical_cursor_position": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - }, - "required": [], - "short_name": "InternalWindowState", - "title": "bevy_window::window::InternalWindowState", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::MonitorSelection": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Current" - }, - { - "title": "Primary" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/usize" - } - } - ], - "short_name": "Index", - "title": "Index", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "MonitorSelection", - "title": "bevy_window::window::MonitorSelection", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_window::window::PresentMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "AutoVsync", - "AutoNoVsync", - "Fifo", - "FifoRelaxed", - "Immediate", - "Mailbox" - ], - "short_name": "PresentMode", - "title": "bevy_window::window::PresentMode", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::window::PrimaryWindow": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "PrimaryWindow", - "title": "bevy_window::window::PrimaryWindow", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::Window": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "canvas": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "composite_alpha_mode": { - "type": { - "$ref": "#/$defs/bevy_window::window::CompositeAlphaMode" - } - }, - "cursor": { - "type": { - "$ref": "#/$defs/bevy_window::window::Cursor" - } - }, - "decorations": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "enabled_buttons": { - "type": { - "$ref": "#/$defs/bevy_window::window::EnabledButtons" - } - }, - "focused": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "ime_enabled": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "ime_position": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "internal": { - "type": { - "$ref": "#/$defs/bevy_window::window::InternalWindowState" - } - }, - "mode": { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowMode" - } - }, - "name": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "position": { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowPosition" - } - }, - "present_mode": { - "type": { - "$ref": "#/$defs/bevy_window::window::PresentMode" - } - }, - "prevent_default_event_handling": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "resizable": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "resize_constraints": { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowResizeConstraints" - } - }, - "resolution": { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowResolution" - } - }, - "title": { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - }, - "transparent": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "visible": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "window_level": { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowLevel" - } - }, - "window_theme": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - }, - "required": [ - "cursor", - "present_mode", - "mode", - "position", - "resolution", - "title", - "composite_alpha_mode", - "resize_constraints", - "resizable", - "enabled_buttons", - "decorations", - "transparent", - "focused", - "window_level", - "prevent_default_event_handling", - "internal", - "ime_enabled", - "ime_position", - "visible" - ], - "short_name": "Window", - "title": "bevy_window::window::Window", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::WindowLevel": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "AlwaysOnBottom", - "Normal", - "AlwaysOnTop" - ], - "short_name": "WindowLevel", - "title": "bevy_window::window::WindowLevel", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::window::WindowMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Windowed", - "BorderlessFullscreen", - "SizedFullscreen", - "Fullscreen" - ], - "short_name": "WindowMode", - "title": "bevy_window::window::WindowMode", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_window::window::WindowPosition": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "Automatic" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_window::window::MonitorSelection" - } - } - ], - "short_name": "Centered", - "title": "Centered", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::IVec2" - } - } - ], - "short_name": "At", - "title": "At", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "WindowPosition", - "title": "bevy_window::window::WindowPosition", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_window::window::WindowResizeConstraints": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "max_height": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "max_width": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "min_height": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "min_width": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "min_width", - "min_height", - "max_width", - "max_height" - ], - "short_name": "WindowResizeConstraints", - "title": "bevy_window::window::WindowResizeConstraints", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::WindowResolution": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "physical_height": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "physical_width": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "scale_factor": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "scale_factor_override": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - } - }, - "required": [ - "physical_width", - "physical_height", - "scale_factor" - ], - "short_name": "WindowResolution", - "title": "bevy_window::window::WindowResolution", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_window::window::WindowTheme": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Light", - "Dark" - ], - "short_name": "WindowTheme", - "title": "bevy_window::window::WindowTheme", - "type": "string", - "typeInfo": "Enum" - }, - "bool": { - "isComponent": false, - "isResource": false, - "short_name": "bool", - "title": "bool", - "type": "boolean", - "typeInfo": "Value" - }, - "char": { - "isComponent": false, - "isResource": false, - "short_name": "char", - "title": "char", - "type": "string", - "typeInfo": "Value" - }, - "core::ops::Range": { - "isComponent": false, - "isResource": false, - "short_name": "Range", - "title": "core::ops::Range", - "type": "object", - "typeInfo": "Value" - }, - "core::ops::Range": { - "isComponent": false, - "isResource": false, - "short_name": "Range", - "title": "core::ops::Range", - "type": "object", - "typeInfo": "Value" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::string::String" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option>": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::vec::Vec" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option>", - "title": "core::option::Option>", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option>": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option>", - "title": "core::option::Option>", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::camera::camera::Viewport" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::mesh::mesh::Indices" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bool" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f64" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "core::option::Option": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - } - ], - "short_name": "Some", - "title": "Some", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Option", - "title": "core::option::Option", - "type": "object", - "typeInfo": "Enum" - }, - "f32": { - "isComponent": false, - "isResource": false, - "short_name": "f32", - "title": "f32", - "type": "float", - "typeInfo": "Value" - }, - "f64": { - "isComponent": false, - "isResource": false, - "short_name": "f64", - "title": "f64", - "type": "float", - "typeInfo": "Value" - }, - "glam::Affine2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "matrix2": { - "type": { - "$ref": "#/$defs/glam::Mat2" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "matrix2", - "translation" - ], - "short_name": "Affine2", - "title": "glam::Affine2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Affine3A": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "matrix3": { - "type": { - "$ref": "#/$defs/glam::Mat3A" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::Vec3A" - } - } - }, - "required": [ - "matrix3", - "translation" - ], - "short_name": "Affine3A", - "title": "glam::Affine3A", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "BVec2", - "title": "glam::BVec2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "z": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "BVec3", - "title": "glam::BVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec3A": { - "isComponent": false, - "isResource": false, - "short_name": "BVec3A", - "title": "glam::BVec3A", - "type": "object", - "typeInfo": "Value" - }, - "glam::BVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "z": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "BVec4", - "title": "glam::BVec4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec4A": { - "isComponent": false, - "isResource": false, - "short_name": "BVec4A", - "title": "glam::BVec4A", - "type": "object", - "typeInfo": "Value" - }, - "glam::DAffine2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "matrix2": { - "type": { - "$ref": "#/$defs/glam::DMat2" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - } - }, - "required": [ - "matrix2", - "translation" - ], - "short_name": "DAffine2", - "title": "glam::DAffine2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DAffine3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "matrix3": { - "type": { - "$ref": "#/$defs/glam::DMat3" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - } - }, - "required": [ - "matrix3", - "translation" - ], - "short_name": "DAffine3", - "title": "glam::DAffine3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DMat2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - } - }, - "required": [ - "x_axis", - "y_axis" - ], - "short_name": "DMat2", - "title": "glam::DMat2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DMat3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis" - ], - "short_name": "DMat3", - "title": "glam::DMat3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DMat4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - }, - "x_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis", - "w_axis" - ], - "short_name": "DMat4", - "title": "glam::DMat4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DQuat": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "DQuat", - "title": "glam::DQuat", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DVec2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "DVec2", - "title": "glam::DVec2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "DVec3", - "title": "glam::DVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "DVec4", - "title": "glam::DVec4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::IVec2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/i32" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "IVec2", - "title": "glam::IVec2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::IVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/i32" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "IVec3", - "title": "glam::IVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::IVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "x": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/i32" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "IVec4", - "title": "glam::IVec4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Mat2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "x_axis", - "y_axis" - ], - "short_name": "Mat2", - "title": "glam::Mat2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Mat3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis" - ], - "short_name": "Mat3", - "title": "glam::Mat3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Mat3A": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3A" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3A" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3A" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis" - ], - "short_name": "Mat3A", - "title": "glam::Mat3A", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Mat4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w_axis": { - "type": { - "$ref": "#/$defs/glam::Vec4" - } - }, - "x_axis": { - "type": { - "$ref": "#/$defs/glam::Vec4" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::Vec4" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::Vec4" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis", - "w_axis" - ], - "short_name": "Mat4", - "title": "glam::Mat4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Quat": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "Quat", - "title": "glam::Quat", - "type": "object", - "typeInfo": "Struct" - }, - "glam::UVec2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "UVec2", - "title": "glam::UVec2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::UVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "UVec3", - "title": "glam::UVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::UVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "x": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "UVec4", - "title": "glam::UVec4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Vec2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "Vec2", - "title": "glam::Vec2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Vec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "Vec3", - "title": "glam::Vec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Vec3A": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "Vec3A", - "title": "glam::Vec3A", - "type": "object", - "typeInfo": "Struct" - }, - "glam::Vec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "Vec4", - "title": "glam::Vec4", - "type": "object", - "typeInfo": "Struct" - }, - "i128": { - "isComponent": false, - "isResource": false, - "short_name": "i128", - "title": "i128", - "type": "int", - "typeInfo": "Value" - }, - "i16": { - "isComponent": false, - "isResource": false, - "short_name": "i16", - "title": "i16", - "type": "int", - "typeInfo": "Value" - }, - "i32": { - "isComponent": false, - "isResource": false, - "short_name": "i32", - "title": "i32", - "type": "int", - "typeInfo": "Value" - }, - "i64": { - "isComponent": false, - "isResource": false, - "short_name": "i64", - "title": "i64", - "type": "int", - "typeInfo": "Value" - }, - "i8": { - "isComponent": false, - "isResource": false, - "short_name": "i8", - "title": "i8", - "type": "int", - "typeInfo": "Value" - }, - "isize": { - "isComponent": false, - "isResource": false, - "short_name": "isize", - "title": "isize", - "type": "int", - "typeInfo": "Value" - }, - "std::ffi::OsString": { - "isComponent": false, - "isResource": false, - "short_name": "OsString", - "title": "std::ffi::OsString", - "type": "object", - "typeInfo": "Value" - }, - "std::path::PathBuf": { - "isComponent": false, - "isResource": false, - "short_name": "PathBuf", - "title": "std::path::PathBuf", - "type": "object", - "typeInfo": "Value" - }, - "u128": { - "isComponent": false, - "isResource": false, - "short_name": "u128", - "title": "u128", - "type": "uint", - "typeInfo": "Value" - }, - "u16": { - "isComponent": false, - "isResource": false, - "short_name": "u16", - "title": "u16", - "type": "uint", - "typeInfo": "Value" - }, - "u32": { - "isComponent": false, - "isResource": false, - "short_name": "u32", - "title": "u32", - "type": "uint", - "typeInfo": "Value" - }, - "u64": { - "isComponent": false, - "isResource": false, - "short_name": "u64", - "title": "u64", - "type": "uint", - "typeInfo": "Value" - }, - "u8": { - "isComponent": false, - "isResource": false, - "short_name": "u8", - "title": "u8", - "type": "uint", - "typeInfo": "Value" - }, - "usize": { - "isComponent": false, - "isResource": false, - "short_name": "usize", - "title": "usize", - "type": "uint", - "typeInfo": "Value" - } - }, - "$schema": "https://json-schema.org/draft/2020-12/schema", - "title": "bevy component registry schema" -} \ No newline at end of file diff --git a/examples/bevy_registry_export/basic/src/core/mod.rs b/examples/bevy_registry_export/basic/src/core/mod.rs deleted file mode 100644 index 4430462..0000000 --- a/examples/bevy_registry_export/basic/src/core/mod.rs +++ /dev/null @@ -1,19 +0,0 @@ -use bevy::prelude::*; -use bevy_gltf_blueprints::*; -use bevy_registry_export::*; - -pub struct CorePlugin; -impl Plugin for CorePlugin { - fn build(&self, app: &mut App) { - app.add_plugins(( - ExportRegistryPlugin { - save_path: "registry.json".into(), - ..Default::default() - }, - BlueprintsPlugin { - aabbs: true, - ..Default::default() - }, - )); - } -} diff --git a/examples/bevy_registry_export/basic/src/game/in_game.rs b/examples/bevy_registry_export/basic/src/game/in_game.rs deleted file mode 100644 index 11ee36d..0000000 --- a/examples/bevy_registry_export/basic/src/game/in_game.rs +++ /dev/null @@ -1,83 +0,0 @@ -use bevy::prelude::*; -use bevy_gltf_blueprints::{BluePrintBundle, BlueprintName, GameWorldTag}; -use bevy_gltf_worlflow_examples_common_rapier::{assets::GameAssets, GameState, InAppRunning}; - -use bevy_rapier3d::prelude::Velocity; -use rand::Rng; - -pub fn setup_game( - mut commands: Commands, - game_assets: Res, - models: Res>, - mut next_game_state: ResMut>, -) { - commands.insert_resource(AmbientLight { - color: Color::WHITE, - brightness: 0.2, - }); - // here we actually spawn our game world/level - - commands.spawn(( - SceneBundle { - // note: because of this issue https://github.com/bevyengine/bevy/issues/10436, "world" is now a gltf file instead of a scene - scene: models - .get(game_assets.world.clone().unwrap().id()) - .expect("main level should have been loaded") - .scenes[0] - .clone(), - ..default() - }, - bevy::prelude::Name::from("world"), - GameWorldTag, - InAppRunning, - )); - - next_game_state.set(GameState::InGame) -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct UnregisteredComponent; - -pub fn spawn_test( - keycode: Res>, - mut commands: Commands, - - mut game_world: Query<(Entity, &Children), With>, -) { - if keycode.just_pressed(KeyCode::KeyT) { - let world = game_world.single_mut(); - let world = world.1[0]; - - let mut rng = rand::thread_rng(); - let range = 5.5; - let x: f32 = rng.gen_range(-range..range); - let y: f32 = rng.gen_range(-range..range); - - let mut rng = rand::thread_rng(); - let range = 0.8; - let vel_x: f32 = rng.gen_range(-range..range); - let vel_y: f32 = rng.gen_range(2.0..2.5); - let vel_z: f32 = rng.gen_range(-range..range); - - let name_index: u64 = rng.gen(); - - let new_entity = commands - .spawn(( - BluePrintBundle { - blueprint: BlueprintName("Health_Pickup".to_string()), - ..Default::default() - }, - bevy::prelude::Name::from(format!("test{}", name_index)), - // BlueprintName("Health_Pickup".to_string()), - // SpawnHere, - TransformBundle::from_transform(Transform::from_xyz(x, 2.0, y)), - Velocity { - linvel: Vec3::new(vel_x, vel_y, vel_z), - angvel: Vec3::new(0.0, 0.0, 0.0), - }, - )) - .id(); - commands.entity(world).add_child(new_entity); - } -} diff --git a/examples/bevy_registry_export/basic/src/game/in_main_menu.rs b/examples/bevy_registry_export/basic/src/game/in_main_menu.rs deleted file mode 100644 index 2b72d42..0000000 --- a/examples/bevy_registry_export/basic/src/game/in_main_menu.rs +++ /dev/null @@ -1,107 +0,0 @@ -use bevy::prelude::*; -use bevy_gltf_worlflow_examples_common_rapier::{AppState, InMainMenu}; - -pub fn setup_main_menu(mut commands: Commands) { - commands.spawn(( - Camera2dBundle { - camera: Camera { - order: 102, // needed because of this: https://github.com/jakobhellermann/bevy_editor_pls/blob/crates/bevy_editor_pls_default_windows/src/cameras/mod.rs#L213C9-L213C28 - ..default() - }, - ..Default::default() - }, - InMainMenu, - )); - - commands.spawn(( - TextBundle::from_section( - "SOME GAME TITLE !!", - TextStyle { - //font: asset_server.load("fonts/FiraMono-Medium.ttf"), - font_size: 18.0, - color: Color::WHITE, - ..Default::default() - }, - ) - .with_style(Style { - position_type: PositionType::Absolute, - top: Val::Px(100.0), - left: Val::Px(200.0), - ..default() - }), - InMainMenu, - )); - - commands.spawn(( - TextBundle::from_section( - "New Game (press Enter to start, press T once the game is started for demo spawning)", - TextStyle { - //font: asset_server.load("fonts/FiraMono-Medium.ttf"), - font_size: 18.0, - color: Color::WHITE, - ..Default::default() - }, - ) - .with_style(Style { - position_type: PositionType::Absolute, - top: Val::Px(200.0), - left: Val::Px(200.0), - ..default() - }), - InMainMenu, - )); - - /* - commands.spawn(( - TextBundle::from_section( - "Load Game", - TextStyle { - //font: asset_server.load("fonts/FiraMono-Medium.ttf"), - font_size: 18.0, - color: Color::WHITE, - ..Default::default() - }, - ) - .with_style(Style { - position_type: PositionType::Absolute, - top: Val::Px(250.0), - left: Val::Px(200.0), - ..default() - }), - InMainMenu - )); - - commands.spawn(( - TextBundle::from_section( - "Exit Game", - TextStyle { - //font: asset_server.load("fonts/FiraMono-Medium.ttf"), - font_size: 18.0, - color: Color::WHITE, - ..Default::default() - }, - ) - .with_style(Style { - position_type: PositionType::Absolute, - top: Val::Px(300.0), - left: Val::Px(200.0), - ..default() - }), - InMainMenu - ));*/ -} - -pub fn teardown_main_menu(bla: Query>, mut commands: Commands) { - for bli in bla.iter() { - commands.entity(bli).despawn_recursive(); - } -} - -pub fn main_menu( - keycode: Res>, - mut next_app_state: ResMut>, -) { - if keycode.just_pressed(KeyCode::Enter) { - next_app_state.set(AppState::AppLoading); - } -} diff --git a/examples/bevy_registry_export/basic/src/game/mod.rs b/examples/bevy_registry_export/basic/src/game/mod.rs deleted file mode 100644 index a8e8352..0000000 --- a/examples/bevy_registry_export/basic/src/game/mod.rs +++ /dev/null @@ -1,19 +0,0 @@ -pub mod in_game; -pub use in_game::*; - -pub mod in_main_menu; -pub use in_main_menu::*; - -use bevy::prelude::*; -use bevy_gltf_worlflow_examples_common_rapier::{AppState, GameState}; - -pub struct GamePlugin; -impl Plugin for GamePlugin { - fn build(&self, app: &mut App) { - app.add_systems(Update, (spawn_test).run_if(in_state(GameState::InGame))) - .add_systems(OnEnter(AppState::MenuRunning), setup_main_menu) - .add_systems(OnExit(AppState::MenuRunning), teardown_main_menu) - .add_systems(Update, main_menu.run_if(in_state(AppState::MenuRunning))) - .add_systems(OnEnter(AppState::AppRunning), setup_game); - } -} diff --git a/examples/bevy_registry_export/basic/src/main.rs b/examples/bevy_registry_export/basic/src/main.rs deleted file mode 100644 index 3c95987..0000000 --- a/examples/bevy_registry_export/basic/src/main.rs +++ /dev/null @@ -1,24 +0,0 @@ -use bevy::prelude::*; -use bevy_gltf_worlflow_examples_common_rapier::CommonPlugin; - -mod core; -use crate::core::*; - -mod game; -use game::*; - -mod test_components; -use test_components::*; - -fn main() { - App::new() - .add_plugins(( - DefaultPlugins.set(AssetPlugin::default()), - // our custom plugins - CommonPlugin, - CorePlugin, // reusable plugins - GamePlugin, // specific to our game - ComponentsTestPlugin, // Showcases different type of components /structs - )) - .run(); -} diff --git a/examples/bevy_registry_export/basic/src/test_components.rs b/examples/bevy_registry_export/basic/src/test_components.rs deleted file mode 100644 index deebb1d..0000000 --- a/examples/bevy_registry_export/basic/src/test_components.rs +++ /dev/null @@ -1,136 +0,0 @@ -use bevy::prelude::*; - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct UnitTest; - -#[derive(Component, Reflect, Default, Debug, Deref, DerefMut)] -#[reflect(Component)] -struct TupleTestF32(f32); - -#[derive(Component, Reflect, Default, Debug, Deref, DerefMut)] -#[reflect(Component)] -struct TupleTestU64(u64); - -#[derive(Component, Reflect, Default, Debug, Deref, DerefMut)] -#[reflect(Component)] -pub struct TupleTestStr(String); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleTest2(f32, u64, String); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleTestBool(bool); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVec2(Vec2); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVec3(Vec3); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVec(Vec); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleVecF32F32(Vec<(f32, f32)>); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -struct TupleTestColor(Color); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub struct BasicTest { - a: f32, - b: u64, - c: String, -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub enum EnumTest { - Metal, - Wood, - Rock, - Cloth, - Squishy, - #[default] - None, -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub struct NestingTestLevel2 { - text: String, - enable: bool, - enum_inner: EnumTest, - color: TupleTestColor, - toggle: TupleTestBool, - basic: BasicTest, - pub nested: NestingTestLevel3, - colors_list: VecOfColors, -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub struct NestingTestLevel3 { - vec: TupleVec3, -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub struct NestedTupleStuff(f32, u64, NestingTestLevel2); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub enum EnumComplex { - Float(f32), - Wood(String), - Vec(BasicTest), - SomeThing, - #[default] - None, -} - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub struct VecOfVec3s2(Vec); - -#[derive(Component, Reflect, Default, Debug)] -#[reflect(Component)] -pub struct VecOfColors(Vec); -pub struct ComponentsTestPlugin; -impl Plugin for ComponentsTestPlugin { - fn build(&self, app: &mut App) { - app.register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::>() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::() - .register_type::<(f32, f32)>() - .register_type::>() - .register_type::>() - .register_type::>() - .register_type::(); - } -} diff --git a/examples/bevy_gltf_blueprints/animation/Cargo.toml b/examples/blenvy/animation/Cargo.toml similarity index 100% rename from examples/bevy_gltf_blueprints/animation/Cargo.toml rename to examples/blenvy/animation/Cargo.toml diff --git a/examples/bevy_gltf_blueprints/animation/README.md b/examples/blenvy/animation/README.md similarity index 100% rename from examples/bevy_gltf_blueprints/animation/README.md rename to examples/blenvy/animation/README.md diff --git a/examples/bevy_gltf_blueprints/animation/assets/animation.blend b/examples/blenvy/animation/assets/animation.blend similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/animation.blend rename to examples/blenvy/animation/assets/animation.blend diff --git a/examples/bevy_gltf_blueprints/animation/assets/assets_core.assets.ron b/examples/blenvy/animation/assets/assets_core.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/assets_core.assets.ron rename to examples/blenvy/animation/assets/assets_core.assets.ron diff --git a/examples/bevy_gltf_blueprints/animation/assets/assets_game.assets.ron b/examples/blenvy/animation/assets/assets_game.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/assets_game.assets.ron rename to examples/blenvy/animation/assets/assets_game.assets.ron diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/Level1.glb b/examples/blenvy/animation/assets/models/Level1.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/Level1.glb rename to examples/blenvy/animation/assets/models/Level1.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/animation.glb b/examples/blenvy/animation/assets/models/animation.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/animation.glb rename to examples/blenvy/animation/assets/models/animation.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/Container.glb b/examples/blenvy/animation/assets/models/library/Container.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/Container.glb rename to examples/blenvy/animation/assets/models/library/Container.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/Fox.glb b/examples/blenvy/animation/assets/models/library/Fox.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/Fox.glb rename to examples/blenvy/animation/assets/models/library/Fox.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/Health_Pickup.glb b/examples/blenvy/animation/assets/models/library/Health_Pickup.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/Health_Pickup.glb rename to examples/blenvy/animation/assets/models/library/Health_Pickup.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/MagicTeapot.glb b/examples/blenvy/animation/assets/models/library/MagicTeapot.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/MagicTeapot.glb rename to examples/blenvy/animation/assets/models/library/MagicTeapot.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/Pillar.glb b/examples/blenvy/animation/assets/models/library/Pillar.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/Pillar.glb rename to examples/blenvy/animation/assets/models/library/Pillar.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/Player.glb b/examples/blenvy/animation/assets/models/library/Player.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/Player.glb rename to examples/blenvy/animation/assets/models/library/Player.glb diff --git a/examples/bevy_gltf_blueprints/animation/assets/models/library/Wheelbot.glb b/examples/blenvy/animation/assets/models/library/Wheelbot.glb similarity index 100% rename from examples/bevy_gltf_blueprints/animation/assets/models/library/Wheelbot.glb rename to examples/blenvy/animation/assets/models/library/Wheelbot.glb diff --git a/examples/bevy_gltf_blueprints/animation/src/core/mod.rs b/examples/blenvy/animation/src/core/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/core/mod.rs rename to examples/blenvy/animation/src/core/mod.rs diff --git a/examples/bevy_gltf_blueprints/animation/src/game/in_game.rs b/examples/blenvy/animation/src/game/in_game.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/game/in_game.rs rename to examples/blenvy/animation/src/game/in_game.rs diff --git a/examples/bevy_gltf_blueprints/animation/src/game/in_main_menu.rs b/examples/blenvy/animation/src/game/in_main_menu.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/game/in_main_menu.rs rename to examples/blenvy/animation/src/game/in_main_menu.rs diff --git a/examples/bevy_gltf_blueprints/animation/src/game/mod.rs b/examples/blenvy/animation/src/game/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/game/mod.rs rename to examples/blenvy/animation/src/game/mod.rs diff --git a/examples/bevy_gltf_blueprints/animation/src/main.rs b/examples/blenvy/animation/src/main.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/main.rs rename to examples/blenvy/animation/src/main.rs diff --git a/examples/bevy_gltf_blueprints/animation/src/state.rs b/examples/blenvy/animation/src/state.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/state.rs rename to examples/blenvy/animation/src/state.rs diff --git a/examples/bevy_gltf_blueprints/animation/src/test_components.rs b/examples/blenvy/animation/src/test_components.rs similarity index 100% rename from examples/bevy_gltf_blueprints/animation/src/test_components.rs rename to examples/blenvy/animation/src/test_components.rs diff --git a/examples/bevy_gltf_blueprints/basic/Cargo.toml b/examples/blenvy/basic/Cargo.toml similarity index 100% rename from examples/bevy_gltf_blueprints/basic/Cargo.toml rename to examples/blenvy/basic/Cargo.toml diff --git a/examples/bevy_gltf_blueprints/basic/README.md b/examples/blenvy/basic/README.md similarity index 100% rename from examples/bevy_gltf_blueprints/basic/README.md rename to examples/blenvy/basic/README.md diff --git a/examples/bevy_gltf_blueprints/basic/assets/assets_core.assets.ron b/examples/blenvy/basic/assets/assets_core.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/assets_core.assets.ron rename to examples/blenvy/basic/assets/assets_core.assets.ron diff --git a/examples/bevy_gltf_blueprints/basic/assets/assets_game.assets.ron b/examples/blenvy/basic/assets/assets_game.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/assets_game.assets.ron rename to examples/blenvy/basic/assets/assets_game.assets.ron diff --git a/examples/bevy_gltf_blueprints/basic/assets/basic.blend b/examples/blenvy/basic/assets/basic.blend similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/basic.blend rename to examples/blenvy/basic/assets/basic.blend diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/World.glb b/examples/blenvy/basic/assets/models/World.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/World.glb rename to examples/blenvy/basic/assets/models/World.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Container.glb b/examples/blenvy/basic/assets/models/library/Container.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Container.glb rename to examples/blenvy/basic/assets/models/library/Container.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Enemy.glb b/examples/blenvy/basic/assets/models/library/Enemy.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Enemy.glb rename to examples/blenvy/basic/assets/models/library/Enemy.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Finger.glb b/examples/blenvy/basic/assets/models/library/Finger.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Finger.glb rename to examples/blenvy/basic/assets/models/library/Finger.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Hand.glb b/examples/blenvy/basic/assets/models/library/Hand.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Hand.glb rename to examples/blenvy/basic/assets/models/library/Hand.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Health_Pickup.glb b/examples/blenvy/basic/assets/models/library/Health_Pickup.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Health_Pickup.glb rename to examples/blenvy/basic/assets/models/library/Health_Pickup.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Humanoid_cactus.glb b/examples/blenvy/basic/assets/models/library/Humanoid_cactus.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Humanoid_cactus.glb rename to examples/blenvy/basic/assets/models/library/Humanoid_cactus.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/MagicTeapot.glb b/examples/blenvy/basic/assets/models/library/MagicTeapot.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/MagicTeapot.glb rename to examples/blenvy/basic/assets/models/library/MagicTeapot.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Pillar.glb b/examples/blenvy/basic/assets/models/library/Pillar.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Pillar.glb rename to examples/blenvy/basic/assets/models/library/Pillar.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Player.glb b/examples/blenvy/basic/assets/models/library/Player.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Player.glb rename to examples/blenvy/basic/assets/models/library/Player.glb diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/library/Unused_in_level_test.glb b/examples/blenvy/basic/assets/models/library/Unused_in_level_test.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic/assets/models/library/Unused_in_level_test.glb rename to examples/blenvy/basic/assets/models/library/Unused_in_level_test.glb diff --git a/examples/bevy_gltf_blueprints/basic/index.html b/examples/blenvy/basic/index.html similarity index 100% rename from examples/bevy_gltf_blueprints/basic/index.html rename to examples/blenvy/basic/index.html diff --git a/examples/bevy_gltf_blueprints/basic/src/core/mod.rs b/examples/blenvy/basic/src/core/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic/src/core/mod.rs rename to examples/blenvy/basic/src/core/mod.rs diff --git a/examples/bevy_gltf_blueprints/basic/src/game/in_game.rs b/examples/blenvy/basic/src/game/in_game.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic/src/game/in_game.rs rename to examples/blenvy/basic/src/game/in_game.rs diff --git a/examples/bevy_gltf_blueprints/basic/src/game/in_main_menu.rs b/examples/blenvy/basic/src/game/in_main_menu.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic/src/game/in_main_menu.rs rename to examples/blenvy/basic/src/game/in_main_menu.rs diff --git a/examples/bevy_gltf_blueprints/basic/src/game/mod.rs b/examples/blenvy/basic/src/game/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic/src/game/mod.rs rename to examples/blenvy/basic/src/game/mod.rs diff --git a/examples/bevy_gltf_blueprints/basic/src/main.rs b/examples/blenvy/basic/src/main.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic/src/main.rs rename to examples/blenvy/basic/src/main.rs diff --git a/examples/bevy_gltf_blueprints/basic/src/test_components.rs b/examples/blenvy/basic/src/test_components.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic/src/test_components.rs rename to examples/blenvy/basic/src/test_components.rs diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml b/examples/blenvy/basic_xpbd_physics/Cargo.toml similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml rename to examples/blenvy/basic_xpbd_physics/Cargo.toml diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/README.md b/examples/blenvy/basic_xpbd_physics/README.md similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/README.md rename to examples/blenvy/basic_xpbd_physics/README.md diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/advanced.blend b/examples/blenvy/basic_xpbd_physics/assets/advanced.blend similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/advanced.blend rename to examples/blenvy/basic_xpbd_physics/assets/advanced.blend diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/assets_core.assets.ron b/examples/blenvy/basic_xpbd_physics/assets/assets_core.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/assets_core.assets.ron rename to examples/blenvy/basic_xpbd_physics/assets/assets_core.assets.ron diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/assets_game.assets.ron b/examples/blenvy/basic_xpbd_physics/assets/assets_game.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/assets_game.assets.ron rename to examples/blenvy/basic_xpbd_physics/assets/assets_game.assets.ron diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/World.glb b/examples/blenvy/basic_xpbd_physics/assets/models/World.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/World.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/World.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Container.glb b/examples/blenvy/basic_xpbd_physics/assets/models/library/Container.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Container.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/library/Container.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Health_Pickup.glb b/examples/blenvy/basic_xpbd_physics/assets/models/library/Health_Pickup.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Health_Pickup.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/library/Health_Pickup.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/MagicTeapot.glb b/examples/blenvy/basic_xpbd_physics/assets/models/library/MagicTeapot.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/MagicTeapot.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/library/MagicTeapot.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Pillar.glb b/examples/blenvy/basic_xpbd_physics/assets/models/library/Pillar.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Pillar.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/library/Pillar.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Player.glb b/examples/blenvy/basic_xpbd_physics/assets/models/library/Player.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Player.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/library/Player.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Unused_in_level_test.glb b/examples/blenvy/basic_xpbd_physics/assets/models/library/Unused_in_level_test.glb similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/assets/models/library/Unused_in_level_test.glb rename to examples/blenvy/basic_xpbd_physics/assets/models/library/Unused_in_level_test.glb diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/src/core/mod.rs b/examples/blenvy/basic_xpbd_physics/src/core/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/src/core/mod.rs rename to examples/blenvy/basic_xpbd_physics/src/core/mod.rs diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/src/game/in_game.rs b/examples/blenvy/basic_xpbd_physics/src/game/in_game.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/src/game/in_game.rs rename to examples/blenvy/basic_xpbd_physics/src/game/in_game.rs diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/src/game/in_main_menu.rs b/examples/blenvy/basic_xpbd_physics/src/game/in_main_menu.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/src/game/in_main_menu.rs rename to examples/blenvy/basic_xpbd_physics/src/game/in_main_menu.rs diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/src/game/mod.rs b/examples/blenvy/basic_xpbd_physics/src/game/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/src/game/mod.rs rename to examples/blenvy/basic_xpbd_physics/src/game/mod.rs diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/src/main.rs b/examples/blenvy/basic_xpbd_physics/src/main.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/src/main.rs rename to examples/blenvy/basic_xpbd_physics/src/main.rs diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/src/test_components.rs b/examples/blenvy/basic_xpbd_physics/src/test_components.rs similarity index 100% rename from examples/bevy_gltf_blueprints/basic_xpbd_physics/src/test_components.rs rename to examples/blenvy/basic_xpbd_physics/src/test_components.rs diff --git a/examples/bevy_gltf_blueprints/materials/Cargo.toml b/examples/blenvy/materials/Cargo.toml similarity index 100% rename from examples/bevy_gltf_blueprints/materials/Cargo.toml rename to examples/blenvy/materials/Cargo.toml diff --git a/examples/bevy_gltf_blueprints/materials/README.md b/examples/blenvy/materials/README.md similarity index 100% rename from examples/bevy_gltf_blueprints/materials/README.md rename to examples/blenvy/materials/README.md diff --git a/examples/bevy_gltf_blueprints/materials/assets/assets_core.assets.ron b/examples/blenvy/materials/assets/assets_core.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/assets_core.assets.ron rename to examples/blenvy/materials/assets/assets_core.assets.ron diff --git a/examples/bevy_gltf_blueprints/materials/assets/assets_game.assets.ron b/examples/blenvy/materials/assets/assets_game.assets.ron similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/assets_game.assets.ron rename to examples/blenvy/materials/assets/assets_game.assets.ron diff --git a/examples/bevy_gltf_blueprints/materials/assets/materials.blend b/examples/blenvy/materials/assets/materials.blend similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/materials.blend rename to examples/blenvy/materials/assets/materials.blend diff --git a/examples/bevy_gltf_blueprints/materials/assets/materials/materials_materials_library.glb b/examples/blenvy/materials/assets/materials/materials_materials_library.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/materials/materials_materials_library.glb rename to examples/blenvy/materials/assets/materials/materials_materials_library.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/Level1.glb b/examples/blenvy/materials/assets/models/Level1.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/Level1.glb rename to examples/blenvy/materials/assets/models/Level1.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Container.glb b/examples/blenvy/materials/assets/models/library/Container.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Container.glb rename to examples/blenvy/materials/assets/models/library/Container.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Health_Pickup.glb b/examples/blenvy/materials/assets/models/library/Health_Pickup.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Health_Pickup.glb rename to examples/blenvy/materials/assets/models/library/Health_Pickup.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Magic Sphere.glb b/examples/blenvy/materials/assets/models/library/Magic Sphere.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Magic Sphere.glb rename to examples/blenvy/materials/assets/models/library/Magic Sphere.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/MagicTeapot.glb b/examples/blenvy/materials/assets/models/library/MagicTeapot.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/MagicTeapot.glb rename to examples/blenvy/materials/assets/models/library/MagicTeapot.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Pillar.glb b/examples/blenvy/materials/assets/models/library/Pillar.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Pillar.glb rename to examples/blenvy/materials/assets/models/library/Pillar.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Pillar2.glb b/examples/blenvy/materials/assets/models/library/Pillar2.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Pillar2.glb rename to examples/blenvy/materials/assets/models/library/Pillar2.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Player.glb b/examples/blenvy/materials/assets/models/library/Player.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Player.glb rename to examples/blenvy/materials/assets/models/library/Player.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Watermelon cut.glb b/examples/blenvy/materials/assets/models/library/Watermelon cut.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Watermelon cut.glb rename to examples/blenvy/materials/assets/models/library/Watermelon cut.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Watermelon.glb b/examples/blenvy/materials/assets/models/library/Watermelon.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Watermelon.glb rename to examples/blenvy/materials/assets/models/library/Watermelon.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/models/library/Watermelon2.glb b/examples/blenvy/materials/assets/models/library/Watermelon2.glb similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/models/library/Watermelon2.glb rename to examples/blenvy/materials/assets/models/library/Watermelon2.glb diff --git a/examples/bevy_gltf_blueprints/materials/assets/textures/juicy-watermelon-5882.png b/examples/blenvy/materials/assets/textures/juicy-watermelon-5882.png similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/textures/juicy-watermelon-5882.png rename to examples/blenvy/materials/assets/textures/juicy-watermelon-5882.png diff --git a/examples/bevy_gltf_blueprints/materials/assets/textures/watermelon-6441.png b/examples/blenvy/materials/assets/textures/watermelon-6441.png similarity index 100% rename from examples/bevy_gltf_blueprints/materials/assets/textures/watermelon-6441.png rename to examples/blenvy/materials/assets/textures/watermelon-6441.png diff --git a/examples/bevy_gltf_blueprints/materials/src/core/mod.rs b/examples/blenvy/materials/src/core/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/materials/src/core/mod.rs rename to examples/blenvy/materials/src/core/mod.rs diff --git a/examples/bevy_gltf_blueprints/materials/src/game/in_game.rs b/examples/blenvy/materials/src/game/in_game.rs similarity index 100% rename from examples/bevy_gltf_blueprints/materials/src/game/in_game.rs rename to examples/blenvy/materials/src/game/in_game.rs diff --git a/examples/bevy_gltf_blueprints/materials/src/game/in_main_menu.rs b/examples/blenvy/materials/src/game/in_main_menu.rs similarity index 100% rename from examples/bevy_gltf_blueprints/materials/src/game/in_main_menu.rs rename to examples/blenvy/materials/src/game/in_main_menu.rs diff --git a/examples/bevy_gltf_blueprints/materials/src/game/mod.rs b/examples/blenvy/materials/src/game/mod.rs similarity index 100% rename from examples/bevy_gltf_blueprints/materials/src/game/mod.rs rename to examples/blenvy/materials/src/game/mod.rs diff --git a/examples/bevy_gltf_blueprints/materials/src/main.rs b/examples/blenvy/materials/src/main.rs similarity index 100% rename from examples/bevy_gltf_blueprints/materials/src/main.rs rename to examples/blenvy/materials/src/main.rs diff --git a/examples/bevy_gltf_blueprints/materials/src/test_components.rs b/examples/blenvy/materials/src/test_components.rs similarity index 100% rename from examples/bevy_gltf_blueprints/materials/src/test_components.rs rename to examples/blenvy/materials/src/test_components.rs diff --git a/examples/bevy_gltf_save_load/basic/Cargo.toml b/examples/blenvy/save_load/Cargo.toml similarity index 100% rename from examples/bevy_gltf_save_load/basic/Cargo.toml rename to examples/blenvy/save_load/Cargo.toml diff --git a/examples/bevy_gltf_save_load/basic/README.md b/examples/blenvy/save_load/README.md similarity index 100% rename from examples/bevy_gltf_save_load/basic/README.md rename to examples/blenvy/save_load/README.md diff --git a/examples/bevy_gltf_save_load/basic/assets/assets_core.assets.ron b/examples/blenvy/save_load/assets/assets_core.assets.ron similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/assets_core.assets.ron rename to examples/blenvy/save_load/assets/assets_core.assets.ron diff --git a/examples/bevy_gltf_save_load/basic/assets/assets_game.assets.ron b/examples/blenvy/save_load/assets/assets_game.assets.ron similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/assets_game.assets.ron rename to examples/blenvy/save_load/assets/assets_game.assets.ron diff --git a/examples/bevy_gltf_save_load/basic/assets/basic.blend b/examples/blenvy/save_load/assets/basic.blend similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/basic.blend rename to examples/blenvy/save_load/assets/basic.blend diff --git a/examples/bevy_gltf_save_load/basic/assets/models/World.glb b/examples/blenvy/save_load/assets/models/World.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/World.glb rename to examples/blenvy/save_load/assets/models/World.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/World_dynamic.glb b/examples/blenvy/save_load/assets/models/World_dynamic.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/World_dynamic.glb rename to examples/blenvy/save_load/assets/models/World_dynamic.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Container.glb b/examples/blenvy/save_load/assets/models/library/Container.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Container.glb rename to examples/blenvy/save_load/assets/models/library/Container.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Ground.glb b/examples/blenvy/save_load/assets/models/library/Ground.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Ground.glb rename to examples/blenvy/save_load/assets/models/library/Ground.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Health_Pickup.glb b/examples/blenvy/save_load/assets/models/library/Health_Pickup.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Health_Pickup.glb rename to examples/blenvy/save_load/assets/models/library/Health_Pickup.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/MagicTeapot.glb b/examples/blenvy/save_load/assets/models/library/MagicTeapot.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/MagicTeapot.glb rename to examples/blenvy/save_load/assets/models/library/MagicTeapot.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Pillar.glb b/examples/blenvy/save_load/assets/models/library/Pillar.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Pillar.glb rename to examples/blenvy/save_load/assets/models/library/Pillar.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Player.glb b/examples/blenvy/save_load/assets/models/library/Player.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Player.glb rename to examples/blenvy/save_load/assets/models/library/Player.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Sphero.glb b/examples/blenvy/save_load/assets/models/library/Sphero.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Sphero.glb rename to examples/blenvy/save_load/assets/models/library/Sphero.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/models/library/Unused_in_level_test.glb b/examples/blenvy/save_load/assets/models/library/Unused_in_level_test.glb similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/models/library/Unused_in_level_test.glb rename to examples/blenvy/save_load/assets/models/library/Unused_in_level_test.glb diff --git a/examples/bevy_gltf_save_load/basic/assets/scenes/save.scn.ron b/examples/blenvy/save_load/assets/scenes/save.scn.ron similarity index 100% rename from examples/bevy_gltf_save_load/basic/assets/scenes/save.scn.ron rename to examples/blenvy/save_load/assets/scenes/save.scn.ron diff --git a/examples/bevy_gltf_save_load/basic/src/core/mod.rs b/examples/blenvy/save_load/src/core/mod.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/core/mod.rs rename to examples/blenvy/save_load/src/core/mod.rs diff --git a/examples/bevy_gltf_save_load/basic/src/game/in_game.rs b/examples/blenvy/save_load/src/game/in_game.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/game/in_game.rs rename to examples/blenvy/save_load/src/game/in_game.rs diff --git a/examples/bevy_gltf_save_load/basic/src/game/in_game_loading.rs b/examples/blenvy/save_load/src/game/in_game_loading.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/game/in_game_loading.rs rename to examples/blenvy/save_load/src/game/in_game_loading.rs diff --git a/examples/bevy_gltf_save_load/basic/src/game/in_game_saving.rs b/examples/blenvy/save_load/src/game/in_game_saving.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/game/in_game_saving.rs rename to examples/blenvy/save_load/src/game/in_game_saving.rs diff --git a/examples/bevy_gltf_save_load/basic/src/game/in_main_menu.rs b/examples/blenvy/save_load/src/game/in_main_menu.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/game/in_main_menu.rs rename to examples/blenvy/save_load/src/game/in_main_menu.rs diff --git a/examples/bevy_gltf_save_load/basic/src/game/mod.rs b/examples/blenvy/save_load/src/game/mod.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/game/mod.rs rename to examples/blenvy/save_load/src/game/mod.rs diff --git a/examples/bevy_gltf_save_load/basic/src/main.rs b/examples/blenvy/save_load/src/main.rs similarity index 100% rename from examples/bevy_gltf_save_load/basic/src/main.rs rename to examples/blenvy/save_load/src/main.rs diff --git a/examples/bevy_gltf_components/basic/src/test_components.rs b/examples/blenvy/save_load/src/test_components.rs similarity index 100% rename from examples/bevy_gltf_components/basic/src/test_components.rs rename to examples/blenvy/save_load/src/test_components.rs diff --git a/tools/blenvy/README.md b/tools/blenvy/README.md new file mode 100644 index 0000000..59744f6 --- /dev/null +++ b/tools/blenvy/README.md @@ -0,0 +1,288 @@ +# Blenvy: Blender add-on + + +This [Blender addon](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/tools/blenvy) gives you: +- an easy to use UI to add and configure your [Bevy](https://bevyengine.org/) components inside Blender + - the UI is **automatically generated** based on a **registry schema** file, an export of all your **registered** Bevy components's information, generated +by the registry export part of the [Blenvy](https://crates.io/crates/blenvy) crate + - the ability to **toggle components** on/off without having to remove the component from the object + +- an automatic export of your level/world from Blender to gltf whenever you save your Blend file. + - export of used /marked collections as [Gltf blueprints](../../crates/blenvy/README.md) + - change detection, so that only the levels & blueprints you have changed get exported when you save your blend file + - export of material librairies + +- a way to setup you assets for your levels & blueprints in Blender + +If you want to know more about the technical details , see [here]() + +> IMPORTANT !! if you have previously used the "old" add-ons (*gltf_auto_export* & *bevy_components*), please see the [migration guide](../../Migration_guide.md) +If you can I would generally recommend starting fresh, but a lot of effort has been put to make transitioning easier + + +## Installation: + + +* grab the latest release zip file + +![blender addon install](./docs/blender_addon_install_zip.png) + + +* in Blender go to edit => preferences => install + +![blender addon install](./docs/blender_addon_install.png) + +* choose the path where ```blenvy.zip``` is stored + +![blender addon install](./docs/blender_addon_install2.png) + + +## Quickstart + + +## Configuration: + + +### Bevy side + + - setup the [Blenvy crate](https://crates.io/crates/blenvy) for your project (see the crate's documentation for that), and compile/run it to get the ```registry.json``` file to enable adding/editing your components in Blender + +### Blender side + +> The add-on comes almost mostly pre-configured with sensible defaults, but you can set the following settings to your liking + +#### Common + +you **need** to tell Blenvy + - what your level scenes are (what Blender scenes should become levels in Bevy) + - what your library scenes are (what Blender scenes will store your library of re-useable blueprints) + +Blenvy is opinionated ! + - keep you art/sources (usually not delivered with your game) seperate from your game assets + - keep your blueprints/levels/materials gltf files seperate + +#### Components + +> the defaults are already pre-set to match those on the Bevy side for the location of the ```registry.json``` file, unless you want to store it somewhere other than ```assets/registry.json``` + +- Go to the new Components tab in the **configuration** tab + +![configuration](./docs/configuration.png) + +- click on the button to select your registry.json file (in the "configuration" panel) + +![configuration 2](./docs/configuration2.png) + +- the list of available components will appear + +![configuration 3](./docs/configuration3.png) + + +##### registry file polling + +* by default, the add-on will check for changes in your registry file every second, and refresh the UI accordingly +* you can set the polling frequency or turn it off if you do not want auto-refresh + +![registry file polling](./docs/registry_polling.png) + +#### Auto-export + +### Materials + +You can enable this option to automatically generate a **material library** files that combines all the materials in use in your blueprints. + +![material_library](./docs/blender_addon_materials2.png) + +Since each blueprint is normally a completely independant gltf file, without this option, if you have a material with a large texture for example, +**ALL** of your blueprints using that material will embed that large texture, leading to **significant bloat & memory use**. + +- When this option is enabled, you get a single material library per Blender project, and a **MaterialInfo** component is inserted into each object using a material. +- The correct material will then be inserted on the Bevy side (that loads any number of material libraries that you need) into the correct mesh (see the configuration +options in **bevy_gltf_blueprints** for more information on that) +- Only one material per object is supported at this stage, ie the last material slot's material is the one that is going to be used + +![material_library](./docs/blender_addon_materials.png) + +TLDR: Use this option to make sure that each blueprint file does not contain a copy of the same materials + + +### Multiple blend file workflow + +If you want to use multiple blend files, use Blender's asset library etc, we got you coverred too ! +There are only a few things to keep in mind + +#### Assets/library/blueprints files +- mark your library scenes as specified above, but **do NOT** specify a **main** scene +- mark any collection in your scenes as "assets" +- choose "split" for the combine mode (as you want your gltf blueprints to be saved for external use) +- do your Blender things as normal +- anytime you save your file, it will automatically export any relevant collections/blueprints +- (optional) activate the **material library** option, so you only have one set of material per asset library (recomended) + +#### Level/world files +- mark your main scenes as specified above ( personally I recommended **NOT** specifying a **library** scene in this case to keep things tidy, but that is up to you) +- configure your asset libraries as you would usually do, I recomend using the "link" mode so that any changes to asset files are reflected correctly +- drag & drop any assets from the blueprints library (as you would normally do in Blender as well) +- choose "split" for the combine mode (as you want your gltf blueprints to be external usually & use the gltf files generated from your assets library) +- do your Blender things as normal +- anytime you save your file, it will automatically export your level(s) + +Take a look at the [relevant](../../examples/demo/) example for more [details](../../examples/demo/art/) + + +## Useage + +### Components + +#### adding components + +- to add a component, select an object, collection, mesh or material and then select the component from the components list: (the full type information will be displayed as tooltip) + +![components list](./docs/components_list.png) + +- click on the dropdown to get the full list of available components + +![components list](./docs/components_list2.png) + +- you can also filter components by name for convenience + +![filter components](./docs/filter_components.png) + +- add a component by clicking on the "add component" button once you have selected your desired component + + it will appear in the component list for that object + +![add component](./docs/add_component.png) + + +#### editing components + +- to edit a component's value just use the UI: + +![edit component](./docs/edit_component.png) + +#### copy & pasting + +- you can also copy & paste components between objects + +- click on the "copy component button" of the component you want to copy + +![copy component](./docs/copy_component.png) + +- then select the object you want to copy the component (& its value) to, and click on the paste button. + +It will add the component to the select object + +![paste component](./docs/paste_component.png) + +> if the target object already has the same component, its values will be overwritten + + +#### Additional components UI features + + +##### Toggling component details + +- for large/ complex components you can toggle the details of that component: + +![toggle details](./docs/toggle_details.png) + + +##### Supported components + +- normally (minus any bugs, please report those!) all components using **registered** types should be useable and editable +- this includes (non exhaustive list): + * enums (even complex ones !) + + ![enums](./docs/enums.png) + + ![enums](./docs/enums2.png) + + + * complex structs, with various types of fields (including nested ones) + + ![complex](./docs/complex_components2.png) + + * lists/ vecs (here a vec of tuples) + + ![lists](./docs/vecs_lists.png) + + * etc ! + +##### Unregistered types & error handling + +- non registered types can be viewed in this panel : (can be practical to see if you have any missing registrations too!) + + ![unregistered types](./docs/unregistered_types.png) + +- if you have a component made up of unregistered structs/enums etc, you will get visual feedback & the component will be deactivated + + ![invalid component](./docs/invalid_components.png) + + > see [here](#invalidunregistered-type-renaming--conversion) for ways to convert invalid / unregistered components to other types. + + +- if you are encountering this type of view: don't panic your component data is not gone ! It just means you need to reload the registry data by clicking on the relevant button + + ![missing registry data](./docs/missing_registry_data.png) + +## Levels + +## Blueprints + + +## Technical details + +- adds **metadata** to objects containing information about what components it uses + some extra information +- uses Blender's **PropertyGroups** to generate custom UIs & connects those groups with the custom properties so that no matter the complexity +of your Bevy components you get a nicely packed custom_property to use with ... +- supports any number of main/level scenes + - Blender scenes where you define your levels, and all collection instances are replaced with "pointers" to other gltf files (all automatic) +- supports any number of library scenes + - Blender scenes where you define the assets that you use in your levels, in the form of collections +- automatic export of **changed** objects & collections only ! a sort of "incremental export", where only the changed collections (if in use) + get exported when you save your blend file + +### Components + +changing the values of a component in the UI will automatically update the value of the underlying entry in the ```bevy_components``` custom property + +![edit component](./docs/edit_component2.png) + +### Internal process (simplified) + +This is the internal logic of the export process with blueprints (simplified) + +![process](./docs/process.svg) + +ie this is an example scene... + +![](./docs/workflow_original.jpg) + +and what actually gets exported for the main scene/world/level + +![](./docs/workflow_empties.jpg) + +all collections instances replaced with empties, and all those collections exported to gltf files as seen above + + +## Known issues & limitations: + +* **Range** data (ie ```Range``` etc) are not handled at this time (issue seems to be on the Bevy side) +* **Entity** structs are always set to 0 (setting entity values on the Blender side at this time does not make much sense anyway) + + +## Development + +- I highly recomend (if you are using vscode like me) to use +[this](https://marketplace.visualstudio.com/items?itemName=JacquesLucke.blender-development) excellent extension , works easilly and fast , even for the latest +versions of Blender (v4.0 as of this writing) +- this [article](https://polynook.com/learn/set-up-blender-addon-development-environment-in-windows) might also help out +(easy enough to get it working on linux too) + +## License + +This tool, 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) \ No newline at end of file diff --git a/tools/blenvy/README_components.md b/tools/blenvy/README_components.md deleted file mode 100644 index d6f19fa..0000000 --- a/tools/blenvy/README_components.md +++ /dev/null @@ -1,297 +0,0 @@ -# Bevy components - -This [Blender addon](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/tools/bevy_components) gives you an easy to use UI to add and configure your [Bevy](https://bevyengine.org/) components inside Blender ! - -- **automatically generates a simple UI** to add/configure components based on a **registry schema** file (an export of all your Bevy components's information, generated) -by the [bevy_registry_export](https://crates.io/crates/bevy_registry_export) crate/plugin -- no more need to specify components manually using custom_properties, with error prone naming etc -- adds **metadata** to objects containing information about what components it uses + some extra information -- uses Blender's **PropertyGroups** to generate custom UIs & connects those groups with the custom properties so that no matter the complexity -of your Bevy components you get a nicely packed custom_property to use with ... -- the ideal companion to the [gltf_auto_export](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/tools/gltf_auto_export) to embed your Bevy components inside your gltf files - - - -> Important: - the tooling is still in the early stages, even if it is feature complete : use with caution!. - -> IMPORTANT !! if you have previously used v0.1 , v0.2 had a breaking change, please see [this](#regenerate-ui-values) section on how to upgrade your data to v0.2.\ -This problem should not be present going forward - -> IMPORTANT !! if you have previously used v0.2 , v0.3 had a breaking change, please see [this](#regenerate-custom-property-values) section on how to upgrade your data to v0.3. - -## Installation: - -* grab the latest release zip file from the releases tab (choose the bevy_components releases !) - - - -* in Blender go to edit => preferences => install - -![blender addon install](./docs/blender_addon_install.png) - -* choose the path where ```bevy_components.zip``` is stored - -![blender addon install](./docs/blender_addon_install2.png) - - -## Configuration & overview - -Before you can use the add-on you need to configure it - -### Bevy side - - - setup [bevy_registry_export](https://crates.io/crates/bevy_registry_export) for your project (see the crate's documentation for that), and compile/run it to get the ```registry.json``` file - -### Blender side - -- Go to the new Bevy Components tab in the 3D view - -![configuration](./docs/configuration.png) - -- click on the button to select your registry.json file (in the "configuration" panel) - -![configuration 2](./docs/configuration2.png) - -- the list of available components will appear - -![configuration 3](./docs/configuration3.png) - - #### registry file polling - - - * by default, the add-on will check for changes in your registry file every second, and refresh the UI accordingly - * you can set the polling frequency or turn it off if you do not want auto-refresh - - ![registry file polling](./docs/registry_polling.png) - - - -## Use - - -### Existing components & custom properties - -* If you already have components defined manualy in Blender inside **custom properties** you will need to define them again using the UI! -* avoid mixing & matching: if you change the values of **custom properties** that also have a component, the custom property will be **overriden** every time -you change the component's value -* you can of course still use non component custom properties as always, this add-on will only impact those that have corresponding Bevy components - -### adding components - -- to add a component, select an object and then select the component from the components list: (the full type information will be displayed as tooltip) - -![components list](./docs/components_list.png) - -- click on the dropdown to get the full list of available components - -![components list](./docs/components_list2.png) - -- you can also filter components by name for convenience - -![filter components](./docs/filter_components.png) - - -- add a component by clicking on the "add component" button once you have selected your desired component - - it will appear in the component list for that object - -![add component](./docs/add_component.png) - -### edit components - -- to edit a component's value just use the UI: - -![edit component](./docs/edit_component.png) - -it will automatically update the value of the corresponding custom property - -![edit component](./docs/edit_component2.png) - -### Create components from custom properties - -- IF you have a valid component type and the correct corresponding RON string in the custom_property value (this button will not appear if not), this add-on can automatically -generate the corresponding component for you: - -- Fill/check your custom property (here for Aabb) - -![generate_components 2](./docs/generate_components2.png) - -- click on the button - -![generate_components](./docs/generate_components.png) - --voila ! - -![generate_components 3](./docs/generate_components3.png) - - -### copy & pasting - -- you can also copy & paste components between objects - -- click on the "copy component button" of the component you want to copy - -![copy component](./docs/copy_component.png) - -- then select the object you want to copy the component (& its value) to, and click on the paste button. - -It will add the component to the select object - -![paste component](./docs/paste_component.png) - -> if the target object already has the same component, its values will be overwritten - - -## Additional components UI features - -- for large/ complex components you can toggle the details of that component: - -![toggle details](./docs/toggle_details.png) - - -## Supported components - -- normally (minus any bugs, please report those!) all components using **registered** types should be useable and editable -- this includes (non exhaustive list): - * enums (even complex ones !) - - ![enums](./docs/enums.png) - - ![enums](./docs/enums2.png) - - - * complex structs, with various types of fields (including nested ones) - - ![complex](./docs/complex_components2.png) - - * lists/ vecs (here a vec of tuples) - - ![lists](./docs/vecs_lists.png) - - * etc ! - -## Unregistered types & error handling - -- non registered types can be viewed in this panel : (can be practical to see if you have any missing registrations too!) - - ![unregistered types](./docs/unregistered_types.png) - -- if you have a component made up of unregistered structs/enums etc, you will get visual feedback & the component will be deactivated - - ![invalid component](./docs/invalid_components.png) - - > see [here](#invalidunregistered-type-renaming--conversion) for ways to convert invalid / unregistered components to other types. - - -- if you are encountering this type of view: don't panic your component data is not gone ! It just means you need to reload the registry data by clicking on the relevant button - - ![missing registry data](./docs/missing_registry_data.png) - - - -## Advanced Tools - -In this section you will find various additional more advanced tooling - -### Invalid/unregistered type renaming / conversion - -If you have components that are - * invalid : ie some error was diagnosed - * unregistered: a custom property is present on the object, but there is no matching type in the registry - -Here you will get an overview, of ALL invalid and unregistered components in your Blender project, so you can find them, rename/convert them, -or delete them, also in bulk - -![component rename overview](./docs/component_rename_overview2.png) - -* you can click on the button to select the object in your outliner (this also works across scenes, so you will be taken to the scene where the -given object is located) - -![update custom properties](./docs/component_rename_object_select.png) - - -#### Single object component renaming/ conversion - - - to rename/convert a single component for a single object: - - * go to the row of the object you want to convert the component of - * in the dropdown menu, choose the target component - * click on the button with the magic wand to convert the component - - ![single rename](./docs/component_rename_single.png) - - > the tool will attempt to automatically convert the source component, including the field names/values, if the target component has the same ones - If it fails to do the conversion, you will get an error message, and you will either have to change the custom property yourself, or you can simply - change the values in the UI, which will automatically generate the custom property value - - - to delete a single component for a single object: - - * go to the row of the object you want to remove the component from - * click on the button with the "x" to remove the component - - ![single delete](./docs/component_remove_single.png) - -#### Bulk component renaming/ conversion - - - use this method if you want to convert ALL components of a given type of ALL objects - - * click on this button to pick your source component - - ![bulk convert remove](./docs/component_rename_remove_bulk.png) - - * for conversion: in the dropdown menu, choose the target component & click apply to convert all matching components - * for deletion: clic on the "x" to remove all matching components - - ![bulk convert remove](./docs/component_rename_remove_bulk2.png) - - - ### For conversion between custom properties & components & vice-versa - - #### regenerate custom property values - - - "update custom properties of current object" : will go over **all components** that you have defined for the **currently selected object**, and re-generate the - - corresponding custom property values - - ![update custom properties](./docs/other_options.png) - - - - "update custom properties of ALL objects" : same as above but it will do so for the **ALL objects in your blend file** (so can be slow!), and re-generate the - - corresponding custom property values - - ![update custom properties for all](./docs/other_options2.png) - - > IMPORTANT !! use this if you have previously used v0.1 or v0.2 , as v0.3 had a breaking change, that makes it **necessary** to use this **once** to upgrade components data - You should also re-export your gltf files , otherwise you might run into issues - - - #### regenerate component/ UI values - - - since v0.2, you have the option to regenerate (for the selected object or all objects, as above) to regenerate your UI values from the custom property values - - ![update UI FROM custom properties](./docs/update_ui_from_custom_properties.png) - - > IMPORTANT !! use this if you have previously used v0.1 , as v0.2 had a breaking change, that makes it **necessary** to use this **once** to upgrade the UI data - - - -> Note: the legacy mode support has been removed since version - - -## Examples - -you can find an example [here](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_registry_export/) - -## Known issues & limitations: - -* **Range** data (ie ```Range``` etc) are not handled at this time (issue seems to be on the Bevy side) -* **Entity** structs are always set to 0 (setting entity values on the Blender side at this time does not make much sense anyway) - -## License - -This tool, 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) \ No newline at end of file diff --git a/tools/blenvy/TODO_auto_export.md b/tools/blenvy/TODO_auto_export.md deleted file mode 100644 index ebfda0a..0000000 --- a/tools/blenvy/TODO_auto_export.md +++ /dev/null @@ -1,69 +0,0 @@ -- investigate remove_blueprints_list_from_main_scene (could be a case of changes to bpy.data not being applied immediatly) -- investigate clearing of changed_objects_per_scene -- it seems bevy_components does not trigger updates -- undo redo is ignored: ie save, do something, undo it, you still get changes - - -- [ ] serialize scene - - [ ] for collection instances: - * [ ] blueprints export should also take the split/embed mode into account: if a nested collection changes AND embed is active, its container collection should also be exported - * [ ] level exports should do the same - - [ ] add tests for the above - - [ ] look into caching for serialize scene - - [ ] replace field name based logic with type base logic - -- [ ] to make things easier overall we need a mapping of Blueprints/Collections to - - [x] their instances - - [x] their objects/sub collections instances etc - - [ ] a mapping of objects to the blueprints they belong to -- [ ] things to alter/remove using the new & improved Blueprints/collections scanning and mapping - - [x] get_sub_collections => remove , but rewrite how BlueprintsList are generated - - [x] get_used_collections => remove , but rewrite how BlueprintsList are generated - - [x] get_exportable_collections => remove , but replace with new function to get exportable blueprints - - [x] get_collections_per_scene - - [x] get_collections_in_library - - [ ] traverse_tree => keep, used - - [x] find_layer_collection_recursive => remove, unused - - [ ] recurLayerCollection => unclear, analyse - - [x] find_collection_ascendant_target_collection => remove, double check - - [x] set_active_collection => keep, used - - [x] get_source_scene => remove, unused - - [x] assets_list["BlueprintsList"] - BLUEPRINTS LIST {'Blueprint1': [], 'Blueprint6_animated': [], 'Blueprint4_nested': ['Blueprint3'], 'Blueprint3': [], 'Blueprint7_hierarchy': [], 'External_blueprint': [], 'External_blueprint2': ['External_blueprint3'], 'External_blueprint3': [], 'Blueprint8_animated_no_bones': []} - - [x] internal_collections => replace with "internal_collections" or "local_collections" - -- [x] fix COMBINE MODE passed as int instead of enum value - => comes from our custom logic for add_on prefs -- [ ] double check compares to "None" values - -- [ ] add tests for relative/absolute paths - -- [x] move all things that alter data "permanently" to pre-save - - [x] lighting/ scene components injection - - [x] blueprintNames ? - - [x] or more simple: just remove them after save as we do for others: lighting_components - - - [ ] if we want the blueprintsList / future paths of blueprints to be present inside external assets, we are going to need to keep them around, ie: inject them in pre-save & not remove them - -- [ ] update cleanup_materials - -- [x] remove legacy mode - - [x] from auto_export - - [x] from rust code - - [x] from examples - - [x] added notes & workaround information in docs - -- [ ] remove bulk of tracker related code -- [ ] clean up -- [x] split up change detection in settings to its own panel - - - - -Change storage of 'blueprint' assets : (from BlueprintsList) - - store at the SCENE level: a list/map of assets - - asset name + asset path - - the asset PATH is determined by the export output folder parameters - - make asset storage generic enough to allow adding additional asset types - - get inspired by bevy_asset_loader ? - diff --git a/tools/blenvy/add_ons/auto_export/__init__.py b/tools/blenvy/add_ons/auto_export/__init__.py index b82dc75..96f0824 100644 --- a/tools/blenvy/add_ons/auto_export/__init__.py +++ b/tools/blenvy/add_ons/auto_export/__init__.py @@ -1,5 +1,6 @@ import os import json +import pathlib import bpy from blenvy.settings import generate_complete_settings_dict from io_scene_gltf2 import ExportGLTF2_Base @@ -9,6 +10,11 @@ def cleanup_file(): gltf_filepath = bpy.context.window_manager.auto_export_tracker.dummy_file_path if os.path.exists(gltf_filepath): os.remove(gltf_filepath) + # in case of seperate gltf/bin files, also remove bin file + if gltf_filepath.endswith('gltf'): + bin_path = os.path.join(os.path.dirname(gltf_filepath), pathlib.Path(gltf_filepath).stem + ".bin") + if os.path.exists(bin_path): + os.remove(bin_path) return None else: return 1.0 diff --git a/tools/blenvy/docs/auto_export/blender_addon_install.png b/tools/blenvy/docs/blender_addon_install.png similarity index 100% rename from tools/blenvy/docs/auto_export/blender_addon_install.png rename to tools/blenvy/docs/blender_addon_install.png diff --git a/tools/blenvy/README_auto_export.md b/tools/blenvy/old.md similarity index 60% rename from tools/blenvy/README_auto_export.md rename to tools/blenvy/old.md index 179dcbd..0d63475 100644 --- a/tools/blenvy/README_auto_export.md +++ b/tools/blenvy/old.md @@ -1,35 +1,3 @@ -# gltf_auto_export - -This [Blender addon](./) -- automatically exports your level/world from Blender to gltf whenever you save your Blend file. -- in Blueprints mode (highly recommended !) : - - supports automatic exports of used collections as [Gltf blueprints](../../crates/bevy_gltf_blueprints/README.md) - - supports any number of main/level scenes - - Blender scenes where you define your levels, and all collection instances are replaced with "pointers" to other gltf files (all automatic) - - supports any number of library scenes - - Blender scenes where you define the assets that you use in your levels, in the form of collections - - automatic export of **changed** objects & collections only ! a sort of "incremental export", where only the changed collections (if in use) - get exported when you save your blend file - - -## Installation: - - -* grab the latest release zip file - -![blender addon install](./docs/blender_addon_install_zip.png) - - -* in Blender go to edit => preferences => install - -![blender addon install](./docs/blender_addon_install.png) - -* choose the path where ```gltf_auto_export.zip``` is stored - -![blender addon install](./docs/blender_addon_install2.png) - - - ## Usage: @@ -172,7 +140,6 @@ To maximise reuse of meshes/components etc, you can also nest ***collections ins ![instance combine mode](./docs/blender_addon_use4.png) - - To make things clearer: ![nested-blueprints](./docs/nested_blueprints.png) @@ -199,79 +166,141 @@ To maximise reuse of meshes/components etc, you can also nest ***collections ins TLDR: smaller, more reuseable blueprints which can share sub-parts with other entities ! -### Materials - -You can enable this option to automatically generate a **material library** file that combines all the materials in use in your blueprints. - -![material_library](./docs/blender_addon_materials2.png) - -Since each blueprint is normally a completely independant gltf file, without this option, if you have a material with a large texture for example, -**ALL** of your blueprints using that material will embed that large texture, leading to **significant bloat & memory use**. -- When this option is enabled, you get a single material library per Blender project, and a **MaterialInfo** component is inserted into each object using a material. -- The correct material will then be inserted on the Bevy side (that loads any number of material libraries that you need) into the correct mesh (see the configuration -options in **bevy_gltf_blueprints** for more information on that) -- Only one material per object is supported at this stage, ie the last material slot's material is the one that is going to be used - -![material_library](./docs/blender_addon_materials.png) - -TLDR: Use this option to make sure that each blueprint file does not contain a copy of the same materials -### Multiple blend file workflow -If you want to use multiple blend files, use Blender's asset library etc, we got you coverred too ! -There are only a few things to keep in mind +### Create components from custom properties -#### Assets/library/blueprints files -- mark your library scenes as specified above, but **do NOT** specify a **main** scene -- mark any collection in your scenes as "assets" (more convenient) or add the "AutoExport" custom property to the collection -- choose "split" for the combine mode (as you want your gltf blueprints to be saved for external use) -- do your Blender things as normal -- anytime you save your file, it will automatically export any relevant collections/blueprints -- (optional) activate the **material library** option, so you only have one set of material per asset library (recomended) +- IF you have a valid component type and the correct corresponding RON string in the custom_property value (this button will not appear if not), this add-on can automatically +generate the corresponding component for you: -#### Level/world files -- mark your main scenes as specified above, but **do NOT** specify a **library** scene -- configure your asset libraries as you would usually do , I recomend using the "link" mode so that any changes to asset files are reflected correctly -- drag & drop any assets from the blueprints library (as you would normally do in Blender as well) -- choose "split" for the combine mode (as you want your gltf blueprints to be external usually & use the gltf files generated from your assets library) -- do your Blender things as normal -- anytime you save your file, it will automatically export your level(s) +- Fill/check your custom property (here for Aabb) + +![generate_components 2](./docs/generate_components2.png) + +- click on the button + +![generate_components](./docs/generate_components.png) + +-voila ! + +![generate_components 3](./docs/generate_components3.png) -Take a look at the [relevant](../../examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/) example for more [details](../../examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/art/) -### Internal Process overview - -This is the internal logic of the export process with blueprints (simplified) - -![process](./docs/process.svg) - -ie this is an example scene... - -![](./docs/workflow_original.jpg) - -and what actually gets exported for the main scene/world/level - -![](./docs/workflow_empties.jpg) - -all collections instances replaced with empties, and all those collections exported to gltf files as seen above -## Development -- since the code has now been split up into multiple modules, to make your life easier, I highly recomend (if you are using vscode like me) to use -[this](https://marketplace.visualstudio.com/items?itemName=JacquesLucke.blender-development) excellent extension , works easilly and fast , even for the latest -versions of Blender (v4.0 as of this writing) -- this [article](https://polynook.com/learn/set-up-blender-addon-development-environment-in-windows) might also help out -(easy enough to get it working on linux too) +## Use -## License -This tool, all its code, contents & assets is Dual-licensed under either of +### Existing components & custom properties + +* If you already have components defined manualy in Blender inside **custom properties** you will need to define them again using the UI! +* avoid mixing & matching: if you change the values of **custom properties** that also have a component, the custom property will be **overriden** every time +you change the component's value +* you can of course still use non component custom properties as always, this add-on will only impact those that have corresponding Bevy components + + + + + + + + + +## Advanced Tools + +In this section you will find various additional more advanced tooling + +### Invalid/unregistered type renaming / conversion + +If you have components that are + * invalid : ie some error was diagnosed + * unregistered: a custom property is present on the object, but there is no matching type in the registry + +Here you will get an overview, of ALL invalid and unregistered components in your Blender project, so you can find them, rename/convert them, +or delete them, also in bulk + +![component rename overview](./docs/component_rename_overview2.png) + +* you can click on the button to select the object in your outliner (this also works across scenes, so you will be taken to the scene where the +given object is located) + +![update custom properties](./docs/component_rename_object_select.png) + + +#### Single object component renaming/ conversion + + - to rename/convert a single component for a single object: + + * go to the row of the object you want to convert the component of + * in the dropdown menu, choose the target component + * click on the button with the magic wand to convert the component + + ![single rename](./docs/component_rename_single.png) + + > the tool will attempt to automatically convert the source component, including the field names/values, if the target component has the same ones + If it fails to do the conversion, you will get an error message, and you will either have to change the custom property yourself, or you can simply + change the values in the UI, which will automatically generate the custom property value + + - to delete a single component for a single object: + + * go to the row of the object you want to remove the component from + * click on the button with the "x" to remove the component + + ![single delete](./docs/component_remove_single.png) + +#### Bulk component renaming/ conversion + + - use this method if you want to convert ALL components of a given type of ALL objects + + * click on this button to pick your source component + + ![bulk convert remove](./docs/component_rename_remove_bulk.png) + + * for conversion: in the dropdown menu, choose the target component & click apply to convert all matching components + * for deletion: clic on the "x" to remove all matching components + + ![bulk convert remove](./docs/component_rename_remove_bulk2.png) + + + ### For conversion between custom properties & components & vice-versa + + #### regenerate custom property values + + - "update custom properties of current object" : will go over **all components** that you have defined for the **currently selected object**, and re-generate the + + corresponding custom property values + + ![update custom properties](./docs/other_options.png) + + + - "update custom properties of ALL objects" : same as above but it will do so for the **ALL objects in your blend file** (so can be slow!), and re-generate the + + corresponding custom property values + + ![update custom properties for all](./docs/other_options2.png) + + > IMPORTANT !! use this if you have previously used v0.1 or v0.2 , as v0.3 had a breaking change, that makes it **necessary** to use this **once** to upgrade components data + You should also re-export your gltf files , otherwise you might run into issues + + + #### regenerate component/ UI values + + - since v0.2, you have the option to regenerate (for the selected object or all objects, as above) to regenerate your UI values from the custom property values + + ![update UI FROM custom properties](./docs/update_ui_from_custom_properties.png) + + > IMPORTANT !! use this if you have previously used v0.1 , as v0.2 had a breaking change, that makes it **necessary** to use this **once** to upgrade the UI data + + + + +## Examples + +you can find an example [here](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_registry_export/) -- 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) \ No newline at end of file diff --git a/tools/internal_generate_release_zips.py b/tools/internal_generate_release_zips.py index f14f6a4..807de8c 100644 --- a/tools/internal_generate_release_zips.py +++ b/tools/internal_generate_release_zips.py @@ -21,8 +21,6 @@ def zipdir(path, ziph): os.path.relpath(os.path.join(root, file), os.path.join(path, '..'))) -with zipfile.ZipFile("bevy_components.zip", mode="w", compression=zipfile.ZIP_DEFLATED) as archive: - zipdir('./bevy_components', archive) +with zipfile.ZipFile("blenvy.zip", mode="w", compression=zipfile.ZIP_DEFLATED) as archive: + zipdir('./blenvy', archive) -with zipfile.ZipFile("gltf_auto_export.zip", mode="w", compression=zipfile.ZIP_DEFLATED) as archive: - zipdir('./gltf_auto_export', archive) \ No newline at end of file