diff --git a/Cargo.toml b/Cargo.toml index 1b313cb..32a5793 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,22 +1,12 @@ [workspace] members = [ - "crates/bevy_gltf_components", - "crates/bevy_gltf_blueprints", - "crates/bevy_gltf_save_load", - "crates/bevy_registry_export", - - "examples/common/", - - "examples/bevy_gltf_components/basic/", - "examples/bevy_gltf_blueprints/basic/", - "examples/bevy_gltf_blueprints/basic_xpbd_physics/", - "examples/bevy_gltf_blueprints/animation/", - "examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles", - "examples/bevy_gltf_blueprints/materials/", - "examples/bevy_gltf_save_load/basic/", - "examples/bevy_registry_export/basic", - - "testing/bevy_registry_export/basic" + "crates/*", + "examples/common", + "examples/bevy_gltf_components/*", + "examples/bevy_gltf_blueprints/*", + "examples/bevy_gltf_save_load/*", + "examples/bevy_registry_export/*", + "testing/bevy_registry_export/*", ] resolver = "2" @@ -30,13 +20,14 @@ match_same_arms = "warn" semicolon_if_nothing_returned = "warn" #### --------------------Dev/ debug------------------------------- +# Enable a small amount of optimization in debug mode +[profile.dev] +opt-level = 1 + # Enable high optimizations for dependencies (incl. Bevy), but not for our code: [profile.dev.package."*"] opt-level = 3 -[profile.dev.package.bevy] -features = ["dynamic"] - #### --------------------Production/ release------------------------------- [profile.release] strip = "debuginfo" diff --git a/crates/bevy_gltf_blueprints/Cargo.toml b/crates/bevy_gltf_blueprints/Cargo.toml index b70b40e..ecbb162 100644 --- a/crates/bevy_gltf_blueprints/Cargo.toml +++ b/crates/bevy_gltf_blueprints/Cargo.toml @@ -13,10 +13,9 @@ license = "MIT OR Apache-2.0" [lints] workspace = true -[dev-dependencies] +[dependencies] +bevy_gltf_components = { version = "0.4", path = "../bevy_gltf_components" } bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf", "bevy_animation", "animation"] } -[dependencies] -#bevy_gltf_components = "0.3" -bevy_gltf_components = { path = "../bevy_gltf_components" } -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf", "bevy_animation", "animation"] } +[dev-dependencies] +bevy = { version = "0.13", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_gltf_components/Cargo.toml b/crates/bevy_gltf_components/Cargo.toml index 33c73d9..8bf3725 100644 --- a/crates/bevy_gltf_components/Cargo.toml +++ b/crates/bevy_gltf_components/Cargo.toml @@ -13,10 +13,10 @@ license = "MIT OR Apache-2.0" [lints] workspace = true -[dev-dependencies] -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } - [dependencies] bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } serde = "1.0.188" ron = "0.8.1" + +[dev-dependencies] +bevy = { version = "0.13", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_gltf_components/src/blender_settings.rs b/crates/bevy_gltf_components/src/blender_settings.rs new file mode 100644 index 0000000..fe1b83c --- /dev/null +++ b/crates/bevy_gltf_components/src/blender_settings.rs @@ -0,0 +1,8 @@ +use bevy::prelude::*; + +mod lighting; +pub use lighting::*; + +pub(crate) fn plugin(app: &mut App) { + app.add_plugins(lighting::plugin); +} diff --git a/crates/bevy_gltf_components/src/blender_settings/lighting.rs b/crates/bevy_gltf_components/src/blender_settings/lighting.rs new file mode 100644 index 0000000..8787ccd --- /dev/null +++ b/crates/bevy_gltf_components/src/blender_settings/lighting.rs @@ -0,0 +1,69 @@ +use bevy::pbr::DirectionalLightShadowMap; +use bevy::prelude::*; + +pub(crate) fn plugin(app: &mut App) { + app.register_type::() + .register_type::() + .add_systems( + Update, + (process_lights, process_shadowmap, process_background_shader), + ); +} + +/// The background color as described by Blender's [background shader](https://docs.blender.org/manual/en/latest/render/shader_nodes/shader/background.html). +#[derive(Component, Reflect, Default, Debug, PartialEq, Clone)] +#[reflect(Component)] +#[non_exhaustive] +pub struct BlenderBackgroundShader { + pub color: Color, + pub strength: f32, +} + +/// The settings used by EEVEE's [shadow rendering](https://docs.blender.org/manual/en/latest/render/eevee/render_settings/shadows.html). +#[derive(Component, Reflect, Default, Debug, PartialEq, Clone)] +#[reflect(Component)] +#[non_exhaustive] +pub struct BlenderShadowSettings { + pub cascade_size: usize, +} + +fn process_lights( + mut directional_lights: Query<&mut DirectionalLight, Added>, + mut spot_lights: Query<&mut SpotLight, Added>, + mut point_lights: Query<&mut PointLight, Added>, +) { + for mut light in directional_lights.iter_mut() { + light.shadows_enabled = true; + } + for mut light in spot_lights.iter_mut() { + light.shadows_enabled = true; + } + + for mut light in point_lights.iter_mut() { + light.shadows_enabled = true; + } +} + +fn process_shadowmap( + shadowmaps: Query<&BlenderShadowSettings, Added>, + mut commands: Commands, +) { + for shadowmap in shadowmaps.iter() { + commands.insert_resource(DirectionalLightShadowMap { + size: shadowmap.cascade_size, + }); + } +} + +fn process_background_shader( + background_shaders: Query<&BlenderBackgroundShader, Added>, + mut commands: Commands, +) { + for background_shader in background_shaders.iter() { + commands.insert_resource(AmbientLight { + color: background_shader.color, + // Just a guess, see + brightness: background_shader.strength * 400.0, + }); + } +} diff --git a/crates/bevy_gltf_components/src/lib.rs b/crates/bevy_gltf_components/src/lib.rs index 3cd2b1c..6f5aa78 100644 --- a/crates/bevy_gltf_components/src/lib.rs +++ b/crates/bevy_gltf_components/src/lib.rs @@ -7,6 +7,8 @@ pub use ronstring_to_reflect_component::*; pub mod process_gltfs; pub use process_gltfs::*; +pub mod blender_settings; + use bevy::{ ecs::{component::Component, reflect::ReflectComponent, system::Resource}, prelude::{App, IntoSystemConfigs, Plugin, SystemSet, Update}, @@ -74,7 +76,8 @@ impl Default for ComponentsFromGltfPlugin { impl Plugin for ComponentsFromGltfPlugin { fn build(&self, app: &mut App) { - app.register_type::() + app.add_plugins(blender_settings::plugin) + .register_type::() .insert_resource(GltfComponentsConfig { legacy_mode: self.legacy_mode, }) diff --git a/crates/bevy_gltf_save_load/Cargo.toml b/crates/bevy_gltf_save_load/Cargo.toml index 06d9ff8..b991287 100644 --- a/crates/bevy_gltf_save_load/Cargo.toml +++ b/crates/bevy_gltf_save_load/Cargo.toml @@ -13,10 +13,9 @@ license = "MIT OR Apache-2.0" [lints] workspace = true -[dev-dependencies] -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } - [dependencies] bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } -#bevy_gltf_blueprints = "0.7" -bevy_gltf_blueprints = { path = "../bevy_gltf_blueprints" } +bevy_gltf_blueprints = { version = "0.8", path = "../bevy_gltf_blueprints" } + +[dev-dependencies] +bevy = { version = "0.13", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_registry_export/Cargo.toml b/crates/bevy_registry_export/Cargo.toml index 2ffe820..1e9071d 100644 --- a/crates/bevy_registry_export/Cargo.toml +++ b/crates/bevy_registry_export/Cargo.toml @@ -10,12 +10,12 @@ categories = ["game-development"] edition = "2021" license = "MIT OR Apache-2.0" -[dev-dependencies] -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } - [dependencies] bevy = { version = "0.13", default-features = false, features = ["bevy_scene"] } bevy_reflect = { version = "0.13", default-features = false } bevy_app = { version = "0.13", default-features = false, features = ["bevy_reflect"] } bevy_ecs = { version = "0.13", default-features = false, features = ["bevy_reflect"] } -serde_json = "1.0.108" \ No newline at end of file +serde_json = "1.0.108" + +[dev-dependencies] +bevy = { version = "0.13", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_registry_export/src/export_types.rs b/crates/bevy_registry_export/src/export_types.rs index 1154682..8a06ebf 100644 --- a/crates/bevy_registry_export/src/export_types.rs +++ b/crates/bevy_registry_export/src/export_types.rs @@ -17,7 +17,7 @@ pub fn export_types(world: &mut World) { let asset_root = world.resource::(); let registry_save_path = Path::join(&asset_root.0, &config.save_path); - println!("registry_save_path {:?}", registry_save_path); + println!("registry_save_path {}", registry_save_path.display()); let writer = File::create(registry_save_path).expect("should have created schema file"); let types = world.resource_mut::(); diff --git a/examples/bevy_gltf_blueprints/animation/Cargo.toml b/examples/bevy_gltf_blueprints/animation/Cargo.toml index 15cd5b1..65cfcdd 100644 --- a/examples/bevy_gltf_blueprints/animation/Cargo.toml +++ b/examples/bevy_gltf_blueprints/animation/Cargo.toml @@ -5,8 +5,8 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common = { path = "../../common" } -bevy_rapier3d = { version = "0.25.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" diff --git a/examples/bevy_gltf_blueprints/basic/Cargo.toml b/examples/bevy_gltf_blueprints/basic/Cargo.toml index 43cfefe..1458f14 100644 --- a/examples/bevy_gltf_blueprints/basic/Cargo.toml +++ b/examples/bevy_gltf_blueprints/basic/Cargo.toml @@ -5,8 +5,8 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common = { path = "../../common" } -bevy_rapier3d = { version = "0.25.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" diff --git a/examples/bevy_gltf_blueprints/basic/assets/models/World.glb b/examples/bevy_gltf_blueprints/basic/assets/models/World.glb index 642b155..d9a0e08 100644 Binary files a/examples/bevy_gltf_blueprints/basic/assets/models/World.glb and b/examples/bevy_gltf_blueprints/basic/assets/models/World.glb differ diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml b/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml index f1280c6..28c2596 100644 --- a/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml +++ b/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml @@ -5,8 +5,8 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } -bevy_gltf_worlflow_examples_common = { path = "../../common" , default-features = false, features = ["blueprints", "physics_xpbd"]} +bevy_gltf_worlflow_examples_common = { path = "../../common", default-features = false, features = ["blueprints", "physics_xpbd"] } bevy_xpbd_3d = "0.4" rand = "0.8.5" \ No newline at end of file diff --git a/examples/bevy_gltf_blueprints/materials/Cargo.toml b/examples/bevy_gltf_blueprints/materials/Cargo.toml index b758d07..332938f 100644 --- a/examples/bevy_gltf_blueprints/materials/Cargo.toml +++ b/examples/bevy_gltf_blueprints/materials/Cargo.toml @@ -5,8 +5,8 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common = { path = "../../common" } -bevy_rapier3d = { version = "0.25.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" \ No newline at end of file diff --git a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/Cargo.toml b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/Cargo.toml index d6618ce..9cddedd 100644 --- a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/Cargo.toml +++ b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/Cargo.toml @@ -5,8 +5,8 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common = { path = "../../common" } -bevy_rapier3d = { version = "0.25.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" \ No newline at end of file diff --git a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level1.glb b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level1.glb index 545a066..ce2cc13 100644 Binary files a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level1.glb and b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level1.glb differ diff --git a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level2.glb b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level2.glb index 3dfb689..898d900 100644 Binary files a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level2.glb and b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/Level2.glb differ diff --git a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/StartLevel.glb b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/StartLevel.glb index 922eb90..34cbfec 100644 Binary files a/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/StartLevel.glb and b/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles/assets/models/StartLevel.glb differ diff --git a/examples/bevy_gltf_components/basic/Cargo.toml b/examples/bevy_gltf_components/basic/Cargo.toml index 03830cc..504bd2e 100644 --- a/examples/bevy_gltf_components/basic/Cargo.toml +++ b/examples/bevy_gltf_components/basic/Cargo.toml @@ -5,6 +5,6 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_components = { path = "../../../crates/bevy_gltf_components" } bevy_gltf_worlflow_examples_common = { path = "../../common" } diff --git a/examples/bevy_gltf_save_load/basic/Cargo.toml b/examples/bevy_gltf_save_load/basic/Cargo.toml index a06a35f..ae6422b 100644 --- a/examples/bevy_gltf_save_load/basic/Cargo.toml +++ b/examples/bevy_gltf_save_load/basic/Cargo.toml @@ -5,13 +5,12 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" -#bevy_gltf_blueprints = "0.7" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_save_load = { path = "../../../crates/bevy_gltf_save_load" } bevy_gltf_worlflow_examples_common = { path = "../../common" } -serde_json="1.0.108" -serde="1.0.193" -bevy_rapier3d = { version = "0.25.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } +serde_json = "1.0.108" +serde = "1.0.193" +bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" \ No newline at end of file diff --git a/examples/bevy_registry_export/basic/Cargo.toml b/examples/bevy_registry_export/basic/Cargo.toml index e84906c..fef7651 100644 --- a/examples/bevy_registry_export/basic/Cargo.toml +++ b/examples/bevy_registry_export/basic/Cargo.toml @@ -5,9 +5,9 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.13" +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 = { path = "../../common" } -bevy_rapier3d = { version = "0.25.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } -rand = "0.8.5" \ No newline at end of file +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/assets/registry.json b/examples/bevy_registry_export/basic/assets/registry.json index d65c98d..e5f084c 100644 --- a/examples/bevy_registry_export/basic/assets/registry.json +++ b/examples/bevy_registry_export/basic/assets/registry.json @@ -3455,6 +3455,50 @@ "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::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, @@ -3512,7 +3556,7 @@ "type": "array", "typeInfo": "TupleStruct" }, - "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::AmbientLightSettings": { + "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderBackgroundShader": { "additionalProperties": false, "isComponent": true, "isResource": false, @@ -3532,12 +3576,12 @@ "color", "brightness" ], - "short_name": "AmbientLightSettings", - "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::AmbientLightSettings", + "short_name": "BlenderBackgroundShader", + "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderBackgroundShader", "type": "object", "typeInfo": "Struct" }, - "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::ShadowmapSettings": { + "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderShadowSettings": { "additionalProperties": false, "isComponent": true, "isResource": false, @@ -3551,8 +3595,8 @@ "required": [ "size" ], - "short_name": "ShadowmapSettings", - "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::ShadowmapSettings", + "short_name": "BlenderShadowSettings", + "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderShadowSettings", "type": "object", "typeInfo": "Struct" }, diff --git a/examples/common/Cargo.toml b/examples/common/Cargo.toml index 08cfefd..2951869 100644 --- a/examples/common/Cargo.toml +++ b/examples/common/Cargo.toml @@ -5,17 +5,17 @@ edition = "2021" license = "MIT OR Apache-2.0" [features] -blueprints=["dep:bevy_gltf_blueprints"] +blueprints = ["dep:bevy_gltf_blueprints"] physics_rapier = ["dep:bevy_rapier3d"] physics_xpbd = ["dep:bevy_xpbd_3d"] default = ["blueprints", "physics_rapier"] [dependencies] -bevy="0.13" +bevy = { version = "0.13", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../crates/bevy_gltf_blueprints", optional = true } -bevy_rapier3d = { version = "0.25", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] , optional = true } +bevy_rapier3d = { version = "0.25", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"], optional = true } bevy_xpbd_3d = { version = "0.4", optional = true } -bevy_asset_loader = { version = "0.20", features = ["standard_dynamic_assets" ]} +bevy_asset_loader = { version = "0.20", features = ["standard_dynamic_assets"] } bevy_editor_pls = { version = "0.8" } rand = "0.8.5" diff --git a/examples/common/src/core/lighting/lighting_replace_proxies.rs b/examples/common/src/core/lighting/lighting_replace_proxies.rs index 1e510d3..36c5fc4 100644 --- a/examples/common/src/core/lighting/lighting_replace_proxies.rs +++ b/examples/common/src/core/lighting/lighting_replace_proxies.rs @@ -4,14 +4,14 @@ use bevy::pbr::{CascadeShadowConfig, CascadeShadowConfigBuilder, DirectionalLigh #[derive(Component, Reflect, Default, Debug)] #[reflect(Component)] -pub struct AmbientLightSettings { +pub struct BlenderBackgroundShader { pub color: Color, pub brightness: f32, } #[derive(Component, Reflect, Default, Debug)] #[reflect(Component)] -pub struct ShadowmapSettings { +pub struct BlenderShadowSettings { pub size: usize, } @@ -20,8 +20,8 @@ pub fn lighting_replace_proxies( mut added_spotlights: Query<&mut SpotLight, Added>, mut added_pointlights: Query<&mut PointLight, Added>, - added_ambient_proxies: Query<&AmbientLightSettings, Added>, - added_shadowmap_settings: Query<&ShadowmapSettings, Added>, + added_ambient_proxies: Query<&BlenderBackgroundShader, Added>, + added_shadowmap_settings: Query<&BlenderShadowSettings, Added>, mut commands: Commands, ) { diff --git a/examples/common/src/core/lighting/mod.rs b/examples/common/src/core/lighting/mod.rs index 237dafa..87ec4d6 100644 --- a/examples/common/src/core/lighting/mod.rs +++ b/examples/common/src/core/lighting/mod.rs @@ -7,8 +7,8 @@ use bevy::prelude::*; pub struct LightingPlugin; impl Plugin for LightingPlugin { fn build(&self, app: &mut App) { - app.register_type::() - .register_type::() + app.register_type::() + .register_type::() // FIXME: adding these since they are missing .register_type::() .add_systems(PreUpdate, lighting_replace_proxies); diff --git a/rust-toolchain.toml b/rust-toolchain.toml index e5e7c12..195f5da 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = '1.76.0' +channel = 'stable' diff --git a/testing/bevy_registry_export/basic/Cargo.toml b/testing/bevy_registry_export/basic/Cargo.toml index da6df7f..c558286 100644 --- a/testing/bevy_registry_export/basic/Cargo.toml +++ b/testing/bevy_registry_export/basic/Cargo.toml @@ -5,12 +5,12 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy="0.12" +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 = { path = "../../../examples/common" } -bevy_rapier3d = { version = "0.23.0", features = [ "serde-serialize", "debug-render-3d", "enhanced-determinism"] } -bevy_asset_loader = { version = "0.18", features = ["standard_dynamic_assets" ]} -bevy_editor_pls = { version = "0.6" } +bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_asset_loader = { version = "0.20", features = ["standard_dynamic_assets"] } +bevy_editor_pls = { version = "0.8" } rand = "0.8.5" diff --git a/testing/bevy_registry_export/basic/assets/models/World.glb b/testing/bevy_registry_export/basic/assets/models/World.glb index 81caa9d..73f8ec7 100644 Binary files a/testing/bevy_registry_export/basic/assets/models/World.glb and b/testing/bevy_registry_export/basic/assets/models/World.glb differ diff --git a/testing/bevy_registry_export/basic/assets/registry.json b/testing/bevy_registry_export/basic/assets/registry.json index 86a81b7..4820c45 100644 --- a/testing/bevy_registry_export/basic/assets/registry.json +++ b/testing/bevy_registry_export/basic/assets/registry.json @@ -71,6 +71,19 @@ "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, @@ -84,16 +97,16 @@ "type": "array", "typeInfo": "List" }, - "alloc::vec::Vec": { + "alloc::vec::Vec": { "isComponent": false, "isResource": false, "items": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } }, "short_name": "Vec", - "title": "alloc::vec::Vec", + "title": "alloc::vec::Vec", "type": "array", "typeInfo": "List" }, @@ -136,6 +149,32 @@ "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, @@ -192,6 +231,116 @@ "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, @@ -1028,7 +1177,7 @@ "type": "object", "typeInfo": "Enum" }, - "bevy_asset::handle::Handle": { + "bevy_asset::handle::Handle": { "isComponent": true, "isResource": false, "oneOf": [ @@ -1051,7 +1200,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" + "$ref": "#/$defs/bevy_asset::id::AssetId" } } ], @@ -1061,8 +1210,8 @@ "typeInfo": "Tuple" } ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", + "short_name": "Handle", + "title": "bevy_asset::handle::Handle", "type": "object", "typeInfo": "Enum" }, @@ -2116,7 +2265,7 @@ "type": "object", "typeInfo": "Enum" }, - "bevy_asset::id::AssetId": { + "bevy_asset::id::AssetId": { "isComponent": false, "isResource": false, "oneOf": [ @@ -2157,8 +2306,8 @@ "typeInfo": "Struct" } ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", + "short_name": "AssetId", + "title": "bevy_asset::id::AssetId", "type": "object", "typeInfo": "Enum" }, @@ -2208,6 +2357,152 @@ "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_testing::test_components::AComponentWithAnExtremlyExageratedOrMaybeNotButCouldBeNameOrWut": { "additionalProperties": false, "isComponent": true, @@ -2802,52 +3097,6 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_core_pipeline::clear_color::ClearColor": { - "isComponent": false, - "isResource": true, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - ], - "short_name": "ClearColor", - "title": "bevy_core_pipeline::clear_color::ClearColor", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_core_pipeline::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_core_pipeline::clear_color::ClearColorConfig", - "type": "object", - "typeInfo": "Enum" - }, "bevy_core_pipeline::contrast_adaptive_sharpening::ContrastAdaptiveSharpeningSettings": { "additionalProperties": false, "isComponent": true, @@ -2883,16 +3132,8 @@ "additionalProperties": false, "isComponent": true, "isResource": false, - "properties": { - "clear_color": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::clear_color::ClearColorConfig" - } - } - }, - "required": [ - "clear_color" - ], + "properties": {}, + "required": [], "short_name": "Camera2d", "title": "bevy_core_pipeline::core_2d::camera_2d::Camera2d", "type": "object", @@ -2903,11 +3144,6 @@ "isComponent": true, "isResource": false, "properties": { - "clear_color": { - "type": { - "$ref": "#/$defs/bevy_core_pipeline::clear_color::ClearColorConfig" - } - }, "depth_load_op": { "type": { "$ref": "#/$defs/bevy_core_pipeline::core_3d::camera_3d::Camera3dDepthLoadOp" @@ -2930,7 +3166,6 @@ } }, "required": [ - "clear_color", "depth_load_op", "depth_texture_usages", "screen_space_specular_transmission_steps", @@ -2968,6 +3203,36 @@ "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, @@ -2999,6 +3264,17 @@ "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, @@ -3010,6 +3286,17 @@ "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, @@ -3051,11 +3338,71 @@ "type": "string", "typeInfo": "Enum" }, - "bevy_ecs::Entity": { + "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", + "title": "bevy_ecs::entity::Entity", "type": "object", "typeInfo": "Value" }, @@ -3071,7 +3418,7 @@ }, "scale_factor": { "type": { - "$ref": "#/$defs/f64" + "$ref": "#/$defs/f32" } } }, @@ -3083,6 +3430,73 @@ "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, @@ -3173,6 +3587,61 @@ "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::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, @@ -3230,7 +3699,7 @@ "type": "array", "typeInfo": "TupleStruct" }, - "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::AmbientLightSettings": { + "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderBackgroundShader": { "additionalProperties": false, "isComponent": true, "isResource": false, @@ -3250,12 +3719,12 @@ "color", "brightness" ], - "short_name": "AmbientLightSettings", - "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::AmbientLightSettings", + "short_name": "BlenderBackgroundShader", + "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderBackgroundShader", "type": "object", "typeInfo": "Struct" }, - "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::ShadowmapSettings": { + "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderShadowSettings": { "additionalProperties": false, "isComponent": true, "isResource": false, @@ -3269,12 +3738,12 @@ "required": [ "size" ], - "short_name": "ShadowmapSettings", - "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::ShadowmapSettings", + "short_name": "BlenderShadowSettings", + "title": "bevy_gltf_worlflow_examples_common::core::lighting::lighting_replace_proxies::BlenderShadowSettings", "type": "object", "typeInfo": "Struct" }, - "bevy_gltf_worlflow_examples_common::core::physics::physics_replace_proxies::AutoAABBCollider": { + "bevy_gltf_worlflow_examples_common::core::physics_rapier::physics_replace_proxies::AutoAABBCollider": { "isComponent": true, "isResource": false, "oneOf": [ @@ -3283,11 +3752,11 @@ "Capsule" ], "short_name": "AutoAABBCollider", - "title": "bevy_gltf_worlflow_examples_common::core::physics::physics_replace_proxies::AutoAABBCollider", + "title": "bevy_gltf_worlflow_examples_common::core::physics_rapier::physics_replace_proxies::AutoAABBCollider", "type": "string", "typeInfo": "Enum" }, - "bevy_gltf_worlflow_examples_common::core::physics::physics_replace_proxies::Collider": { + "bevy_gltf_worlflow_examples_common::core::physics_rapier::physics_replace_proxies::Collider": { "isComponent": true, "isResource": false, "oneOf": [ @@ -3348,7 +3817,7 @@ } ], "short_name": "Collider", - "title": "bevy_gltf_worlflow_examples_common::core::physics::physics_replace_proxies::Collider", + "title": "bevy_gltf_worlflow_examples_common::core::physics_rapier::physics_replace_proxies::Collider", "type": "object", "typeInfo": "Enum" }, @@ -3381,7 +3850,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/smallvec::SmallVec<[bevy_ecs::Entity; 8]>" + "$ref": "#/$defs/bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>" } } ], @@ -3397,7 +3866,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } ], @@ -3810,177 +4279,1580 @@ "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": [ - "Key1", - "Key2", - "Key3", - "Key4", - "Key5", - "Key6", - "Key7", - "Key8", - "Key9", - "Key0", - "A", - "B", - "C", - "D", - "E", - "F", - "G", - "H", - "I", - "J", - "K", - "L", - "M", - "N", - "O", - "P", - "Q", - "R", - "S", - "T", - "U", - "V", - "W", - "X", - "Y", - "Z", - "Escape", - "F1", - "F2", - "F3", - "F4", - "F5", - "F6", - "F7", - "F8", - "F9", - "F10", - "F11", - "F12", - "F13", - "F14", - "F15", - "F16", - "F17", - "F18", - "F19", - "F20", - "F21", - "F22", - "F23", - "F24", - "Snapshot", - "Scroll", - "Pause", - "Insert", - "Home", - "Delete", - "End", - "PageDown", - "PageUp", - "Left", - "Up", - "Right", - "Down", - "Back", - "Return", - "Space", - "Compose", - "Caret", - "Numlock", - "Numpad0", - "Numpad1", - "Numpad2", - "Numpad3", - "Numpad4", - "Numpad5", - "Numpad6", - "Numpad7", - "Numpad8", - "Numpad9", - "AbntC1", - "AbntC2", - "NumpadAdd", - "Apostrophe", - "Apps", - "Asterisk", - "Plus", - "At", - "Ax", - "Backslash", - "Calculator", - "Capital", - "Colon", - "Comma", - "Convert", - "NumpadDecimal", - "NumpadDivide", - "Equals", - "Grave", - "Kana", - "Kanji", - "AltLeft", - "BracketLeft", - "ControlLeft", - "ShiftLeft", - "SuperLeft", - "Mail", - "MediaSelect", - "MediaStop", - "Minus", - "NumpadMultiply", - "Mute", - "MyComputer", - "NavigateForward", - "NavigateBackward", - "NextTrack", - "NoConvert", - "NumpadComma", - "NumpadEnter", - "NumpadEquals", - "Oem102", - "Period", - "PlayPause", - "Power", - "PrevTrack", - "AltRight", - "BracketRight", - "ControlRight", - "ShiftRight", - "SuperRight", - "Semicolon", - "Slash", - "Sleep", - "Stop", - "NumpadSubtract", - "Sysrq", - "Tab", - "Underline", - "Unlabeled", - "VolumeDown", - "VolumeUp", - "Wake", - "WebBack", - "WebFavorites", - "WebForward", - "WebHome", - "WebRefresh", - "WebSearch", - "WebStop", - "Yen", - "Copy", - "Paste", - "Cut" + { + "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": "string", + "type": "object", "typeInfo": "Enum" }, "bevy_input::keyboard::KeyboardInput": { @@ -3990,12 +5862,12 @@ "properties": { "key_code": { "type": { - "$ref": "#/$defs/core::option::Option" + "$ref": "#/$defs/bevy_input::keyboard::KeyCode" } }, - "scan_code": { + "logical_key": { "type": { - "$ref": "#/$defs/u32" + "$ref": "#/$defs/bevy_input::keyboard::Key" } }, "state": { @@ -4005,12 +5877,13 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, "required": [ - "scan_code", + "key_code", + "logical_key", "state", "window" ], @@ -4019,21 +5892,157 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_input::keyboard::ScanCode": { + "bevy_input::keyboard::NativeKey": { "isComponent": false, "isResource": false, - "items": false, - "prefixItems": [ + "oneOf": [ { - "type": { - "$ref": "#/$defs/u32" - } + "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": "ScanCode", - "title": "bevy_input::keyboard::ScanCode", - "type": "array", - "typeInfo": "TupleStruct" + "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, @@ -4048,6 +6057,12 @@ { "title": "Middle" }, + { + "title": "Back" + }, + { + "title": "Forward" + }, { "items": false, "prefixItems": [ @@ -4085,7 +6100,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -4142,7 +6157,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } }, "x": { @@ -4246,11 +6261,17 @@ "type": { "$ref": "#/$defs/glam::Vec2" } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } } }, "required": [ "phase", "position", + "window", "id" ], "short_name": "TouchInput", @@ -4390,30 +6411,101 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::environment_map::EnvironmentMapLight": { - "additionalProperties": false, + "bevy_pbr::fog::FogFalloff": { "isComponent": false, "isResource": false, - "properties": { - "diffuse_map": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } + "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" }, - "specular_map": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } + { + "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" } - }, - "required": [ - "diffuse_map", - "specular_map" ], - "short_name": "EnvironmentMapLight", - "title": "bevy_pbr::environment_map::EnvironmentMapLight", + "short_name": "FogFalloff", + "title": "bevy_pbr::fog::FogFalloff", "type": "object", - "typeInfo": "Struct" + "typeInfo": "Enum" }, "bevy_pbr::fog::FogSettings": { "additionalProperties": false, @@ -4552,7 +6644,7 @@ "properties": { "cascades": { "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>" } } }, @@ -4941,6 +7033,73 @@ "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, @@ -4957,6 +7116,50 @@ "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, @@ -5037,6 +7240,11 @@ "$ref": "#/$defs/f32" } }, + "lightmap_exposure": { + "type": { + "$ref": "#/$defs/f32" + } + }, "max_parallax_layer_count": { "type": { "$ref": "#/$defs/f32" @@ -5124,6 +7332,7 @@ "parallax_depth_scale", "parallax_mapping_method", "max_parallax_layer_count", + "lightmap_exposure", "opaque_render_method", "deferred_lighting_pass_id" ], @@ -5173,6 +7382,25 @@ "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, @@ -5495,7 +7723,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_utils::HashSet" + "$ref": "#/$defs/bevy_utils::HashSet" } } ], @@ -5671,6 +7899,11 @@ "isComponent": true, "isResource": false, "properties": { + "clear_color": { + "type": { + "$ref": "#/$defs/bevy_render::camera::clear_color::ClearColorConfig" + } + }, "hdr": { "type": { "$ref": "#/$defs/bool" @@ -5701,28 +7934,37 @@ "order", "is_active", "hdr", - "msaa_writeback" + "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, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/alloc::borrow::Cow" - } - } - ], "short_name": "CameraRenderGraph", "title": "bevy_render::camera::camera::CameraRenderGraph", - "type": "array", - "typeInfo": "TupleStruct" + "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, @@ -5807,6 +8049,52 @@ "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, @@ -6298,6 +8586,11 @@ "isComponent": false, "isResource": false, "properties": { + "asset_usage": { + "type": { + "$ref": "#/$defs/bevy_render::render_asset::RenderAssetUsages" + } + }, "indices": { "type": { "$ref": "#/$defs/core::option::Option" @@ -6314,7 +8607,9 @@ } } }, - "required": [], + "required": [ + "asset_usage" + ], "short_name": "Mesh", "title": "bevy_render::mesh::mesh::Mesh", "type": "object", @@ -6332,7 +8627,7 @@ }, "joints": { "type": { - "$ref": "#/$defs/alloc::vec::Vec" + "$ref": "#/$defs/alloc::vec::Vec" } } }, @@ -6679,6 +8974,62 @@ "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, @@ -6727,6 +9078,31 @@ "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, @@ -6736,11 +9112,6 @@ "$ref": "#/$defs/glam::Vec2" } }, - "texture": { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - }, "texture_handles": { "type": { "$ref": "#/$defs/core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>" @@ -6753,60 +9124,48 @@ } }, "required": [ - "texture", "size", "textures" ], - "short_name": "TextureAtlas", - "title": "bevy_sprite::texture_atlas::TextureAtlas", + "short_name": "TextureAtlasLayout", + "title": "bevy_sprite::texture_atlas::TextureAtlasLayout", "type": "object", "typeInfo": "Struct" }, - "bevy_sprite::texture_atlas::TextureAtlasSprite": { + "bevy_sprite::texture_slice::slicer::TextureSlicer": { "additionalProperties": false, - "isComponent": true, + "isComponent": false, "isResource": false, "properties": { - "anchor": { + "border": { "type": { - "$ref": "#/$defs/bevy_sprite::sprite::Anchor" + "$ref": "#/$defs/bevy_sprite::texture_slice::border_rect::BorderRect" } }, - "color": { + "center_scale_mode": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::SliceScaleMode" } }, - "custom_size": { + "max_corner_scale": { "type": { - "$ref": "#/$defs/core::option::Option" + "$ref": "#/$defs/f32" } }, - "flip_x": { + "sides_scale_mode": { "type": { - "$ref": "#/$defs/bool" - } - }, - "flip_y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "index": { - "type": { - "$ref": "#/$defs/usize" + "$ref": "#/$defs/bevy_sprite::texture_slice::slicer::SliceScaleMode" } } }, "required": [ - "color", - "index", - "flip_x", - "flip_y", - "anchor" + "border", + "center_scale_mode", + "sides_scale_mode", + "max_corner_scale" ], - "short_name": "TextureAtlasSprite", - "title": "bevy_sprite::texture_atlas::TextureAtlasSprite", + "short_name": "TextureSlicer", + "title": "bevy_sprite::texture_slice::slicer::TextureSlicer", "type": "object", "typeInfo": "Struct" }, @@ -6867,14 +9226,27 @@ "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": { - "alignment": { + "justify": { "type": { - "$ref": "#/$defs/bevy_text::text::TextAlignment" + "$ref": "#/$defs/bevy_text::text::JustifyText" } }, "linebreak_behavior": { @@ -6890,7 +9262,7 @@ }, "required": [ "sections", - "alignment", + "justify", "linebreak_behavior" ], "short_name": "Text", @@ -6898,19 +9270,6 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_text::text::TextAlignment": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Left", - "Center", - "Right" - ], - "short_name": "TextAlignment", - "title": "bevy_text::text::TextAlignment", - "type": "string", - "typeInfo": "Enum" - }, "bevy_text::text::TextSection": { "additionalProperties": false, "isComponent": false, @@ -7351,6 +9710,43 @@ "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, @@ -7405,7 +9801,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/f64" + "$ref": "#/$defs/f32" } } ], @@ -7414,25 +9810,6 @@ "type": "array", "typeInfo": "TupleStruct" }, - "bevy_ui::camera_config::UiCameraConfig": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "show_ui": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "show_ui" - ], - "short_name": "UiCameraConfig", - "title": "bevy_ui::camera_config::UiCameraConfig", - "type": "object", - "typeInfo": "Struct" - }, "bevy_ui::focus::FocusPolicy": { "isComponent": true, "isResource": false, @@ -8040,7 +10417,7 @@ }, "tracks": { "type": { - "$ref": "#/$defs/smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>" + "$ref": "#/$defs/bevy_utils::smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>" } } }, @@ -8293,6 +10670,22 @@ "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, @@ -8324,37 +10717,6 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_ui::ui_node::UiTextureAtlasImage": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "flip_x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "flip_y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "index": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "index", - "flip_x", - "flip_y" - ], - "short_name": "UiTextureAtlasImage", - "title": "bevy_ui::ui_node::UiTextureAtlasImage", - "type": "object", - "typeInfo": "Struct" - }, "bevy_ui::ui_node::ZIndex": { "isComponent": true, "isResource": false, @@ -8491,31 +10853,40 @@ "type": "object", "typeInfo": "Value" }, + "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", - "Crosshair", - "Hand", - "Arrow", - "Move", - "Text", - "Wait", - "Help", - "Progress", - "NotAllowed", "ContextMenu", + "Help", + "Pointer", + "Progress", + "Wait", "Cell", + "Crosshair", + "Text", "VerticalText", "Alias", "Copy", + "Move", "NoDrop", + "NotAllowed", "Grab", "Grabbing", - "AllScroll", - "ZoomIn", - "ZoomOut", "EResize", "NResize", "NeResize", @@ -8529,7 +10900,10 @@ "NeswResize", "NwseResize", "ColResize", - "RowResize" + "RowResize", + "AllScroll", + "ZoomIn", + "ZoomOut" ], "short_name": "CursorIcon", "title": "bevy_window::cursor::CursorIcon", @@ -8556,7 +10930,7 @@ "properties": { "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8575,7 +10949,7 @@ "properties": { "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8592,6 +10966,11 @@ "isComponent": false, "isResource": false, "properties": { + "delta": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, "position": { "type": { "$ref": "#/$defs/glam::Vec2" @@ -8599,7 +10978,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8628,7 +11007,7 @@ "window": { "title": "window", "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8653,7 +11032,7 @@ "window": { "title": "window", "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8672,7 +11051,7 @@ "window": { "title": "window", "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8697,12 +11076,12 @@ "properties": { "char": { "type": { - "$ref": "#/$defs/char" + "$ref": "#/$defs/smol_str::SmolStr" } }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8738,7 +11117,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8758,7 +11137,7 @@ "properties": { "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8777,7 +11156,7 @@ "properties": { "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8796,7 +11175,7 @@ "properties": { "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8820,7 +11199,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8838,19 +11217,19 @@ "isComponent": false, "isResource": false, "properties": { - "entity": { - "type": { - "$ref": "#/$defs/bevy_ecs::Entity" - } - }, "position": { "type": { "$ref": "#/$defs/glam::IVec2" } + }, + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } } }, "required": [ - "entity", + "window", "position" ], "short_name": "WindowMoved", @@ -8858,6 +11237,31 @@ "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, @@ -8875,7 +11279,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8901,7 +11305,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -8926,7 +11330,7 @@ }, "window": { "type": { - "$ref": "#/$defs/bevy_ecs::Entity" + "$ref": "#/$defs/bevy_ecs::entity::Entity" } } }, @@ -9149,11 +11553,6 @@ "$ref": "#/$defs/bevy_window::window::EnabledButtons" } }, - "fit_canvas_to_parent": { - "type": { - "$ref": "#/$defs/bool" - } - }, "focused": { "type": { "$ref": "#/$defs/bool" @@ -9179,6 +11578,11 @@ "$ref": "#/$defs/bevy_window::window::WindowMode" } }, + "name": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, "position": { "type": { "$ref": "#/$defs/bevy_window::window::WindowPosition" @@ -9250,7 +11654,6 @@ "transparent", "focused", "window_level", - "fit_canvas_to_parent", "prevent_default_event_handling", "internal", "ime_enabled", @@ -9384,12 +11787,12 @@ }, "scale_factor": { "type": { - "$ref": "#/$defs/f64" + "$ref": "#/$defs/f32" } }, "scale_factor_override": { "type": { - "$ref": "#/$defs/core::option::Option" + "$ref": "#/$defs/core::option::Option" } } }, @@ -9439,6 +11842,14 @@ "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, @@ -10649,19 +13060,6 @@ "type": "int", "typeInfo": "Value" }, - "smallvec::SmallVec<[bevy_ecs::Entity; 8]>": { - "isComponent": false, - "isResource": false, - "items": { - "type": { - "$ref": "#/$defs/bevy_ecs::Entity" - } - }, - "short_name": "SmallVec<[Entity; 8]>", - "title": "smallvec::SmallVec<[bevy_ecs::Entity; 8]>", - "type": "array", - "typeInfo": "List" - }, "std::ffi::OsString": { "isComponent": false, "isResource": false, diff --git a/testing/bevy_registry_export/basic/src/core/mod.rs b/testing/bevy_registry_export/basic/src/core/mod.rs index 5421e4e..1ef7f3e 100644 --- a/testing/bevy_registry_export/basic/src/core/mod.rs +++ b/testing/bevy_registry_export/basic/src/core/mod.rs @@ -6,10 +6,7 @@ pub struct CorePlugin; impl Plugin for CorePlugin { fn build(&self, app: &mut App) { app.add_plugins(( - ExportRegistryPlugin { - save_path: "assets/registry.json".into(), - ..Default::default() - }, + ExportRegistryPlugin::default(), BlueprintsPlugin { legacy_mode: false, library_folder: "models/library".into(), diff --git a/testing/bevy_registry_export/basic/src/game/mod.rs b/testing/bevy_registry_export/basic/src/game/mod.rs index b236141..3aa01df 100644 --- a/testing/bevy_registry_export/basic/src/game/mod.rs +++ b/testing/bevy_registry_export/basic/src/game/mod.rs @@ -10,13 +10,10 @@ use bevy_gltf_worlflow_examples_common::{AppState, GameState}; pub struct GamePlugin; impl Plugin for GamePlugin { fn build(&self, app: &mut App) { - app.add_systems( - Update, - (spawn_test, spawn_test_unregisted_components).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); + 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/testing/bevy_registry_export/basic/src/main.rs b/testing/bevy_registry_export/basic/src/main.rs index 8fca426..9320156 100644 --- a/testing/bevy_registry_export/basic/src/main.rs +++ b/testing/bevy_registry_export/basic/src/main.rs @@ -1,5 +1,4 @@ use bevy::prelude::*; -use bevy_editor_pls::prelude::*; use bevy_gltf_worlflow_examples_common::CommonPlugin; mod core; @@ -15,8 +14,6 @@ fn main() { App::new() .add_plugins(( DefaultPlugins.set(AssetPlugin::default()), - // editor - EditorPlugin::default(), // our custom plugins CommonPlugin, CorePlugin, // reusable plugins diff --git a/tools/bevy_components/tests/expected_component_values.py b/tools/bevy_components/tests/expected_component_values.py index 533a6d8..70a1725 100644 --- a/tools/bevy_components/tests/expected_component_values.py +++ b/tools/bevy_components/tests/expected_component_values.py @@ -3,7 +3,7 @@ expected_custom_property_values = {'AComponentWithAnExtremlyExageratedOrMaybeNotButCouldBeNameOrWut': '', 'Aabb': '(center: Vec3A(x:0.0, y:0.0, z:0.0), half_extents: Vec3A(x:0.0, y:0.0, z:0.0))', 'AdditionalMassProperties': 'Mass(0.0)', - 'AmbientLightSettings': '(brightness: 0.0, color: Rgba(red:1.0, green:1.0, blue:0.0, alpha:1.0))', + 'BlenderBackgroundShader': '(strength: 0.0, color: Rgba(red:1.0, green:1.0, blue:0.0, alpha:1.0))', 'AnimationPlayer': '(animation: "", paused: true)', 'Animations': '(named_animations: "")', 'AutoAABBCollider': 'Cuboid', @@ -126,7 +126,7 @@ expected_custom_property_values = {'AComponentWithAnExtremlyExageratedOrMaybeNot 'ScreenSpaceAmbientOcclusionSettings': '(quality_level: "")', 'Sensor': '', 'ShadowFilteringMethod': 'Hardware2x2', - 'ShadowmapSettings': '(size: 0)', + 'BlenderShadowSettings': '(cascade_size: 0)', 'SkinnedMesh': '(inverse_bindposes: Strong(""), joints: [])', 'Sleeping': '(angular_threshold: 0.0, linear_threshold: 0.0, sleeping: true)', 'SolverGroups': '(filters: (0), memberships: (0))', @@ -192,7 +192,7 @@ expected_custom_property_values_randomized = {'AComponentWithAnExtremlyExagerate 'Aabb': '(center: Vec3A(x:0.5714026093482971, y:0.42888906598091125, z:0.5780913233757019), half_extents: ' 'Vec3A(x:0.20609822869300842, y:0.8133212327957153, z:0.8235888481140137))', 'AdditionalMassProperties': 'Mass(0.42888906598091125)', - 'AmbientLightSettings': '(brightness: 0.5714026093482971, color: Rgba(red:0.42888906598091125, ' + 'BlenderBackgroundShader': '(strength: 0.5714026093482971, color: Rgba(red:0.42888906598091125, ' 'green:0.5780913233757019, blue:0.20609822869300842, alpha:0.8133212327957153))', 'AnimationPlayer': '(animation: "", paused: true)', 'Animations': '(named_animations: "")', @@ -346,7 +346,7 @@ expected_custom_property_values_randomized = {'AComponentWithAnExtremlyExagerate 'ScreenSpaceAmbientOcclusionSettings': '(quality_level: "")', 'Sensor': '', 'ShadowFilteringMethod': 'Jimenez14', - 'ShadowmapSettings': '(size: 73)', + 'BlenderShadowSettings': '(cascade_size: 73)', 'SkinnedMesh': '(inverse_bindposes: Strong(""), joints: [0, 0])', 'Sleeping': '(angular_threshold: 0.5714026093482971, linear_threshold: 0.42888906598091125, sleeping: true)', 'SolverGroups': '(filters: (73), memberships: (4))', diff --git a/tools/gltf_auto_export/modules/bevy_scene_components.py b/tools/gltf_auto_export/modules/bevy_scene_components.py index 0728bc3..382fc7c 100644 --- a/tools/gltf_auto_export/modules/bevy_scene_components.py +++ b/tools/gltf_auto_export/modules/bevy_scene_components.py @@ -17,9 +17,9 @@ def upsert_scene_components(scene, world, main_scene_names): lighting_components = make_empty('lighting_components_'+scene.name, [0,0,0], [0,0,0], [0,0,0], root_collection) if world is not None: - lighting_components['AmbientLightSettings'] = ambient_color_to_component(world) + lighting_components['BlenderBackgroundShader'] = ambient_color_to_component(world) - lighting_components['ShadowmapSettings'] = scene_shadows_to_component(scene) + lighting_components['BlenderShadowSettings'] = scene_shadows_to_component(scene) if scene.eevee.use_bloom: @@ -40,22 +40,22 @@ def ambient_color_to_component(world): color = world.node_tree.nodes['Background'].inputs[0].default_value strength = world.node_tree.nodes['Background'].inputs[1].default_value except Exception as ex: - print("failed to parse ambient color: Only backgroud is supported") + print("failed to parse ambient color: Only background is supported") if color is not None and strength is not None: - colorRgba = "Rgba(red: "+ str(color[0]) + ", green: "+ str(color[1]) + ", blue: " + str(color[2]) + ", alpha: "+ str(color[3]) + ")" # TODO: YIKES clean this up - component = "( color:"+ str(colorRgba) +", brightness:"+str(strength)+")" + colorRgba = f"Rgba(red: {color[0]}, green: {color[1]}, blue: {color[2]}, alpha: {color[3]})" + component = f"( color: {colorRgba}, strength: {strength})" return component return None def scene_shadows_to_component(scene): - cascade_resolution = scene.eevee.shadow_cascade_size - component = "(size: "+ cascade_resolution +")" + cascade_size = scene.eevee.shadow_cascade_size + component = f"(cascade_size: {cascade_size})" return component def scene_bloom_to_component(scene): - component = "BloomSettings(intensity: "+ str(scene.eevee.bloom_intensity) +")" + component = f"BloomSettings(intensity: {scene.eevee.bloom_intensity})" return component def scene_ao_to_component(scene):