From ada54450a5bf92e9b5cca606576a384e03d62e44 Mon Sep 17 00:00:00 2001 From: Jan Hohenheim Date: Thu, 21 Mar 2024 21:31:35 +0100 Subject: [PATCH 1/6] fix(bevy_gltf_blueprints): fix occasional crash (#168) * Fixes #156 * Fix post processing not affecting visibility of entities --- crates/bevy_gltf_blueprints/src/lib.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/crates/bevy_gltf_blueprints/src/lib.rs b/crates/bevy_gltf_blueprints/src/lib.rs index 78642cd..36ac25b 100644 --- a/crates/bevy_gltf_blueprints/src/lib.rs +++ b/crates/bevy_gltf_blueprints/src/lib.rs @@ -19,7 +19,11 @@ pub use copy_components::*; use core::fmt; use std::path::PathBuf; -use bevy::{prelude::*, render::primitives::Aabb, utils::HashMap}; +use bevy::{ + prelude::*, + render::{primitives::Aabb, view::VisibilitySystems}, + utils::HashMap, +}; use bevy_gltf_components::{ComponentsFromGltfPlugin, GltfComponentsSet}; #[derive(SystemSet, Debug, Hash, PartialEq, Eq, Clone)] @@ -166,10 +170,11 @@ impl Plugin for BlueprintsPlugin { .in_set(GltfBlueprintsSet::Spawn), ) .add_systems( - Update, + PostUpdate, (spawned_blueprint_post_process, apply_deferred) .chain() - .in_set(GltfBlueprintsSet::AfterSpawn), + .in_set(GltfBlueprintsSet::AfterSpawn) + .before(VisibilitySystems::CheckVisibility), ); } } From f438116ece63dba4500e05a73b6c11de28f16482 Mon Sep 17 00:00:00 2001 From: Mark Moissette Date: Thu, 21 Mar 2024 22:16:44 +0100 Subject: [PATCH 2/6] chore(bevy_gltf_blueprints): version bump (#171) --- crates/bevy_gltf_blueprints/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/bevy_gltf_blueprints/Cargo.toml b/crates/bevy_gltf_blueprints/Cargo.toml index fbd0749..e35b3ef 100644 --- a/crates/bevy_gltf_blueprints/Cargo.toml +++ b/crates/bevy_gltf_blueprints/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bevy_gltf_blueprints" -version = "0.10.0" +version = "0.10.1" authors = ["Mark 'kaosat-dev' Moissette"] description = "Adds the ability to define Blueprints/Prefabs for Bevy inside gltf files and spawn them in Bevy." homepage = "https://github.com/kaosat-dev/Blender_bevy_components_workflow" From bb4b07b7afa7c886a2abed5c9be279e603138f04 Mon Sep 17 00:00:00 2001 From: Mark Moissette Date: Thu, 21 Mar 2024 23:07:57 +0100 Subject: [PATCH 3/6] docs(bevy_gltf_blueprints): fixed missing link, minor cleanups (#172) * the rest of fixes & cleanups was already done in a previous commit, closes #165 --- crates/bevy_gltf_blueprints/Cargo.toml | 2 +- crates/bevy_gltf_blueprints/README.md | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/crates/bevy_gltf_blueprints/Cargo.toml b/crates/bevy_gltf_blueprints/Cargo.toml index e35b3ef..b975536 100644 --- a/crates/bevy_gltf_blueprints/Cargo.toml +++ b/crates/bevy_gltf_blueprints/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bevy_gltf_blueprints" -version = "0.10.1" +version = "0.10.2" authors = ["Mark 'kaosat-dev' Moissette"] description = "Adds the ability to define Blueprints/Prefabs for Bevy inside gltf files and spawn them in Bevy." homepage = "https://github.com/kaosat-dev/Blender_bevy_components_workflow" diff --git a/crates/bevy_gltf_blueprints/README.md b/crates/bevy_gltf_blueprints/README.md index 4be5ee9..36ed49e 100644 --- a/crates/bevy_gltf_blueprints/README.md +++ b/crates/bevy_gltf_blueprints/README.md @@ -224,7 +224,7 @@ Typically , the order of systems should be ***bevy_gltf_components (GltfComponentsSet::Injection)*** => ***bevy_gltf_blueprints (GltfBlueprintsSet::Spawn, GltfBlueprintsSet::AfterSpawn)*** => ***replace_proxies*** -see https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/basic for how to set it up correctly +see an example [here](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/basic) for how to set it up correctly @@ -278,9 +278,9 @@ pub fn animation_change_on_proximity_foxes( } ``` -see https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/animation for how to set it up correctly +see [here](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/animation) for how to set it up correctly -particularly from https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/animation/game/in_game.rs +particularly from [here](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/animation/src/game/in_game.rs) ## Materials @@ -301,7 +301,7 @@ material_library_folder: "materials".into() //defaults to "materials" the folder ```bevy_gltf_blueprints``` currently does NOT take care of loading those at runtime -see https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/materials for how to set it up correctly +see an example [here](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/materials) for how to set it up correctly Generating optimised blueprints and material libraries can be automated using the latests version of the [Blender plugin](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/tools/gltf_auto_export) @@ -326,15 +326,15 @@ As it create custom properties that are writen in real **ron** file format inste ## Examples -https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/basic +* [basic](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/basic) -https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/basic_xpbd_physics +* [xbpd](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/basic_xpbd_physics) -https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/animation +* [animation](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/animation) -https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/materials +* [materials](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/materials) -https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles +* [multiple_levels_multiple_blendfiles](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/examples/bevy_gltf_blueprints/multiple_levels_multiple_blendfiles) ## Compatible Bevy versions From 6c34ab8bd64708194a2945669634ec1219bf72d0 Mon Sep 17 00:00:00 2001 From: Jan Hohenheim Date: Mon, 25 Mar 2024 11:32:04 +0100 Subject: [PATCH 4/6] feat(bevy_gltf_components): Improve global illumination to match Blender ambient lighting better(#174) * Improves global illumination/ ambient by switching to an env map --- .../src/blender_settings/lighting.rs | 69 +++++++++++++++++-- 1 file changed, 63 insertions(+), 6 deletions(-) diff --git a/crates/bevy_gltf_components/src/blender_settings/lighting.rs b/crates/bevy_gltf_components/src/blender_settings/lighting.rs index 622c0e1..6d758a4 100644 --- a/crates/bevy_gltf_components/src/blender_settings/lighting.rs +++ b/crates/bevy_gltf_components/src/blender_settings/lighting.rs @@ -1,5 +1,10 @@ use bevy::pbr::DirectionalLightShadowMap; use bevy::prelude::*; +use bevy::render::render_asset::RenderAssetUsages; +use bevy::render::render_resource::{ + Extent3d, TextureDimension, TextureFormat, TextureViewDescriptor, TextureViewDimension, +}; +use std::iter; use crate::GltfComponentsSet; @@ -84,14 +89,66 @@ fn process_shadowmap( } fn process_background_shader( - background_shaders: Query<&BlenderBackgroundShader, Added>, + background_shaders: Query>, + cameras: Query<(Entity, Ref)>, + mut images: ResMut>, mut commands: Commands, + mut env_map_handle: Local>>, ) { - 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, + let Ok(background_shader) = background_shaders.get_single() else { + return; + }; + + let env_map_handle = env_map_handle.get_or_insert_with(|| { + let size = Extent3d { + width: 1, + height: 6, + depth_or_array_layers: 1, + }; + let dimension = TextureDimension::D2; + const SIDES_PER_CUBE: usize = 6; + let data: Vec<_> = iter::repeat(background_shader.color.as_rgba_u8()) + .take(SIDES_PER_CUBE) + .flatten() + .collect(); + let format = TextureFormat::Rgba8UnormSrgb; + let asset_usage = RenderAssetUsages::RENDER_WORLD; + + let mut image = Image::new(size, dimension, data, format, asset_usage); + + // Source: https://github.com/bevyengine/bevy/blob/85b488b73d6f6e75690962fba67a144d9beb6b88/examples/3d/skybox.rs#L152-L160 + image.reinterpret_stacked_2d_as_array(image.height() / image.width()); + image.texture_view_descriptor = Some(TextureViewDescriptor { + dimension: Some(TextureViewDimension::Cube), + ..default() + }); + + images.add(image) + }); + // Don't need the handle to be &mut + let env_map_handle = &*env_map_handle; + + if background_shader.is_added() { + // We're using an environment map, so we don't need the ambient light + commands.remove_resource::(); + } + + let is_bg_outdated = background_shader.is_changed(); + if is_bg_outdated { + let color = background_shader.color * background_shader.strength; + commands.insert_resource(ClearColor(color)); + } + let camera_entities = cameras + .iter() + .filter_map(|(entity, cam)| (is_bg_outdated || cam.is_changed()).then_some(entity)); + + for camera_entity in camera_entities { + // See https://github.com/KhronosGroup/glTF-Blender-IO/blob/8573cc0dfb612091bfc1bcf6df55c18a44b9668a/addons/io_scene_gltf2/blender/com/gltf2_blender_conversion.py#L19 + const PBR_WATTS_TO_LUMENS: f32 = 683.0; + commands.entity(camera_entity).insert(EnvironmentMapLight { + diffuse_map: env_map_handle.clone(), + specular_map: env_map_handle.clone(), + intensity: background_shader.strength * PBR_WATTS_TO_LUMENS, }); } } From 06403153c310cf9343ac22813d11e5394d32a486 Mon Sep 17 00:00:00 2001 From: BUGO07 Date: Fri, 3 May 2024 02:36:57 +0400 Subject: [PATCH 5/6] fix(bevy_gltf_components): stop automatically enabling shadows for any light source if it doesn't come from blender (#184) closes #183 --- .../bevy_gltf_components/src/blender_settings/lighting.rs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/crates/bevy_gltf_components/src/blender_settings/lighting.rs b/crates/bevy_gltf_components/src/blender_settings/lighting.rs index 6d758a4..2d9138d 100644 --- a/crates/bevy_gltf_components/src/blender_settings/lighting.rs +++ b/crates/bevy_gltf_components/src/blender_settings/lighting.rs @@ -56,23 +56,17 @@ fn process_lights( for (mut light, blender_light_shadows) in directional_lights.iter_mut() { if let Some(blender_light_shadows) = blender_light_shadows { light.shadows_enabled = blender_light_shadows.enabled; - } else { - light.shadows_enabled = true; } } for (mut light, blender_light_shadows) in spot_lights.iter_mut() { if let Some(blender_light_shadows) = blender_light_shadows { light.shadows_enabled = blender_light_shadows.enabled; - } else { - light.shadows_enabled = true; } } for (mut light, blender_light_shadows) in point_lights.iter_mut() { if let Some(blender_light_shadows) = blender_light_shadows { light.shadows_enabled = blender_light_shadows.enabled; - } else { - light.shadows_enabled = true; } } } From 9b50d77790f4845c4268ceeac701626ead93d8cb Mon Sep 17 00:00:00 2001 From: Mark Moissette Date: Fri, 19 Jul 2024 01:24:24 +0200 Subject: [PATCH 6/6] chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14 (#195) * chore(v0.14): upgraded all current crates, examples, testing setup etc to Bevy 0.14 * chore(Blender tools): some minor fixed for Bevy 0.14 & version bump --- crates/bevy_gltf_blueprints/Cargo.toml | 8 +- crates/bevy_gltf_blueprints/README.md | 11 +- crates/bevy_gltf_blueprints/src/animation.rs | 2 + .../src/copy_components.rs | 3 +- crates/bevy_gltf_blueprints/src/lib.rs | 1 - crates/bevy_gltf_blueprints/src/materials.rs | 4 +- .../src/spawn_from_blueprints.rs | 18 +- crates/bevy_gltf_components/Cargo.toml | 6 +- crates/bevy_gltf_components/README.md | 11 +- .../src/blender_settings/lighting.rs | 75 +- .../src/ronstring_to_reflect_component.rs | 4 +- crates/bevy_gltf_save_load/Cargo.toml | 8 +- crates/bevy_gltf_save_load/README.md | 11 +- crates/bevy_gltf_save_load/src/loading.rs | 2 +- crates/bevy_gltf_save_load/src/saving.rs | 4 +- crates/bevy_registry_export/Cargo.toml | 12 +- crates/bevy_registry_export/README.md | 12 +- .../bevy_gltf_blueprints/animation/Cargo.toml | 4 +- .../animation/src/game/in_game.rs | 96 +- .../bevy_gltf_blueprints/basic/Cargo.toml | 4 +- .../basic_xpbd_physics/Cargo.toml | 4 +- .../bevy_gltf_blueprints/materials/Cargo.toml | 4 +- .../Cargo.toml | 4 +- .../bevy_gltf_components/basic/Cargo.toml | 2 +- examples/bevy_gltf_save_load/basic/Cargo.toml | 4 +- .../bevy_registry_export/basic/Cargo.toml | 4 +- .../basic/assets/registry.json | 4782 ++++++++++++----- examples/common/Cargo.toml | 10 +- examples/common/src/lib.rs | 4 +- examples/common_rapier/Cargo.toml | 8 +- examples/common_rapier/src/physics/utils.rs | 127 +- examples/common_xpbd/Cargo.toml | 8 +- examples/common_xpbd/src/physics/utils.rs | 127 +- testing/bevy_example/Cargo.toml | 8 +- testing/bevy_example/src/game/mod.rs | 2 +- tools/bevy_components/__init__.py | 2 +- .../propGroups/conversions_from_prop_group.py | 4 +- .../propGroups/conversions_to_prop_group.py | 11 +- tools/bevy_components/registry/registry.py | 10 +- .../tests/component_values_shuffler.py | 5 +- tools/gltf_auto_export/__init__.py | 2 +- .../modules/bevy_scene_components.py | 2 +- 42 files changed, 3543 insertions(+), 1887 deletions(-) diff --git a/crates/bevy_gltf_blueprints/Cargo.toml b/crates/bevy_gltf_blueprints/Cargo.toml index b975536..5ca181c 100644 --- a/crates/bevy_gltf_blueprints/Cargo.toml +++ b/crates/bevy_gltf_blueprints/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bevy_gltf_blueprints" -version = "0.10.2" +version = "0.11.0" authors = ["Mark 'kaosat-dev' Moissette"] description = "Adds the ability to define Blueprints/Prefabs for Bevy inside gltf files and spawn them in Bevy." homepage = "https://github.com/kaosat-dev/Blender_bevy_components_workflow" @@ -14,8 +14,8 @@ license = "MIT OR Apache-2.0" workspace = true [dependencies] -bevy_gltf_components = { version = "0.5", path = "../bevy_gltf_components" } -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf", "bevy_animation", "animation"] } +bevy_gltf_components = { version = "0.6", path = "../bevy_gltf_components" } +bevy = { version = "0.14", 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 +bevy = { version = "0.14", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_gltf_blueprints/README.md b/crates/bevy_gltf_blueprints/README.md index 36ed49e..49cb3b0 100644 --- a/crates/bevy_gltf_blueprints/README.md +++ b/crates/bevy_gltf_blueprints/README.md @@ -3,7 +3,9 @@ [![License](https://img.shields.io/crates/l/bevy_gltf_blueprints)](https://github.com/kaosat-dev/Blender_bevy_components_workflow/blob/main/crates/bevy_gltf_blueprints/License.md) [![Bevy tracking](https://img.shields.io/badge/Bevy%20tracking-released%20version-lightblue)](https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md#main-branch-tracking) -# bevy_gltf_blueprints +# bevy_gltf_blueprints (deprecated in favor of Blenvy) + +> bevy_gltf_blueprints has been deprecated in favor of its successor [Blenvy](https://crates.io/crates/blenvy), part of the [Blenvy project](https://github.com/kaosat-dev/Blenvy). No further development or maintenance will be done for Bevy bevy_gltf_blueprints. See [#194](https://github.com/kaosat-dev/Blenvy/issues/194) for background. Built on [bevy_gltf_components](https://crates.io/crates/bevy_gltf_components) this crate adds the ability to define Blueprints/Prefabs for [Bevy](https://bevyengine.org/) inside gltf files and spawn them in Bevy. @@ -27,8 +29,8 @@ Here's a minimal usage example: ```toml # Cargo.toml [dependencies] -bevy="0.13" -bevy_gltf_blueprints = { version = "0.10"} +bevy="0.14" +bevy_gltf_blueprints = { version = "0.11.0"} ``` @@ -66,7 +68,7 @@ fn spawn_blueprint( Add the following to your `[dependencies]` section in `Cargo.toml`: ```toml -bevy_gltf_blueprints = "0.10" +bevy_gltf_blueprints = "0.11.0" ``` Or use `cargo add`: @@ -344,6 +346,7 @@ The main branch is compatible with the latest Bevy release, while the branch `be Compatibility of `bevy_gltf_blueprints` versions: | `bevy_gltf_blueprints` | `bevy` | | :-- | :-- | +| `0.11` | `0.14` | | `0.9 - 0.10` | `0.13` | | `0.3 - 0.8` | `0.12` | | `0.1 - 0.2` | `0.11` | diff --git a/crates/bevy_gltf_blueprints/src/animation.rs b/crates/bevy_gltf_blueprints/src/animation.rs index 4a18ec4..4f2d652 100644 --- a/crates/bevy_gltf_blueprints/src/animation.rs +++ b/crates/bevy_gltf_blueprints/src/animation.rs @@ -6,6 +6,8 @@ use bevy::utils::HashMap; /// storage for animations for a given entity (hierarchy), essentially a clone of gltf's `named_animations` pub struct Animations { pub named_animations: HashMap>, + pub named_indices: HashMap, + pub graph: Handle, } #[derive(Component, Debug)] diff --git a/crates/bevy_gltf_blueprints/src/copy_components.rs b/crates/bevy_gltf_blueprints/src/copy_components.rs index e68cd3d..f978382 100644 --- a/crates/bevy_gltf_blueprints/src/copy_components.rs +++ b/crates/bevy_gltf_blueprints/src/copy_components.rs @@ -1,5 +1,4 @@ -use bevy::ecs::system::Command; -use bevy::prelude::*; +use bevy::{ecs::world::Command, prelude::*}; use std::any::TypeId; // originally based https://github.com/bevyengine/bevy/issues/1515, diff --git a/crates/bevy_gltf_blueprints/src/lib.rs b/crates/bevy_gltf_blueprints/src/lib.rs index 36ac25b..db9181f 100644 --- a/crates/bevy_gltf_blueprints/src/lib.rs +++ b/crates/bevy_gltf_blueprints/src/lib.rs @@ -89,7 +89,6 @@ pub struct BlueprintsPlugin { pub library_folder: PathBuf, /// Automatically generate aabbs for the blueprints root objects pub aabbs: bool, - /// pub material_library: bool, pub material_library_folder: PathBuf, } diff --git a/crates/bevy_gltf_blueprints/src/materials.rs b/crates/bevy_gltf_blueprints/src/materials.rs index fe440d4..f942331 100644 --- a/crates/bevy_gltf_blueprints/src/materials.rs +++ b/crates/bevy_gltf_blueprints/src/materials.rs @@ -172,10 +172,10 @@ pub(crate) fn materials_inject2( let mat_gltf = assets_gltf .get(model_handle.id()) .expect("material should have been preloaded"); - if mat_gltf.named_materials.contains_key(material_name) { + if mat_gltf.named_materials.contains_key(material_name as &str) { let material = mat_gltf .named_materials - .get(material_name) + .get(material_name as &str) .expect("this material should have been loaded"); blueprints_config .material_library_cache diff --git a/crates/bevy_gltf_blueprints/src/spawn_from_blueprints.rs b/crates/bevy_gltf_blueprints/src/spawn_from_blueprints.rs index f977c61..8c2a94d 100644 --- a/crates/bevy_gltf_blueprints/src/spawn_from_blueprints.rs +++ b/crates/bevy_gltf_blueprints/src/spawn_from_blueprints.rs @@ -192,6 +192,7 @@ pub(crate) fn check_for_loaded( } } +#[allow(clippy::too_many_arguments)] pub(crate) fn spawn_from_blueprints( spawn_placeholders: Query< ( @@ -214,6 +215,7 @@ pub(crate) fn spawn_from_blueprints( mut game_world: Query>, assets_gltf: Res>, + mut graphs: ResMut>, asset_server: Res, blueprints_config: Res, @@ -273,6 +275,18 @@ pub(crate) fn spawn_from_blueprints( original_children.push(*child); } } + + let mut graph = AnimationGraph::new(); + let mut named_animations: HashMap> = HashMap::new(); + let mut named_indices: HashMap = HashMap::new(); + + for (key, clip) in gltf.named_animations.iter() { + named_animations.insert(key.to_string(), clip.clone()); + let animation_index = graph.add_clip(clip.clone(), 1.0, graph.root); + named_indices.insert(key.to_string(), animation_index); + } + let graph = graphs.add(graph); + commands.entity(entity).insert(( SceneBundle { scene: scene.clone(), @@ -280,7 +294,9 @@ pub(crate) fn spawn_from_blueprints( ..Default::default() }, Animations { - named_animations: gltf.named_animations.clone(), + named_animations, + named_indices, + graph, }, Spawned, OriginalChildren(original_children), diff --git a/crates/bevy_gltf_components/Cargo.toml b/crates/bevy_gltf_components/Cargo.toml index 2004d97..f1ae355 100644 --- a/crates/bevy_gltf_components/Cargo.toml +++ b/crates/bevy_gltf_components/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bevy_gltf_components" -version = "0.5.1" +version = "0.6.0" authors = ["Mark 'kaosat-dev' Moissette"] description = "Allows you to define Bevy components direclty inside gltf files and instanciate the components on the Bevy side." homepage = "https://github.com/kaosat-dev/Blender_bevy_components_workflow" @@ -14,9 +14,9 @@ license = "MIT OR Apache-2.0" workspace = true [dependencies] -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } +bevy = { version = "0.14", 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 +bevy = { version = "0.14", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_gltf_components/README.md b/crates/bevy_gltf_components/README.md index 9ac3657..96610e5 100644 --- a/crates/bevy_gltf_components/README.md +++ b/crates/bevy_gltf_components/README.md @@ -4,7 +4,9 @@ [![Bevy tracking](https://img.shields.io/badge/Bevy%20tracking-released%20version-lightblue)](https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md#main-branch-tracking) -# bevy_gltf_components +# bevy_gltf_components (deprecated in favor of Blenvy) + +> bevy_gltf_components has been deprecated in favor of its successor [Blenvy](https://crates.io/crates/blenvy), part of the [Blenvy project](https://github.com/kaosat-dev/Blenvy). No further development or maintenance will be done for Bevy bevy_gltf_components. See [#194](https://github.com/kaosat-dev/Blenvy/issues/194) for background. This crate allows you to define [Bevy](https://bevyengine.org/) components direclty inside gltf files and instanciate the components on the Bevy side. @@ -23,8 +25,8 @@ Here's a minimal usage example: ```toml # Cargo.toml [dependencies] -bevy="0.13" -bevy_gltf_components = { version = "0.5"} +bevy="0.14" +bevy_gltf_components = { version = "0.6"} ``` @@ -60,7 +62,7 @@ bevy_gltf_components = { version = "0.5"} Add the following to your `[dependencies]` section in `Cargo.toml`: ```toml -bevy_gltf_components = "0.5" +bevy_gltf_components = "0.6" ``` Or use `cargo add`: @@ -127,6 +129,7 @@ The main branch is compatible with the latest Bevy release, while the branch `be Compatibility of `bevy_gltf_components` versions: | `bevy_gltf_components` | `bevy` | | :-- | :-- | +| `0.6` | `0.14` | | `0.5` | `0.13` | | `0.2 - 0.4` | `0.12` | | `0.1` | `0.11` | diff --git a/crates/bevy_gltf_components/src/blender_settings/lighting.rs b/crates/bevy_gltf_components/src/blender_settings/lighting.rs index 2d9138d..622c0e1 100644 --- a/crates/bevy_gltf_components/src/blender_settings/lighting.rs +++ b/crates/bevy_gltf_components/src/blender_settings/lighting.rs @@ -1,10 +1,5 @@ use bevy::pbr::DirectionalLightShadowMap; use bevy::prelude::*; -use bevy::render::render_asset::RenderAssetUsages; -use bevy::render::render_resource::{ - Extent3d, TextureDimension, TextureFormat, TextureViewDescriptor, TextureViewDimension, -}; -use std::iter; use crate::GltfComponentsSet; @@ -56,17 +51,23 @@ fn process_lights( for (mut light, blender_light_shadows) in directional_lights.iter_mut() { if let Some(blender_light_shadows) = blender_light_shadows { light.shadows_enabled = blender_light_shadows.enabled; + } else { + light.shadows_enabled = true; } } for (mut light, blender_light_shadows) in spot_lights.iter_mut() { if let Some(blender_light_shadows) = blender_light_shadows { light.shadows_enabled = blender_light_shadows.enabled; + } else { + light.shadows_enabled = true; } } for (mut light, blender_light_shadows) in point_lights.iter_mut() { if let Some(blender_light_shadows) = blender_light_shadows { light.shadows_enabled = blender_light_shadows.enabled; + } else { + light.shadows_enabled = true; } } } @@ -83,66 +84,14 @@ fn process_shadowmap( } fn process_background_shader( - background_shaders: Query>, - cameras: Query<(Entity, Ref)>, - mut images: ResMut>, + background_shaders: Query<&BlenderBackgroundShader, Added>, mut commands: Commands, - mut env_map_handle: Local>>, ) { - let Ok(background_shader) = background_shaders.get_single() else { - return; - }; - - let env_map_handle = env_map_handle.get_or_insert_with(|| { - let size = Extent3d { - width: 1, - height: 6, - depth_or_array_layers: 1, - }; - let dimension = TextureDimension::D2; - const SIDES_PER_CUBE: usize = 6; - let data: Vec<_> = iter::repeat(background_shader.color.as_rgba_u8()) - .take(SIDES_PER_CUBE) - .flatten() - .collect(); - let format = TextureFormat::Rgba8UnormSrgb; - let asset_usage = RenderAssetUsages::RENDER_WORLD; - - let mut image = Image::new(size, dimension, data, format, asset_usage); - - // Source: https://github.com/bevyengine/bevy/blob/85b488b73d6f6e75690962fba67a144d9beb6b88/examples/3d/skybox.rs#L152-L160 - image.reinterpret_stacked_2d_as_array(image.height() / image.width()); - image.texture_view_descriptor = Some(TextureViewDescriptor { - dimension: Some(TextureViewDimension::Cube), - ..default() - }); - - images.add(image) - }); - // Don't need the handle to be &mut - let env_map_handle = &*env_map_handle; - - if background_shader.is_added() { - // We're using an environment map, so we don't need the ambient light - commands.remove_resource::(); - } - - let is_bg_outdated = background_shader.is_changed(); - if is_bg_outdated { - let color = background_shader.color * background_shader.strength; - commands.insert_resource(ClearColor(color)); - } - let camera_entities = cameras - .iter() - .filter_map(|(entity, cam)| (is_bg_outdated || cam.is_changed()).then_some(entity)); - - for camera_entity in camera_entities { - // See https://github.com/KhronosGroup/glTF-Blender-IO/blob/8573cc0dfb612091bfc1bcf6df55c18a44b9668a/addons/io_scene_gltf2/blender/com/gltf2_blender_conversion.py#L19 - const PBR_WATTS_TO_LUMENS: f32 = 683.0; - commands.entity(camera_entity).insert(EnvironmentMapLight { - diffuse_map: env_map_handle.clone(), - specular_map: env_map_handle.clone(), - intensity: background_shader.strength * PBR_WATTS_TO_LUMENS, + 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/ronstring_to_reflect_component.rs b/crates/bevy_gltf_components/src/ronstring_to_reflect_component.rs index dc095f5..7506c89 100644 --- a/crates/bevy_gltf_components/src/ronstring_to_reflect_component.rs +++ b/crates/bevy_gltf_components/src/ronstring_to_reflect_component.rs @@ -1,5 +1,5 @@ use bevy::log::{debug, warn}; -use bevy::reflect::serde::UntypedReflectDeserializer; +use bevy::reflect::serde::ReflectDeserializer; use bevy::reflect::{Reflect, TypeInfo, TypeRegistration, TypeRegistry}; use bevy::utils::HashMap; use ron::Value; @@ -112,7 +112,7 @@ pub fn ronstring_to_reflect_component( debug!("component data ron string {}", ron_string); let mut deserializer = ron::Deserializer::from_str(ron_string.as_str()) .expect("deserialzer should have been generated from string"); - let reflect_deserializer = UntypedReflectDeserializer::new(type_registry); + let reflect_deserializer = ReflectDeserializer::new(type_registry); let component = reflect_deserializer .deserialize(&mut deserializer) .unwrap_or_else(|_| { diff --git a/crates/bevy_gltf_save_load/Cargo.toml b/crates/bevy_gltf_save_load/Cargo.toml index 4e7eeea..a8f76c4 100644 --- a/crates/bevy_gltf_save_load/Cargo.toml +++ b/crates/bevy_gltf_save_load/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bevy_gltf_save_load" -version = "0.4.1" +version = "0.5.0" authors = ["Mark 'kaosat-dev' Moissette"] description = "Save & load your bevy games" homepage = "https://github.com/kaosat-dev/Blender_bevy_components_workflow" @@ -14,8 +14,8 @@ license = "MIT OR Apache-2.0" workspace = true [dependencies] -bevy = { version = "0.13", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } -bevy_gltf_blueprints = { version = "0.10", path = "../bevy_gltf_blueprints" } +bevy = { version = "0.14", default-features = false, features = ["bevy_asset", "bevy_scene", "bevy_gltf"] } +bevy_gltf_blueprints = { version = "0.11", path = "../bevy_gltf_blueprints" } [dev-dependencies] -bevy = { version = "0.13", default-features = false, features = ["dynamic_linking"] } +bevy = { version = "0.14", default-features = false, features = ["dynamic_linking"] } diff --git a/crates/bevy_gltf_save_load/README.md b/crates/bevy_gltf_save_load/README.md index 43aec04..aaf4cbb 100644 --- a/crates/bevy_gltf_save_load/README.md +++ b/crates/bevy_gltf_save_load/README.md @@ -3,7 +3,9 @@ [![License](https://img.shields.io/crates/l/bevy_gltf_save_load)](https://github.com/kaosat-dev/Blender_bevy_components_workflow/blob/main/crates/bevy_gltf_save_load/License.md) [![Bevy tracking](https://img.shields.io/badge/Bevy%20tracking-released%20version-lightblue)](https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md#main-branch-tracking) -# bevy_gltf_save_load +# bevy_gltf_save_load (deprecated in favor of Blenvy) + +> bevy_gltf_save_load has been deprecated in favor of its successor [Blenvy](https://crates.io/crates/blenvy), part of the [Blenvy project](https://github.com/kaosat-dev/Blenvy). No further development or maintenance will be done for Bevy bevy_gltf_save_load. See [#194](https://github.com/kaosat-dev/Blenvy/issues/194) for background. Built upon [bevy_gltf_blueprints](https://crates.io/crates/bevy_gltf_blueprints) this crate adds the ability to easilly **save** and **load** your game worlds for [Bevy](https://bevyengine.org/) . @@ -34,9 +36,9 @@ Here's a minimal usage example: ```toml # Cargo.toml [dependencies] -bevy="0.13" -bevy_gltf_save_load = "0.4" -bevy_gltf_blueprints = "0.10" // also needed +bevy="0.14" +bevy_gltf_save_load = "0.5" +bevy_gltf_blueprints = "0.11" // also needed ``` ```rust no_run @@ -298,6 +300,7 @@ The main branch is compatible with the latest Bevy release, while the branch `be Compatibility of `bevy_gltf_save_load` versions: | `bevy_gltf_save_load` | `bevy` | | :-- | :-- | +| `0.5 ` | `0.14` | | `0.4 ` | `0.13` | | `0.1 -0.3` | `0.12` | | branch `main` | `0.12` | diff --git a/crates/bevy_gltf_save_load/src/loading.rs b/crates/bevy_gltf_save_load/src/loading.rs index 7410eca..1b23865 100644 --- a/crates/bevy_gltf_save_load/src/loading.rs +++ b/crates/bevy_gltf_save_load/src/loading.rs @@ -32,7 +32,7 @@ pub(crate) fn mark_load_requested( let mut save_path: String = "".into(); for load_request in load_requests.read() { if !load_request.path.is_empty() { - save_path = load_request.path.clone(); + save_path.clone_from(&load_request.path); } } if !save_path.is_empty() { diff --git a/crates/bevy_gltf_save_load/src/saving.rs b/crates/bevy_gltf_save_load/src/saving.rs index b702ae8..41295d0 100644 --- a/crates/bevy_gltf_save_load/src/saving.rs +++ b/crates/bevy_gltf_save_load/src/saving.rs @@ -80,7 +80,7 @@ pub(crate) fn save_game(world: &mut World) { for event in events.get_reader().read(&events) { info!("SAVE EVENT !! {:?}", event); - save_path = event.path.clone(); + save_path.clone_from(&event.path); } events.clear(); @@ -147,7 +147,7 @@ pub(crate) fn save_game(world: &mut World) { // dyn_scene.resources.append(&mut dyn_scene_root.resources); let serialized_scene = dyn_scene - .serialize_ron(world.resource::()) + .serialize(&world.resource::().read()) .unwrap(); let save_path = Path::new("assets") diff --git a/crates/bevy_registry_export/Cargo.toml b/crates/bevy_registry_export/Cargo.toml index 30e72cd..291f465 100644 --- a/crates/bevy_registry_export/Cargo.toml +++ b/crates/bevy_registry_export/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bevy_registry_export" -version = "0.3.1" +version = "0.4.0" authors = ["Mark 'kaosat-dev' Moissette", "Pascal 'Killercup' Hertleif"] description = "Allows you to create a Json export of all your components/ registered types of your Bevy app/game" homepage = "https://github.com/kaosat-dev/Blender_bevy_components_workflow" @@ -11,11 +11,11 @@ edition = "2021" license = "MIT OR Apache-2.0" [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"] } +bevy = { version = "0.14", default-features = false, features = ["bevy_scene"] } +bevy_reflect = { version = "0.14", default-features = false } +bevy_app = { version = "0.14", default-features = false, features = ["bevy_reflect"] } +bevy_ecs = { version = "0.14", default-features = false, features = ["bevy_reflect"] } serde_json = "1.0.108" [dev-dependencies] -bevy = { version = "0.13", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file +bevy = { version = "0.14", default-features = false, features = ["dynamic_linking"] } \ No newline at end of file diff --git a/crates/bevy_registry_export/README.md b/crates/bevy_registry_export/README.md index 20a2a6e..c8bac13 100644 --- a/crates/bevy_registry_export/README.md +++ b/crates/bevy_registry_export/README.md @@ -3,7 +3,10 @@ [![License](https://img.shields.io/crates/l/bevy_registry_export)](https://github.com/kaosat-dev/Blender_bevy_components_workflow/blob/main/crates/bevy_registry_export/License.md) [![Bevy tracking](https://img.shields.io/badge/Bevy%20tracking-released%20version-lightblue)](https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md#main-branch-tracking) -# bevy_registry_export +# bevy_registry_export (deprecated in favor of Blenvy) + +> bevy_registry_export has been deprecated in favor of its successor [Blenvy](https://crates.io/crates/blenvy), part of the [Blenvy project](https://github.com/kaosat-dev/Blenvy). No further development or maintenance will be done for Bevy bevy_registry_export. See [#194](https://github.com/kaosat-dev/Blenvy/issues/194) for background. + This plugin allows you to create a Json export of all your components/ registered types. Its main use case is as a backbone for the [```bevy_components``` Blender add-on](https://github.com/kaosat-dev/Blender_bevy_components_workflow/tree/main/tools/bevy_components), that allows you to add & edit components directly in Blender, using the actual type definitions from Bevy @@ -17,8 +20,8 @@ Here's a minimal usage example: ```toml # Cargo.toml [dependencies] -bevy="0.13" -bevy_registry_export = "0.3" +bevy="0.14" +bevy_registry_export = "0.4" ``` ```rust no_run @@ -44,7 +47,7 @@ take a look at the [example](https://github.com/kaosat-dev/Blender_bevy_componen Add the following to your `[dependencies]` section in `Cargo.toml`: ```toml -bevy_registry_export = "0.3" +bevy_registry_export = "0.4" ``` @@ -112,6 +115,7 @@ The main branch is compatible with the latest Bevy release, while the branch `be Compatibility of `bevy_registry_export` versions: | `bevy_registry_export` | `bevy` | `bevy_components (Blender add-on)` | | :-- | :-- |:-- | +| `0.4 ` | `0.14` | `0.3` | | `0.3 ` | `0.13` | `0.3` | | `0.2 ` | `0.12` | `0.3` | | `0.1 ` | `0.12` | `0.1 -0.2` | diff --git a/examples/bevy_gltf_blueprints/animation/Cargo.toml b/examples/bevy_gltf_blueprints/animation/Cargo.toml index 3f8a3b2..eb35ecd 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.27.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" diff --git a/examples/bevy_gltf_blueprints/animation/src/game/in_game.rs b/examples/bevy_gltf_blueprints/animation/src/game/in_game.rs index 454ce27..05a94a9 100644 --- a/examples/bevy_gltf_blueprints/animation/src/game/in_game.rs +++ b/examples/bevy_gltf_blueprints/animation/src/game/in_game.rs @@ -92,7 +92,7 @@ pub fn animation_change_on_proximity_foxes( players: Query<&GlobalTransform, With>, animated_foxes: Query<(&GlobalTransform, &AnimationPlayerLink, &Animations), With>, - mut animation_players: Query<&mut AnimationPlayer>, + mut animation_players: Query<(&mut AnimationPlayer, &mut AnimationTransitions)>, ) { for player_transforms in players.iter() { for (fox_tranforms, link, animations) in animated_foxes.iter() { @@ -108,14 +108,15 @@ pub fn animation_change_on_proximity_foxes( anim_name = "Survey"; } // now play the animation based on the chosen animation name - let mut animation_player = animation_players.get_mut(link.0).unwrap(); - animation_player - .play_with_transition( - animations - .named_animations + let (mut animation_player, mut animation_transitions) = + animation_players.get_mut(link.0).unwrap(); + animation_transitions + .play( + &mut animation_player, + *animations + .named_indices .get(anim_name) - .expect("animation name should be in the list") - .clone(), + .expect("animation name should be in the list"), Duration::from_secs(3), ) .repeat(); @@ -128,7 +129,7 @@ pub fn animation_change_on_proximity_robots( players: Query<&GlobalTransform, With>, animated_robots: Query<(&GlobalTransform, &AnimationPlayerLink, &Animations), With>, - mut animation_players: Query<&mut AnimationPlayer>, + mut animation_players: Query<(&mut AnimationPlayer, &mut AnimationTransitions)>, ) { for player_transforms in players.iter() { for (robot_tranforms, link, animations) in animated_robots.iter() { @@ -146,14 +147,15 @@ pub fn animation_change_on_proximity_robots( } // now play the animation based on the chosen animation name - let mut animation_player = animation_players.get_mut(link.0).unwrap(); - animation_player - .play_with_transition( - animations - .named_animations + let (mut animation_player, mut animation_transitions) = + animation_players.get_mut(link.0).unwrap(); + animation_transitions + .play( + &mut animation_player, + *animations + .named_indices .get(anim_name) - .expect("animation name should be in the list") - .clone(), + .expect("animation name should be in the list"), Duration::from_secs(3), ) .repeat(); @@ -165,7 +167,7 @@ pub fn animation_control( animated_enemies: Query<(&AnimationPlayerLink, &Animations), With>, animated_foxes: Query<(&AnimationPlayerLink, &Animations), With>, - mut animation_players: Query<&mut AnimationPlayer>, + mut animation_players: Query<(&mut AnimationPlayer, &mut AnimationTransitions)>, keycode: Res>, // mut entities_with_animations : Query<(&mut AnimationPlayer, &mut Animations)>, @@ -173,15 +175,16 @@ pub fn animation_control( // robots if keycode.just_pressed(KeyCode::KeyB) { for (link, animations) in animated_enemies.iter() { - let mut animation_player = animation_players.get_mut(link.0).unwrap(); + let (mut animation_player, mut animation_transitions) = + animation_players.get_mut(link.0).unwrap(); let anim_name = "Scan"; - animation_player - .play_with_transition( - animations - .named_animations + animation_transitions + .play( + &mut animation_player, + *animations + .named_indices .get(anim_name) - .expect("animation name should be in the list") - .clone(), + .expect("animation name should be in the list"), Duration::from_secs(5), ) .repeat(); @@ -191,15 +194,16 @@ pub fn animation_control( // foxes if keycode.just_pressed(KeyCode::KeyW) { for (link, animations) in animated_foxes.iter() { - let mut animation_player = animation_players.get_mut(link.0).unwrap(); + let (mut animation_player, mut animation_transitions) = + animation_players.get_mut(link.0).unwrap(); let anim_name = "Walk"; - animation_player - .play_with_transition( - animations - .named_animations + animation_transitions + .play( + &mut animation_player, + *animations + .named_indices .get(anim_name) - .expect("animation name should be in the list") - .clone(), + .expect("animation name should be in the list"), Duration::from_secs(5), ) .repeat(); @@ -208,15 +212,16 @@ pub fn animation_control( if keycode.just_pressed(KeyCode::KeyX) { for (link, animations) in animated_foxes.iter() { - let mut animation_player = animation_players.get_mut(link.0).unwrap(); + let (mut animation_player, mut animation_transitions) = + animation_players.get_mut(link.0).unwrap(); let anim_name = "Run"; - animation_player - .play_with_transition( - animations - .named_animations + animation_transitions + .play( + &mut animation_player, + *animations + .named_indices .get(anim_name) - .expect("animation name should be in the list") - .clone(), + .expect("animation name should be in the list"), Duration::from_secs(5), ) .repeat(); @@ -225,15 +230,16 @@ pub fn animation_control( if keycode.just_pressed(KeyCode::KeyC) { for (link, animations) in animated_foxes.iter() { - let mut animation_player = animation_players.get_mut(link.0).unwrap(); + let (mut animation_player, mut animation_transitions) = + animation_players.get_mut(link.0).unwrap(); let anim_name = "Survey"; - animation_player - .play_with_transition( - animations - .named_animations + animation_transitions + .play( + &mut animation_player, + *animations + .named_indices .get(anim_name) - .expect("animation name should be in the list") - .clone(), + .expect("animation name should be in the list"), Duration::from_secs(5), ) .repeat(); diff --git a/examples/bevy_gltf_blueprints/basic/Cargo.toml b/examples/bevy_gltf_blueprints/basic/Cargo.toml index bb9cb2f..24e9bf6 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.27.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } rand = "0.8.5" diff --git a/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml b/examples/bevy_gltf_blueprints/basic_xpbd_physics/Cargo.toml index 16b4878..f1e4091 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common_xpbd = { path = "../../common_xpbd" } -bevy_xpbd_3d = "0.4" +bevy_xpbd_3d = "0.5" 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 a51a690..74759ac 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.27.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 bea96b6..cdfc9de 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.27.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_components/basic/Cargo.toml b/examples/bevy_gltf_components/basic/Cargo.toml index ab6eb9d..6e6cb1a 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_components = { path = "../../../crates/bevy_gltf_components" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } diff --git a/examples/bevy_gltf_save_load/basic/Cargo.toml b/examples/bevy_gltf_save_load/basic/Cargo.toml index e1afba2..ce1e6e4 100644 --- a/examples/bevy_gltf_save_load/basic/Cargo.toml +++ b/examples/bevy_gltf_save_load/basic/Cargo.toml @@ -5,12 +5,12 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", 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_rapier = { path = "../../common_rapier" } serde_json = "1.0.108" serde = "1.0.193" -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.27.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 346510e..47ca4fa 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 = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../../crates/bevy_gltf_blueprints" } bevy_registry_export = { path = "../../../crates/bevy_registry_export" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../common_rapier" } -bevy_rapier3d = { version = "0.25.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_rapier3d = { version = "0.27.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 879ccd1..95194f2 100644 --- a/examples/bevy_registry_export/basic/assets/registry.json +++ b/examples/bevy_registry_export/basic/assets/registry.json @@ -1,5 +1,15 @@ { "$defs": { + "()": { + "isComponent": false, + "isResource": false, + "items": false, + "prefixItems": [], + "short_name": "()", + "title": "()", + "type": "array", + "typeInfo": "Tuple" + }, "(f32, f32)": { "isComponent": false, "isResource": false, @@ -21,13 +31,26 @@ "type": "array", "typeInfo": "Tuple" }, - "alloc::borrow::Cow": { + "(u8, u8)": { "isComponent": false, "isResource": false, - "short_name": "Cow", - "title": "alloc::borrow::Cow", - "type": "object", - "typeInfo": "Value" + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u8" + } + }, + { + "type": { + "$ref": "#/$defs/u8" + } + } + ], + "short_name": "(u8, u8)", + "title": "(u8, u8)", + "type": "array", + "typeInfo": "Tuple" }, "alloc::borrow::Cow": { "isComponent": false, @@ -84,6 +107,19 @@ "type": "array", "typeInfo": "List" }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_animation::transition::AnimationTransition" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, "alloc::vec::Vec": { "isComponent": false, "isResource": false, @@ -97,6 +133,19 @@ "type": "array", "typeInfo": "List" }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, "alloc::vec::Vec": { "isComponent": false, "isResource": false, @@ -110,16 +159,42 @@ "type": "array", "typeInfo": "List" }, - "alloc::vec::Vec": { + "alloc::vec::Vec": { "isComponent": false, "isResource": false, "items": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_math::rects::urect::URect" } }, - "short_name": "Vec", - "title": "alloc::vec::Vec", + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_pbr::light::Cascade" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_text::glyph_brush::PositionedGlyph" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", "type": "array", "typeInfo": "List" }, @@ -136,6 +211,32 @@ "type": "array", "typeInfo": "List" }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridTrack" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::RepeatedGridTrack" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, "alloc::vec::Vec": { "isComponent": false, "isResource": false, @@ -175,6 +276,32 @@ "type": "array", "typeInfo": "List" }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/u16" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, + "alloc::vec::Vec": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "short_name": "Vec", + "title": "alloc::vec::Vec", + "type": "array", + "typeInfo": "List" + }, "bevy_animation::AnimationClip": { "additionalProperties": false, "isComponent": false, @@ -182,23 +309,17 @@ "properties": { "curves": { "type": { - "$ref": "#/$defs/alloc::vec::Vec>" + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::NoOpHash>" } }, "duration": { "type": { "$ref": "#/$defs/f32" } - }, - "paths": { - "type": { - "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" - } } }, "required": [ "curves", - "paths", "duration" ], "short_name": "AnimationClip", @@ -211,26 +332,67 @@ "isComponent": true, "isResource": false, "properties": { - "animation": { + "active_animations": { "type": { - "$ref": "#/$defs/bevy_animation::PlayingAnimation" + "$ref": "#/$defs/std::collections::BTreeMap" } }, - "paused": { + "blend_weights": { "type": { - "$ref": "#/$defs/bool" + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" } } }, "required": [ - "paused", - "animation" + "active_animations", + "blend_weights" ], "short_name": "AnimationPlayer", "title": "bevy_animation::AnimationPlayer", "type": "object", "typeInfo": "Struct" }, + "bevy_animation::AnimationTarget": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "id": { + "type": { + "$ref": "#/$defs/bevy_animation::AnimationTargetId" + } + }, + "player": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "id", + "player" + ], + "short_name": "AnimationTarget", + "title": "bevy_animation::AnimationTarget", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::AnimationTargetId": { + "isComponent": false, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + ], + "short_name": "AnimationTargetId", + "title": "bevy_animation::AnimationTargetId", + "type": "array", + "typeInfo": "TupleStruct" + }, "bevy_animation::Interpolation": { "isComponent": false, "isResource": false, @@ -341,6 +503,111 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_animation::graph::AnimationGraph": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "graph": { + "type": { + "$ref": "#/$defs/petgraph::graph::DiGraph" + } + }, + "root": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + } + }, + "required": [ + "graph", + "root" + ], + "short_name": "AnimationGraph", + "title": "bevy_animation::graph::AnimationGraph", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::transition::AnimationTransition": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "animation": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + }, + "current_weight": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "weight_decline_per_sec": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "current_weight", + "weight_decline_per_sec", + "animation" + ], + "short_name": "AnimationTransition", + "title": "bevy_animation::transition::AnimationTransition", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_animation::transition::AnimationTransitions": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "main_animation": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "transitions": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + } + }, + "required": [ + "transitions" + ], + "short_name": "AnimationTransitions", + "title": "bevy_animation::transition::AnimationTransitions", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_asset::assets::AssetIndex": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "generation": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "index": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "generation", + "index" + ], + "short_name": "AssetIndex", + "title": "bevy_asset::assets::AssetIndex", + "type": "object", + "typeInfo": "Struct" + }, "bevy_asset::handle::Handle<()>": { "isComponent": true, "isResource": false, @@ -417,6 +684,44 @@ "type": "object", "typeInfo": "Enum" }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "oneOf": [ + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "title": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "title": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "title": "bevy_asset::handle::Handle", + "type": "object", + "typeInfo": "Enum" + }, "bevy_asset::handle::Handle": { "isComponent": true, "isResource": false, @@ -493,6 +798,44 @@ "type": "object", "typeInfo": "Enum" }, + "bevy_asset::handle::Handle": { + "isComponent": true, + "isResource": false, + "oneOf": [ + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/std::sync::Arc" + } + } + ], + "short_name": "Strong", + "title": "Strong", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::id::AssetId" + } + } + ], + "short_name": "Weak", + "title": "Weak", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Handle", + "title": "bevy_asset::handle::Handle", + "type": "object", + "typeInfo": "Enum" + }, "bevy_asset::handle::Handle": { "isComponent": true, "isResource": false, @@ -835,44 +1178,6 @@ "type": "object", "typeInfo": "Enum" }, - "bevy_asset::handle::Handle": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/std::sync::Arc" - } - } - ], - "short_name": "Strong", - "title": "Strong", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::id::AssetId" - } - } - ], - "short_name": "Weak", - "title": "Weak", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "Handle", - "title": "bevy_asset::handle::Handle", - "type": "object", - "typeInfo": "Enum" - }, "bevy_asset::handle::Handle": { "isComponent": true, "isResource": false, @@ -1243,7 +1548,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1289,7 +1594,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1307,6 +1612,52 @@ "type": "object", "typeInfo": "Enum" }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "index": { + "title": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "title": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "properties": { + "uuid": { + "title": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "title": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "title": "bevy_asset::id::AssetId", + "type": "object", + "typeInfo": "Enum" + }, "bevy_asset::id::AssetId": { "isComponent": false, "isResource": false, @@ -1335,7 +1686,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1381,7 +1732,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1399,6 +1750,52 @@ "type": "object", "typeInfo": "Enum" }, + "bevy_asset::id::AssetId": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "index": { + "title": "index", + "type": { + "$ref": "#/$defs/bevy_asset::assets::AssetIndex" + } + } + }, + "required": [ + "index" + ], + "short_name": "Index", + "title": "Index", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "properties": { + "uuid": { + "title": "uuid", + "type": { + "$ref": "#/$defs/uuid::Uuid" + } + } + }, + "required": [ + "uuid" + ], + "short_name": "Uuid", + "title": "Uuid", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "AssetId", + "title": "bevy_asset::id::AssetId", + "type": "object", + "typeInfo": "Enum" + }, "bevy_asset::id::AssetId": { "isComponent": false, "isResource": false, @@ -1427,7 +1824,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1473,7 +1870,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1519,7 +1916,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1565,7 +1962,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1611,7 +2008,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1657,7 +2054,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1703,7 +2100,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1749,7 +2146,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1795,7 +2192,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1813,52 +2210,6 @@ "type": "object", "typeInfo": "Enum" }, - "bevy_asset::id::AssetId": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "index": { - "title": "index", - "type": { - "$ref": "#/$defs/bevy_asset::assets::AssetIndex" - } - } - }, - "required": [ - "index" - ], - "short_name": "Index", - "title": "Index", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "uuid": { - "title": "uuid", - "type": { - "$ref": "#/$defs/bevy_utils::Uuid" - } - } - }, - "required": [ - "uuid" - ], - "short_name": "Uuid", - "title": "Uuid", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "AssetId", - "title": "bevy_asset::id::AssetId", - "type": "object", - "typeInfo": "Enum" - }, "bevy_asset::id::AssetId": { "isComponent": false, "isResource": false, @@ -1887,7 +2238,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1933,7 +2284,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -1979,7 +2330,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2025,7 +2376,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2071,7 +2422,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2117,7 +2468,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2163,7 +2514,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2209,7 +2560,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2255,7 +2606,7 @@ "uuid": { "title": "uuid", "type": { - "$ref": "#/$defs/bevy_utils::Uuid" + "$ref": "#/$defs/uuid::Uuid" } } }, @@ -2273,11 +2624,11 @@ "type": "object", "typeInfo": "Enum" }, - "bevy_asset::path::AssetPath<'static>": { + "bevy_asset::path::AssetPath": { "isComponent": false, "isResource": false, - "short_name": "AssetPath<'static>", - "title": "bevy_asset::path::AssetPath<'static>", + "short_name": "AssetPath", + "title": "bevy_asset::path::AssetPath", "type": "object", "typeInfo": "Value" }, @@ -2403,6 +2754,22 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_audio::audio::SpatialScale": { + "isComponent": false, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec3" + } + } + ], + "short_name": "SpatialScale", + "title": "bevy_audio::audio::SpatialScale", + "type": "array", + "typeInfo": "TupleStruct" + }, "bevy_audio::audio::Volume": { "isComponent": false, "isResource": false, @@ -2679,7 +3046,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } } ], @@ -2818,7 +3185,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/alloc::vec::Vec" + "$ref": "#/$defs/alloc::vec::Vec" } } ], @@ -2843,6 +3210,526 @@ "type": "array", "typeInfo": "TupleStruct" }, + "bevy_color::color::Color": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::srgba::Srgba" + } + } + ], + "short_name": "Srgba", + "title": "Srgba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::linear_rgba::LinearRgba" + } + } + ], + "short_name": "LinearRgba", + "title": "LinearRgba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::hsla::Hsla" + } + } + ], + "short_name": "Hsla", + "title": "Hsla", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::hsva::Hsva" + } + } + ], + "short_name": "Hsva", + "title": "Hsva", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::hwba::Hwba" + } + } + ], + "short_name": "Hwba", + "title": "Hwba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::laba::Laba" + } + } + ], + "short_name": "Laba", + "title": "Laba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::lcha::Lcha" + } + } + ], + "short_name": "Lcha", + "title": "Lcha", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::oklaba::Oklaba" + } + } + ], + "short_name": "Oklaba", + "title": "Oklaba", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::oklcha::Oklcha" + } + } + ], + "short_name": "Oklcha", + "title": "Oklcha", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::xyza::Xyza" + } + } + ], + "short_name": "Xyza", + "title": "Xyza", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Color", + "title": "bevy_color::color::Color", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_color::hsla::Hsla": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "saturation": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "hue", + "saturation", + "lightness", + "alpha" + ], + "short_name": "Hsla", + "title": "bevy_color::hsla::Hsla", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::hsva::Hsva": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "saturation": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "value": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "hue", + "saturation", + "value", + "alpha" + ], + "short_name": "Hsva", + "title": "bevy_color::hsva::Hsva", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::hwba::Hwba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "blackness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "whiteness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "hue", + "whiteness", + "blackness", + "alpha" + ], + "short_name": "Hwba", + "title": "bevy_color::hwba::Hwba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::laba::Laba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "a": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "b": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "a", + "b", + "alpha" + ], + "short_name": "Laba", + "title": "bevy_color::laba::Laba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::lcha::Lcha": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "chroma": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "chroma", + "hue", + "alpha" + ], + "short_name": "Lcha", + "title": "bevy_color::lcha::Lcha", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::linear_rgba::LinearRgba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "blue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "green": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "red": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "red", + "green", + "blue", + "alpha" + ], + "short_name": "LinearRgba", + "title": "bevy_color::linear_rgba::LinearRgba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::oklaba::Oklaba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "a": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "b": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "a", + "b", + "alpha" + ], + "short_name": "Oklaba", + "title": "bevy_color::oklaba::Oklaba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::oklcha::Oklcha": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "chroma": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "lightness": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "lightness", + "chroma", + "hue", + "alpha" + ], + "short_name": "Oklcha", + "title": "bevy_color::oklcha::Oklcha", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::srgba::Srgba": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "blue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "green": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "red": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "red", + "green", + "blue", + "alpha" + ], + "short_name": "Srgba", + "title": "bevy_color::srgba::Srgba", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_color::xyza::Xyza": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "alpha": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "x": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "y": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "z": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "x", + "y", + "z", + "alpha" + ], + "short_name": "Xyza", + "title": "bevy_color::xyza::Xyza", + "type": "object", + "typeInfo": "Struct" + }, "bevy_core::name::Name": { "additionalProperties": false, "isComponent": true, @@ -3121,6 +4008,21 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_core_pipeline::fxaa::Sensitivity": { + "isComponent": false, + "isResource": false, + "oneOf": [ + "Low", + "Medium", + "High", + "Ultra", + "Extreme" + ], + "short_name": "Sensitivity", + "title": "bevy_core_pipeline::fxaa::Sensitivity", + "type": "string", + "typeInfo": "Enum" + }, "bevy_core_pipeline::prepass::DeferredPrepass": { "additionalProperties": false, "isComponent": false, @@ -3165,6 +4067,39 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_core_pipeline::smaa::SmaaPreset": { + "isComponent": false, + "isResource": false, + "oneOf": [ + "Low", + "Medium", + "High", + "Ultra" + ], + "short_name": "SmaaPreset", + "title": "bevy_core_pipeline::smaa::SmaaPreset", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_core_pipeline::smaa::SmaaSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "preset": { + "type": { + "$ref": "#/$defs/bevy_core_pipeline::smaa::SmaaPreset" + } + } + }, + "required": [ + "preset" + ], + "short_name": "SmaaSettings", + "title": "bevy_core_pipeline::smaa::SmaaSettings", + "type": "object", + "typeInfo": "Struct" + }, "bevy_core_pipeline::tonemapping::DebandDither": { "isComponent": true, "isResource": false, @@ -3195,66 +4130,6 @@ "type": "string", "typeInfo": "Enum" }, - "bevy_ecs::component::ComponentId": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/usize" - } - } - ], - "short_name": "ComponentId", - "title": "bevy_ecs::component::ComponentId", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_ecs::component::ComponentTicks": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "added": { - "type": { - "$ref": "#/$defs/bevy_ecs::component::Tick" - } - }, - "changed": { - "type": { - "$ref": "#/$defs/bevy_ecs::component::Tick" - } - } - }, - "required": [ - "added", - "changed" - ], - "short_name": "ComponentTicks", - "title": "bevy_ecs::component::ComponentTicks", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_ecs::component::Tick": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "tick": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "tick" - ], - "short_name": "Tick", - "title": "bevy_ecs::component::Tick", - "type": "object", - "typeInfo": "Struct" - }, "bevy_ecs::entity::Entity": { "isComponent": false, "isResource": false, @@ -3263,30 +4138,6 @@ "type": "object", "typeInfo": "Value" }, - "bevy_egui::EguiSettings": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "default_open_url_target": { - "type": { - "$ref": "#/$defs/core::option::Option" - } - }, - "scale_factor": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "scale_factor" - ], - "short_name": "EguiSettings", - "title": "bevy_egui::EguiSettings", - "type": "object", - "typeInfo": "Struct" - }, "bevy_gizmos::aabb::AabbGizmoConfigGroup": { "additionalProperties": false, "isComponent": false, @@ -3294,7 +4145,7 @@ "properties": { "default_color": { "type": { - "$ref": "#/$defs/core::option::Option" + "$ref": "#/$defs/core::option::Option" } }, "draw_all": { @@ -3326,11 +4177,21 @@ "$ref": "#/$defs/bool" } }, + "line_joints": { + "type": { + "$ref": "#/$defs/bevy_gizmos::config::GizmoLineJoint" + } + }, "line_perspective": { "type": { "$ref": "#/$defs/bool" } }, + "line_style": { + "type": { + "$ref": "#/$defs/bevy_gizmos::config::GizmoLineStyle" + } + }, "line_width": { "type": { "$ref": "#/$defs/f32" @@ -3346,14 +4207,148 @@ "enabled", "line_width", "line_perspective", + "line_style", "depth_bias", - "render_layers" + "render_layers", + "line_joints" ], "short_name": "GizmoConfig", "title": "bevy_gizmos::config::GizmoConfig", "type": "object", "typeInfo": "Struct" }, + "bevy_gizmos::config::GizmoConfigStore": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "properties": {}, + "required": [], + "short_name": "GizmoConfigStore", + "title": "bevy_gizmos::config::GizmoConfigStore", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gizmos::config::GizmoLineJoint": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "title": "Miter" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u32" + } + } + ], + "short_name": "Round", + "title": "Round", + "type": "array", + "typeInfo": "Tuple" + }, + { + "title": "Bevel" + } + ], + "short_name": "GizmoLineJoint", + "title": "bevy_gizmos::config::GizmoLineJoint", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_gizmos::config::GizmoLineStyle": { + "isComponent": false, + "isResource": false, + "oneOf": [ + "Solid", + "Dotted" + ], + "short_name": "GizmoLineStyle", + "title": "bevy_gizmos::config::GizmoLineStyle", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_gizmos::light::LightGizmoColor": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "Manual", + "title": "Manual", + "type": "array", + "typeInfo": "Tuple" + }, + { + "title": "Varied" + }, + { + "title": "MatchLightColor" + }, + { + "title": "ByLightType" + } + ], + "short_name": "LightGizmoColor", + "title": "bevy_gizmos::light::LightGizmoColor", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_gizmos::light::LightGizmoConfigGroup": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_gizmos::light::LightGizmoColor" + } + }, + "directional_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "draw_all": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "point_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "spot_light_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + }, + "required": [ + "draw_all", + "color", + "point_light_color", + "spot_light_color", + "directional_light_color" + ], + "short_name": "LightGizmoConfigGroup", + "title": "bevy_gizmos::light::LightGizmoConfigGroup", + "type": "object", + "typeInfo": "Struct" + }, "bevy_gltf::GltfExtras": { "additionalProperties": false, "isComponent": true, @@ -3373,19 +4368,88 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_gltf::GltfMaterialExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfMaterialExtras", + "title": "bevy_gltf::GltfMaterialExtras", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gltf::GltfMeshExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfMeshExtras", + "title": "bevy_gltf::GltfMeshExtras", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_gltf::GltfSceneExtras": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "value": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "value" + ], + "short_name": "GltfSceneExtras", + "title": "bevy_gltf::GltfSceneExtras", + "type": "object", + "typeInfo": "Struct" + }, "bevy_gltf_blueprints::animation::Animations": { "additionalProperties": false, "isComponent": true, "isResource": false, "properties": { + "graph": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, "named_animations": { "type": { "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" } + }, + "named_indices": { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap" + } } }, "required": [ - "named_animations" + "named_animations", + "named_indices", + "graph" ], "short_name": "Animations", "title": "bevy_gltf_blueprints::animation::Animations", @@ -3433,6 +4497,22 @@ "type": "array", "typeInfo": "TupleStruct" }, + "bevy_gltf_blueprints::spawn_from_blueprints::BlueprintsList": { + "isComponent": true, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + } + ], + "short_name": "BlueprintsList", + "title": "bevy_gltf_blueprints::spawn_from_blueprints::BlueprintsList", + "type": "array", + "typeInfo": "TupleStruct" + }, "bevy_gltf_blueprints::spawn_from_blueprints::SpawnHere": { "additionalProperties": false, "isComponent": true, @@ -3462,7 +4542,7 @@ "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "strength": { @@ -3688,7 +4768,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>" + "$ref": "#/$defs/smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>" } } ], @@ -3868,6 +4948,37 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_input::gamepad::GamepadAxisChangedEvent": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "axis_type": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadAxisType" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + }, + "value": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "gamepad", + "axis_type", + "value" + ], + "short_name": "GamepadAxisChangedEvent", + "title": "bevy_input::gamepad::GamepadAxisChangedEvent", + "type": "object", + "typeInfo": "Struct" + }, "bevy_input::gamepad::GamepadAxisType": { "isComponent": false, "isResource": false, @@ -3935,6 +5046,37 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_input::gamepad::GamepadButtonChangedEvent": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "button_type": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButtonType" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + }, + "value": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "gamepad", + "button_type", + "value" + ], + "short_name": "GamepadButtonChangedEvent", + "title": "bevy_input::gamepad::GamepadButtonChangedEvent", + "type": "object", + "typeInfo": "Struct" + }, "bevy_input::gamepad::GamepadButtonInput": { "additionalProperties": false, "isComponent": false, @@ -4068,6 +5210,102 @@ "type": "object", "typeInfo": "Enum" }, + "bevy_input::gamepad::GamepadConnectionEvent": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "connection": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadConnection" + } + }, + "gamepad": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::Gamepad" + } + } + }, + "required": [ + "gamepad", + "connection" + ], + "short_name": "GamepadConnectionEvent", + "title": "bevy_input::gamepad::GamepadConnectionEvent", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gamepad::GamepadEvent": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadConnectionEvent" + } + } + ], + "short_name": "Connection", + "title": "Connection", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadButtonChangedEvent" + } + } + ], + "short_name": "Button", + "title": "Button", + "type": "array", + "typeInfo": "Tuple" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::GamepadAxisChangedEvent" + } + } + ], + "short_name": "Axis", + "title": "Axis", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "GamepadEvent", + "title": "bevy_input::gamepad::GamepadEvent", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_input::gamepad::GamepadInfo": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "name": { + "type": { + "$ref": "#/$defs/alloc::string::String" + } + } + }, + "required": [ + "name" + ], + "short_name": "GamepadInfo", + "title": "bevy_input::gamepad::GamepadInfo", + "type": "object", + "typeInfo": "Struct" + }, "bevy_input::gamepad::GamepadSettings": { "additionalProperties": false, "isComponent": false, @@ -4117,6 +5355,65 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_input::gestures::DoubleTapGesture": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": {}, + "required": [], + "short_name": "DoubleTapGesture", + "title": "bevy_input::gestures::DoubleTapGesture", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_input::gestures::PanGesture": { + "isComponent": false, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + ], + "short_name": "PanGesture", + "title": "bevy_input::gestures::PanGesture", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_input::gestures::PinchGesture": { + "isComponent": false, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "PinchGesture", + "title": "bevy_input::gestures::PinchGesture", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_input::gestures::RotationGesture": { + "isComponent": false, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "RotationGesture", + "title": "bevy_input::gestures::RotationGesture", + "type": "array", + "typeInfo": "TupleStruct" + }, "bevy_input::keyboard::Key": { "isComponent": false, "isResource": false, @@ -5952,74 +7249,6 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_input::mouse::MouseMotion": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "delta": { - "type": { - "$ref": "#/$defs/glam::Vec2" - } - } - }, - "required": [ - "delta" - ], - "short_name": "MouseMotion", - "title": "bevy_input::mouse::MouseMotion", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_input::mouse::MouseScrollUnit": { - "isComponent": false, - "isResource": false, - "oneOf": [ - "Line", - "Pixel" - ], - "short_name": "MouseScrollUnit", - "title": "bevy_input::mouse::MouseScrollUnit", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_input::mouse::MouseWheel": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "unit": { - "type": { - "$ref": "#/$defs/bevy_input::mouse::MouseScrollUnit" - } - }, - "window": { - "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "unit", - "x", - "y", - "window" - ], - "short_name": "MouseWheel", - "title": "bevy_input::mouse::MouseWheel", - "type": "object", - "typeInfo": "Struct" - }, "bevy_input::touch::ForceTouch": { "isComponent": false, "isResource": false, @@ -6131,39 +7360,7 @@ "type": "string", "typeInfo": "Enum" }, - "bevy_input::touchpad::TouchpadMagnify": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "TouchpadMagnify", - "title": "bevy_input::touchpad::TouchpadMagnify", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_input::touchpad::TouchpadRotate": { - "isComponent": false, - "isResource": false, - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "TouchpadRotate", - "title": "bevy_input::touchpad::TouchpadRotate", - "type": "array", - "typeInfo": "TupleStruct" - }, - "bevy_math::Rect": { + "bevy_math::rects::rect::Rect": { "additionalProperties": false, "isComponent": false, "isResource": false, @@ -6184,48 +7381,34 @@ "max" ], "short_name": "Rect", - "title": "bevy_math::Rect", + "title": "bevy_math::rects::rect::Rect", "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::alpha::AlphaMode": { + "bevy_math::rects::urect::URect": { + "additionalProperties": false, "isComponent": false, "isResource": false, - "oneOf": [ - { - "title": "Opaque" + "properties": { + "max": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Mask", - "title": "Mask", - "type": "array", - "typeInfo": "Tuple" - }, - { - "title": "Blend" - }, - { - "title": "Premultiplied" - }, - { - "title": "Add" - }, - { - "title": "Multiply" + "min": { + "type": { + "$ref": "#/$defs/glam::UVec2" + } } + }, + "required": [ + "min", + "max" ], - "short_name": "AlphaMode", - "title": "bevy_pbr::alpha::AlphaMode", + "short_name": "URect", + "title": "bevy_math::rects::urect::URect", "type": "object", - "typeInfo": "Enum" + "typeInfo": "Struct" }, "bevy_pbr::bundle::CascadesVisibleEntities": { "additionalProperties": false, @@ -6249,6 +7432,145 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_pbr::cluster::ClusterConfig": { + "isComponent": true, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "title": "Single" + }, + { + "additionalProperties": false, + "properties": { + "dimensions": { + "title": "dimensions", + "type": { + "$ref": "#/$defs/glam::UVec3" + } + }, + "dynamic_resizing": { + "title": "dynamic_resizing", + "type": { + "$ref": "#/$defs/bool" + } + }, + "z_config": { + "title": "z_config", + "type": { + "$ref": "#/$defs/bevy_pbr::cluster::ClusterZConfig" + } + } + }, + "required": [ + "dimensions", + "z_config", + "dynamic_resizing" + ], + "short_name": "XYZ", + "title": "XYZ", + "type": "object", + "typeInfo": "Struct" + }, + { + "additionalProperties": false, + "properties": { + "dynamic_resizing": { + "title": "dynamic_resizing", + "type": { + "$ref": "#/$defs/bool" + } + }, + "total": { + "title": "total", + "type": { + "$ref": "#/$defs/u32" + } + }, + "z_config": { + "title": "z_config", + "type": { + "$ref": "#/$defs/bevy_pbr::cluster::ClusterZConfig" + } + }, + "z_slices": { + "title": "z_slices", + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "total", + "z_slices", + "z_config", + "dynamic_resizing" + ], + "short_name": "FixedZ", + "title": "FixedZ", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "ClusterConfig", + "title": "bevy_pbr::cluster::ClusterConfig", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::cluster::ClusterFarZMode": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "MaxClusterableObjectRange" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Constant", + "title": "Constant", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "ClusterFarZMode", + "title": "bevy_pbr::cluster::ClusterFarZMode", + "type": "object", + "typeInfo": "Enum" + }, + "bevy_pbr::cluster::ClusterZConfig": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "far_z_mode": { + "type": { + "$ref": "#/$defs/bevy_pbr::cluster::ClusterFarZMode" + } + }, + "first_slice_depth": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "first_slice_depth", + "far_z_mode" + ], + "short_name": "ClusterZConfig", + "title": "bevy_pbr::cluster::ClusterZConfig", + "type": "object", + "typeInfo": "Struct" + }, "bevy_pbr::fog::FogFalloff": { "isComponent": false, "isResource": false, @@ -6352,12 +7674,12 @@ "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "directional_light_color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "directional_light_exponent": { @@ -6382,37 +7704,17 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::light::AmbientLight": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "brightness": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - }, - "required": [ - "color", - "brightness" - ], - "short_name": "AmbientLight", - "title": "bevy_pbr::light::AmbientLight", - "type": "object", - "typeInfo": "Struct" - }, "bevy_pbr::light::Cascade": { "additionalProperties": false, "isComponent": false, "isResource": false, "properties": { - "projection": { + "clip_from_cascade": { + "type": { + "$ref": "#/$defs/glam::Mat4" + } + }, + "clip_from_world": { "type": { "$ref": "#/$defs/glam::Mat4" } @@ -6422,21 +7724,16 @@ "$ref": "#/$defs/f32" } }, - "view_projection": { - "type": { - "$ref": "#/$defs/glam::Mat4" - } - }, - "view_transform": { + "world_from_cascade": { "type": { "$ref": "#/$defs/glam::Mat4" } } }, "required": [ - "view_transform", - "projection", - "view_projection", + "world_from_cascade", + "clip_from_cascade", + "clip_from_world", "texel_size" ], "short_name": "Cascade", @@ -6494,188 +7791,6 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::light::ClusterConfig": { - "isComponent": true, - "isResource": false, - "oneOf": [ - { - "title": "None" - }, - { - "title": "Single" - }, - { - "additionalProperties": false, - "properties": { - "dimensions": { - "title": "dimensions", - "type": { - "$ref": "#/$defs/glam::UVec3" - } - }, - "dynamic_resizing": { - "title": "dynamic_resizing", - "type": { - "$ref": "#/$defs/bool" - } - }, - "z_config": { - "title": "z_config", - "type": { - "$ref": "#/$defs/bevy_pbr::light::ClusterZConfig" - } - } - }, - "required": [ - "dimensions", - "z_config", - "dynamic_resizing" - ], - "short_name": "XYZ", - "title": "XYZ", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "dynamic_resizing": { - "title": "dynamic_resizing", - "type": { - "$ref": "#/$defs/bool" - } - }, - "total": { - "title": "total", - "type": { - "$ref": "#/$defs/u32" - } - }, - "z_config": { - "title": "z_config", - "type": { - "$ref": "#/$defs/bevy_pbr::light::ClusterZConfig" - } - }, - "z_slices": { - "title": "z_slices", - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "total", - "z_slices", - "z_config", - "dynamic_resizing" - ], - "short_name": "FixedZ", - "title": "FixedZ", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "ClusterConfig", - "title": "bevy_pbr::light::ClusterConfig", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::light::ClusterFarZMode": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "title": "MaxLightRange" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/f32" - } - } - ], - "short_name": "Constant", - "title": "Constant", - "type": "array", - "typeInfo": "Tuple" - } - ], - "short_name": "ClusterFarZMode", - "title": "bevy_pbr::light::ClusterFarZMode", - "type": "object", - "typeInfo": "Enum" - }, - "bevy_pbr::light::ClusterZConfig": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "far_z_mode": { - "type": { - "$ref": "#/$defs/bevy_pbr::light::ClusterFarZMode" - } - }, - "first_slice_depth": { - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "first_slice_depth", - "far_z_mode" - ], - "short_name": "ClusterZConfig", - "title": "bevy_pbr::light::ClusterZConfig", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::DirectionalLight": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": { - "color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - }, - "illuminance": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_depth_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadow_normal_bias": { - "type": { - "$ref": "#/$defs/f32" - } - }, - "shadows_enabled": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "color", - "illuminance", - "shadows_enabled", - "shadow_depth_bias", - "shadow_normal_bias" - ], - "short_name": "DirectionalLight", - "title": "bevy_pbr::light::DirectionalLight", - "type": "object", - "typeInfo": "Struct" - }, "bevy_pbr::light::DirectionalLightShadowMap": { "additionalProperties": false, "isComponent": false, @@ -6717,14 +7832,114 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::light::PointLight": { + "bevy_pbr::light::PointLightShadowMap": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "properties": { + "size": { + "type": { + "$ref": "#/$defs/usize" + } + } + }, + "required": [ + "size" + ], + "short_name": "PointLightShadowMap", + "title": "bevy_pbr::light::PointLightShadowMap", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::ShadowFilteringMethod": { + "isComponent": true, + "isResource": false, + "oneOf": [ + "Hardware2x2", + "Gaussian", + "Temporal" + ], + "short_name": "ShadowFilteringMethod", + "title": "bevy_pbr::light::ShadowFilteringMethod", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_pbr::light::ambient_light::AmbientLight": { + "additionalProperties": false, + "isComponent": false, + "isResource": true, + "properties": { + "brightness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + }, + "required": [ + "color", + "brightness" + ], + "short_name": "AmbientLight", + "title": "bevy_pbr::light::ambient_light::AmbientLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::directional_light::DirectionalLight": { "additionalProperties": false, "isComponent": true, "isResource": false, "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "illuminance": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_depth_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadow_normal_bias": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "shadows_enabled": { + "type": { + "$ref": "#/$defs/bool" + } + } + }, + "required": [ + "color", + "illuminance", + "shadows_enabled", + "shadow_depth_bias", + "shadow_normal_bias" + ], + "short_name": "DirectionalLight", + "title": "bevy_pbr::light::directional_light::DirectionalLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::light::point_light::PointLight": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" } }, "intensity": { @@ -6768,50 +7983,18 @@ "shadow_normal_bias" ], "short_name": "PointLight", - "title": "bevy_pbr::light::PointLight", + "title": "bevy_pbr::light::point_light::PointLight", "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::light::PointLightShadowMap": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "size": { - "type": { - "$ref": "#/$defs/usize" - } - } - }, - "required": [ - "size" - ], - "short_name": "PointLightShadowMap", - "title": "bevy_pbr::light::PointLightShadowMap", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::light::ShadowFilteringMethod": { - "isComponent": true, - "isResource": false, - "oneOf": [ - "Hardware2x2", - "Castano13", - "Jimenez14" - ], - "short_name": "ShadowFilteringMethod", - "title": "bevy_pbr::light::ShadowFilteringMethod", - "type": "string", - "typeInfo": "Enum" - }, - "bevy_pbr::light::SpotLight": { + "bevy_pbr::light::spot_light::SpotLight": { "additionalProperties": false, "isComponent": true, "isResource": false, "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "inner_angle": { @@ -6867,7 +8050,7 @@ "inner_angle" ], "short_name": "SpotLight", - "title": "bevy_pbr::light::SpotLight", + "title": "bevy_pbr::light::spot_light::SpotLight", "type": "object", "typeInfo": "Struct" }, @@ -7005,12 +8188,22 @@ "properties": { "alpha_mode": { "type": { - "$ref": "#/$defs/bevy_pbr::alpha::AlphaMode" + "$ref": "#/$defs/bevy_render::alpha::AlphaMode" + } + }, + "anisotropy_rotation": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "anisotropy_strength": { + "type": { + "$ref": "#/$defs/f32" } }, "attenuation_color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "attenuation_distance": { @@ -7020,7 +8213,12 @@ }, "base_color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "base_color_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" } }, "base_color_texture": { @@ -7028,6 +8226,16 @@ "$ref": "#/$defs/core::option::Option>" } }, + "clearcoat": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "clearcoat_perceptual_roughness": { + "type": { + "$ref": "#/$defs/f32" + } + }, "deferred_lighting_pass_id": { "type": { "$ref": "#/$defs/u8" @@ -7055,7 +8263,17 @@ }, "emissive": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::linear_rgba::LinearRgba" + } + }, + "emissive_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, + "emissive_exposure_weight": { + "type": { + "$ref": "#/$defs/f32" } }, "emissive_texture": { @@ -7093,16 +8311,31 @@ "$ref": "#/$defs/f32" } }, + "metallic_roughness_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, "metallic_roughness_texture": { "type": { "$ref": "#/$defs/core::option::Option>" } }, + "normal_map_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, "normal_map_texture": { "type": { "$ref": "#/$defs/core::option::Option>" } }, + "occlusion_channel": { + "type": { + "$ref": "#/$defs/bevy_pbr::pbr_material::UvChannel" + } + }, "occlusion_texture": { "type": { "$ref": "#/$defs/core::option::Option>" @@ -7147,13 +8380,22 @@ "type": { "$ref": "#/$defs/bool" } + }, + "uv_transform": { + "type": { + "$ref": "#/$defs/glam::Affine2" + } } }, "required": [ "base_color", + "base_color_channel", "emissive", + "emissive_exposure_weight", + "emissive_channel", "perceptual_roughness", "metallic", + "metallic_roughness_channel", "reflectance", "diffuse_transmission", "specular_transmission", @@ -7161,7 +8403,13 @@ "ior", "attenuation_distance", "attenuation_color", + "normal_map_channel", "flip_normal_map_y", + "occlusion_channel", + "clearcoat", + "clearcoat_perceptual_roughness", + "anisotropy_strength", + "anisotropy_rotation", "double_sided", "unlit", "fog_enabled", @@ -7172,13 +8420,73 @@ "max_parallax_layer_count", "lightmap_exposure", "opaque_render_method", - "deferred_lighting_pass_id" + "deferred_lighting_pass_id", + "uv_transform" ], "short_name": "StandardMaterial", "title": "bevy_pbr::pbr_material::StandardMaterial", "type": "object", "typeInfo": "Struct" }, + "bevy_pbr::pbr_material::UvChannel": { + "isComponent": false, + "isResource": false, + "oneOf": [ + "Uv0", + "Uv1" + ], + "short_name": "UvChannel", + "title": "bevy_pbr::pbr_material::UvChannel", + "type": "string", + "typeInfo": "Enum" + }, + "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionQualityLevel": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "Low" + }, + { + "title": "Medium" + }, + { + "title": "High" + }, + { + "title": "Ultra" + }, + { + "additionalProperties": false, + "properties": { + "samples_per_slice_side": { + "title": "samples_per_slice_side", + "type": { + "$ref": "#/$defs/u32" + } + }, + "slice_count": { + "title": "slice_count", + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "slice_count", + "samples_per_slice_side" + ], + "short_name": "Custom", + "title": "Custom", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "ScreenSpaceAmbientOcclusionQualityLevel", + "title": "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionQualityLevel", + "type": "object", + "typeInfo": "Enum" + }, "bevy_pbr::ssao::ScreenSpaceAmbientOcclusionSettings": { "additionalProperties": false, "isComponent": true, @@ -7198,72 +8506,159 @@ "type": "object", "typeInfo": "Struct" }, - "bevy_pbr::wireframe::NoWireframe": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "NoWireframe", - "title": "bevy_pbr::wireframe::NoWireframe", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::Wireframe": { - "additionalProperties": false, - "isComponent": true, - "isResource": false, - "properties": {}, - "required": [], - "short_name": "Wireframe", - "title": "bevy_pbr::wireframe::Wireframe", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::WireframeColor": { + "bevy_pbr::ssr::ScreenSpaceReflectionsSettings": { "additionalProperties": false, "isComponent": true, "isResource": false, "properties": { - "color": { + "bisection_steps": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" - } - } - }, - "required": [ - "color" - ], - "short_name": "WireframeColor", - "title": "bevy_pbr::wireframe::WireframeColor", - "type": "object", - "typeInfo": "Struct" - }, - "bevy_pbr::wireframe::WireframeConfig": { - "additionalProperties": false, - "isComponent": false, - "isResource": true, - "properties": { - "default_color": { - "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/u32" } }, - "global": { + "linear_march_exponent": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "linear_steps": { + "type": { + "$ref": "#/$defs/u32" + } + }, + "perceptual_roughness_threshold": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "thickness": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "use_secant": { "type": { "$ref": "#/$defs/bool" } } }, "required": [ - "global", - "default_color" + "perceptual_roughness_threshold", + "thickness", + "linear_steps", + "linear_march_exponent", + "bisection_steps", + "use_secant" ], - "short_name": "WireframeConfig", - "title": "bevy_pbr::wireframe::WireframeConfig", + "short_name": "ScreenSpaceReflectionsSettings", + "title": "bevy_pbr::ssr::ScreenSpaceReflectionsSettings", "type": "object", "typeInfo": "Struct" }, + "bevy_pbr::volumetric_fog::VolumetricFogSettings": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "absorption": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "ambient_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "ambient_intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "density": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "fog_color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "light_intensity": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "light_tint": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, + "max_depth": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scattering": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "scattering_asymmetry": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "step_count": { + "type": { + "$ref": "#/$defs/u32" + } + } + }, + "required": [ + "fog_color", + "ambient_color", + "ambient_intensity", + "step_count", + "max_depth", + "absorption", + "scattering", + "density", + "scattering_asymmetry", + "light_tint", + "light_intensity" + ], + "short_name": "VolumetricFogSettings", + "title": "bevy_pbr::volumetric_fog::VolumetricFogSettings", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_pbr::volumetric_fog::VolumetricLight": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": {}, + "required": [], + "short_name": "VolumetricLight", + "title": "bevy_pbr::volumetric_fog::VolumetricLight", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_rapier3d::dynamics::CoefficientCombineRule": { + "isComponent": false, + "isResource": false, + "oneOf": [ + "Average", + "Min", + "Multiply", + "Max" + ], + "short_name": "CoefficientCombineRule", + "title": "bevy_rapier3d::dynamics::CoefficientCombineRule", + "type": "string", + "typeInfo": "Enum" + }, "bevy_rapier3d::dynamics::rigid_body::AdditionalMassProperties": { "isComponent": true, "isResource": false, @@ -7508,7 +8903,7 @@ "$ref": "#/$defs/f32" } }, - "linear_threshold": { + "normalized_linear_threshold": { "type": { "$ref": "#/$defs/f32" } @@ -7520,7 +8915,7 @@ } }, "required": [ - "linear_threshold", + "normalized_linear_threshold", "angular_threshold", "sleeping" ], @@ -7529,6 +8924,25 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_rapier3d::dynamics::rigid_body::SoftCcd": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "prediction": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "prediction" + ], + "short_name": "SoftCcd", + "title": "bevy_rapier3d::dynamics::rigid_body::SoftCcd", + "type": "object", + "typeInfo": "Struct" + }, "bevy_rapier3d::dynamics::rigid_body::Velocity": { "additionalProperties": false, "isComponent": true, @@ -7561,7 +8975,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_utils::HashSet" + "$ref": "#/$defs/bevy_utils::hashbrown::HashSet" } } ], @@ -7611,6 +9025,22 @@ "type": "array", "typeInfo": "TupleStruct" }, + "bevy_rapier3d::geometry::collider::ContactSkin": { + "isComponent": true, + "isResource": false, + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "ContactSkin", + "title": "bevy_rapier3d::geometry::collider::ContactSkin", + "type": "array", + "typeInfo": "TupleStruct" + }, "bevy_rapier3d::geometry::collider::Friction": { "additionalProperties": false, "isComponent": true, @@ -7732,6 +9162,48 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_render::alpha::AlphaMode": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "Opaque" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/f32" + } + } + ], + "short_name": "Mask", + "title": "Mask", + "type": "array", + "typeInfo": "Tuple" + }, + { + "title": "Blend" + }, + { + "title": "Premultiplied" + }, + { + "title": "AlphaToCoverage" + }, + { + "title": "Add" + }, + { + "title": "Multiply" + } + ], + "short_name": "AlphaMode", + "title": "bevy_render::alpha::AlphaMode", + "type": "object", + "typeInfo": "Enum" + }, "bevy_render::camera::camera::Camera": { "additionalProperties": false, "isComponent": true, @@ -7804,57 +9276,40 @@ "type": "object", "typeInfo": "Value" }, - "bevy_render::camera::camera::RenderTarget": { - "isComponent": false, + "bevy_render::camera::camera::MipBias": { + "isComponent": true, "isResource": false, - "oneOf": [ + "items": false, + "prefixItems": [ { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_window::window::WindowRef" - } - } - ], - "short_name": "Window", - "title": "Window", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_asset::handle::Handle" - } - } - ], - "short_name": "Image", - "title": "Image", - "type": "array", - "typeInfo": "Tuple" - }, - { - "items": false, - "prefixItems": [ - { - "type": { - "$ref": "#/$defs/bevy_render::camera::manual_texture_view::ManualTextureViewHandle" - } - } - ], - "short_name": "TextureView", - "title": "TextureView", - "type": "array", - "typeInfo": "Tuple" + "type": { + "$ref": "#/$defs/f32" + } } ], - "short_name": "RenderTarget", - "title": "bevy_render::camera::camera::RenderTarget", + "short_name": "MipBias", + "title": "bevy_render::camera::camera::MipBias", + "type": "array", + "typeInfo": "TupleStruct" + }, + "bevy_render::camera::camera::TemporalJitter": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": { + "offset": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "offset" + ], + "short_name": "TemporalJitter", + "title": "bevy_render::camera::camera::TemporalJitter", "type": "object", - "typeInfo": "Enum" + "typeInfo": "Struct" }, "bevy_render::camera::camera::Viewport": { "additionalProperties": false, @@ -7894,7 +9349,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } } ], @@ -7915,7 +9370,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } } ], @@ -7940,7 +9395,7 @@ "properties": { "area": { "type": { - "$ref": "#/$defs/bevy_math::Rect" + "$ref": "#/$defs/bevy_math::rects::rect::Rect" } }, "far": { @@ -8184,172 +9639,6 @@ "type": "object", "typeInfo": "Enum" }, - "bevy_render::color::Color": { - "isComponent": false, - "isResource": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "blue": { - "title": "blue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "green": { - "title": "green", - "type": { - "$ref": "#/$defs/f32" - } - }, - "red": { - "title": "red", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "red", - "green", - "blue", - "alpha" - ], - "short_name": "Rgba", - "title": "Rgba", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "blue": { - "title": "blue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "green": { - "title": "green", - "type": { - "$ref": "#/$defs/f32" - } - }, - "red": { - "title": "red", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "red", - "green", - "blue", - "alpha" - ], - "short_name": "RgbaLinear", - "title": "RgbaLinear", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "hue": { - "title": "hue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "lightness": { - "title": "lightness", - "type": { - "$ref": "#/$defs/f32" - } - }, - "saturation": { - "title": "saturation", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "hue", - "saturation", - "lightness", - "alpha" - ], - "short_name": "Hsla", - "title": "Hsla", - "type": "object", - "typeInfo": "Struct" - }, - { - "additionalProperties": false, - "properties": { - "alpha": { - "title": "alpha", - "type": { - "$ref": "#/$defs/f32" - } - }, - "chroma": { - "title": "chroma", - "type": { - "$ref": "#/$defs/f32" - } - }, - "hue": { - "title": "hue", - "type": { - "$ref": "#/$defs/f32" - } - }, - "lightness": { - "title": "lightness", - "type": { - "$ref": "#/$defs/f32" - } - } - }, - "required": [ - "lightness", - "chroma", - "hue", - "alpha" - ], - "short_name": "Lcha", - "title": "Lcha", - "type": "object", - "typeInfo": "Struct" - } - ], - "short_name": "Color", - "title": "bevy_render::color::Color", - "type": "object", - "typeInfo": "Enum" - }, "bevy_render::globals::GlobalsUniform": { "additionalProperties": false, "isComponent": false, @@ -8579,6 +9868,14 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_render::render_asset::RenderAssetUsages": { + "isComponent": false, + "isResource": false, + "short_name": "RenderAssetUsages", + "title": "bevy_render::render_asset::RenderAssetUsages", + "type": "object", + "typeInfo": "Value" + }, "bevy_render::texture::image::Image": { "isComponent": false, "isResource": false, @@ -8591,36 +9888,128 @@ "additionalProperties": false, "isComponent": true, "isResource": false, + "properties": { + "global": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingGlobal" + } + }, + "highlights": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingSection" + } + }, + "midtones": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingSection" + } + }, + "shadows": { + "type": { + "$ref": "#/$defs/bevy_render::view::ColorGradingSection" + } + } + }, + "required": [ + "global", + "shadows", + "midtones", + "highlights" + ], + "short_name": "ColorGrading", + "title": "bevy_render::view::ColorGrading", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::ColorGradingGlobal": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, "properties": { "exposure": { "type": { "$ref": "#/$defs/f32" } }, + "hue": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "midtones_range": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + }, + "post_saturation": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "temperature": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "tint": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "exposure", + "temperature", + "tint", + "hue", + "post_saturation", + "midtones_range" + ], + "short_name": "ColorGradingGlobal", + "title": "bevy_render::view::ColorGradingGlobal", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_render::view::ColorGradingSection": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "contrast": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "gain": { + "type": { + "$ref": "#/$defs/f32" + } + }, "gamma": { "type": { "$ref": "#/$defs/f32" } }, - "post_saturation": { + "lift": { "type": { "$ref": "#/$defs/f32" } }, - "pre_saturation": { + "saturation": { "type": { "$ref": "#/$defs/f32" } } }, "required": [ - "exposure", + "saturation", + "contrast", "gamma", - "pre_saturation", - "post_saturation" + "gain", + "lift" ], - "short_name": "ColorGrading", - "title": "bevy_render::view::ColorGrading", + "short_name": "ColorGradingSection", + "title": "bevy_render::view::ColorGradingSection", "type": "object", "typeInfo": "Struct" }, @@ -8705,6 +10094,31 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_render::view::visibility::range::VisibilityRange": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "end_margin": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + }, + "start_margin": { + "type": { + "$ref": "#/$defs/core::ops::Range" + } + } + }, + "required": [ + "start_margin", + "end_margin" + ], + "short_name": "VisibilityRange", + "title": "bevy_render::view::visibility::range::VisibilityRange", + "type": "object", + "typeInfo": "Struct" + }, "bevy_render::view::visibility::render_layers::RenderLayers": { "isComponent": true, "isResource": false, @@ -8712,7 +10126,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/u32" + "$ref": "#/$defs/smallvec::SmallVec<[u64; 1]>" } } ], @@ -8721,6 +10135,17 @@ "type": "array", "typeInfo": "TupleStruct" }, + "bevy_sprite::SpriteSource": { + "additionalProperties": false, + "isComponent": true, + "isResource": false, + "properties": {}, + "required": [], + "short_name": "SpriteSource", + "title": "bevy_sprite::SpriteSource", + "type": "object", + "typeInfo": "Struct" + }, "bevy_sprite::mesh2d::color_material::ColorMaterial": { "additionalProperties": false, "isComponent": false, @@ -8728,7 +10153,7 @@ "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "texture": { @@ -8880,7 +10305,7 @@ }, "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "custom_size": { @@ -8900,7 +10325,7 @@ }, "rect": { "type": { - "$ref": "#/$defs/core::option::Option" + "$ref": "#/$defs/core::option::Option" } } }, @@ -8947,7 +10372,7 @@ "properties": { "size": { "type": { - "$ref": "#/$defs/glam::Vec2" + "$ref": "#/$defs/glam::UVec2" } }, "texture_handles": { @@ -8957,7 +10382,7 @@ }, "textures": { "type": { - "$ref": "#/$defs/alloc::vec::Vec" + "$ref": "#/$defs/alloc::vec::Vec" } } }, @@ -8970,6 +10395,74 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_sprite::texture_slice::border_rect::BorderRect": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "bottom": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "left": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "right": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "top": { + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "left", + "right", + "top", + "bottom" + ], + "short_name": "BorderRect", + "title": "bevy_sprite::texture_slice::border_rect::BorderRect", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_sprite::texture_slice::slicer::SliceScaleMode": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "Stretch" + }, + { + "additionalProperties": false, + "properties": { + "stretch_value": { + "title": "stretch_value", + "type": { + "$ref": "#/$defs/f32" + } + } + }, + "required": [ + "stretch_value" + ], + "short_name": "Tile", + "title": "Tile", + "type": "object", + "typeInfo": "Struct" + } + ], + "short_name": "SliceScaleMode", + "title": "bevy_sprite::texture_slice::slicer::SliceScaleMode", + "type": "object", + "typeInfo": "Enum" + }, "bevy_sprite::texture_slice::slicer::TextureSlicer": { "additionalProperties": false, "isComponent": false, @@ -9007,6 +10500,80 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_text::font_atlas_set::GlyphAtlasInfo": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "glyph_index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "texture": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "texture_atlas": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + }, + "required": [ + "texture_atlas", + "texture", + "glyph_index" + ], + "short_name": "GlyphAtlasInfo", + "title": "bevy_text::font_atlas_set::GlyphAtlasInfo", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_text::glyph_brush::PositionedGlyph": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "atlas_info": { + "type": { + "$ref": "#/$defs/bevy_text::font_atlas_set::GlyphAtlasInfo" + } + }, + "byte_index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "position": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + }, + "section_index": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "size": { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + }, + "required": [ + "position", + "size", + "atlas_info", + "section_index", + "byte_index" + ], + "short_name": "PositionedGlyph", + "title": "bevy_text::glyph_brush::PositionedGlyph", + "type": "object", + "typeInfo": "Struct" + }, "bevy_text::pipeline::TextLayoutInfo": { "additionalProperties": false, "isComponent": true, @@ -9140,7 +10707,7 @@ "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "font": { @@ -9164,6 +10731,60 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_time::fixed::Fixed": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "overstep": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + }, + "timestep": { + "type": { + "$ref": "#/$defs/bevy_utils::Duration" + } + } + }, + "required": [ + "timestep", + "overstep" + ], + "short_name": "Fixed", + "title": "bevy_time::fixed::Fixed", + "type": "object", + "typeInfo": "Struct" + }, + "bevy_time::real::Real": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "first_update": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "last_update": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, + "startup": { + "type": { + "$ref": "#/$defs/bevy_utils::Instant" + } + } + }, + "required": [ + "startup" + ], + "short_name": "Real", + "title": "bevy_time::real::Real", + "type": "object", + "typeInfo": "Struct" + }, "bevy_time::stopwatch::Stopwatch": { "additionalProperties": false, "isComponent": false, @@ -9548,6 +11169,18 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_time::timer::TimerMode": { + "isComponent": false, + "isResource": false, + "oneOf": [ + "Once", + "Repeating" + ], + "short_name": "TimerMode", + "title": "bevy_time::timer::TimerMode", + "type": "string", + "typeInfo": "Enum" + }, "bevy_time::virt::Virtual": { "additionalProperties": false, "isComponent": false, @@ -9685,7 +11318,7 @@ }, "normalized_visible_node_rect": { "type": { - "$ref": "#/$defs/bevy_math::Rect" + "$ref": "#/$defs/bevy_math::rects::rect::Rect" } } }, @@ -9905,7 +11538,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } } ], @@ -9921,7 +11554,7 @@ "prefixItems": [ { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } } ], @@ -9930,6 +11563,43 @@ "type": "array", "typeInfo": "TupleStruct" }, + "bevy_ui::ui_node::BorderRadius": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "bottom_left": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "bottom_right": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "top_left": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + }, + "top_right": { + "type": { + "$ref": "#/$defs/bevy_ui::geometry::Val" + } + } + }, + "required": [ + "top_left", + "top_right", + "bottom_left", + "bottom_right" + ], + "short_name": "BorderRadius", + "title": "bevy_ui::ui_node::BorderRadius", + "type": "object", + "typeInfo": "Struct" + }, "bevy_ui::ui_node::CalculatedClip": { "additionalProperties": false, "isComponent": true, @@ -9937,7 +11607,7 @@ "properties": { "clip": { "type": { - "$ref": "#/$defs/bevy_math::Rect" + "$ref": "#/$defs/bevy_math::rects::rect::Rect" } } }, @@ -9968,6 +11638,7 @@ "oneOf": [ "Flex", "Grid", + "Block", "None" ], "short_name": "Display", @@ -10068,6 +11739,36 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_ui::ui_node::GridTrackRepetition": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/u16" + } + } + ], + "short_name": "Count", + "title": "Count", + "type": "array", + "typeInfo": "Tuple" + }, + { + "title": "AutoFill" + }, + { + "title": "AutoFit" + } + ], + "short_name": "GridTrackRepetition", + "title": "bevy_ui::ui_node::GridTrackRepetition", + "type": "object", + "typeInfo": "Enum" + }, "bevy_ui::ui_node::JustifyContent": { "isComponent": false, "isResource": false, @@ -10120,6 +11821,22 @@ "type": "string", "typeInfo": "Enum" }, + "bevy_ui::ui_node::MaxTrackSizingFunction": { + "isComponent": false, + "isResource": false, + "short_name": "MaxTrackSizingFunction", + "title": "bevy_ui::ui_node::MaxTrackSizingFunction", + "type": "object", + "typeInfo": "Value" + }, + "bevy_ui::ui_node::MinTrackSizingFunction": { + "isComponent": false, + "isResource": false, + "short_name": "MinTrackSizingFunction", + "title": "bevy_ui::ui_node::MinTrackSizingFunction", + "type": "object", + "typeInfo": "Value" + }, "bevy_ui::ui_node::Node": { "additionalProperties": false, "isComponent": true, @@ -10170,7 +11887,7 @@ "properties": { "color": { "type": { - "$ref": "#/$defs/bevy_render::color::Color" + "$ref": "#/$defs/bevy_color::color::Color" } }, "offset": { @@ -10224,7 +11941,8 @@ "isResource": false, "oneOf": [ "Visible", - "Clip" + "Clip", + "Hidden" ], "short_name": "OverflowAxis", "title": "bevy_ui::ui_node::OverflowAxis", @@ -10255,7 +11973,7 @@ }, "tracks": { "type": { - "$ref": "#/$defs/bevy_utils::smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>" + "$ref": "#/$defs/smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>" } } }, @@ -10529,6 +12247,11 @@ "isComponent": true, "isResource": false, "properties": { + "color": { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + }, "flip_x": { "type": { "$ref": "#/$defs/bool" @@ -10546,6 +12269,7 @@ } }, "required": [ + "color", "texture", "flip_x", "flip_y" @@ -10611,7 +12335,7 @@ "properties": { "size": { "type": { - "$ref": "#/$defs/glam::Vec2" + "$ref": "#/$defs/glam::UVec2" } } }, @@ -10667,14 +12391,6 @@ "type": "object", "typeInfo": "Value" }, - "bevy_utils::HashSet": { - "isComponent": false, - "isResource": false, - "short_name": "HashSet", - "title": "bevy_utils::HashSet", - "type": "object", - "typeInfo": "Value" - }, "bevy_utils::Instant": { "isComponent": false, "isResource": false, @@ -10683,26 +12399,143 @@ "type": "object", "typeInfo": "Value" }, - "bevy_utils::Uuid": { - "isComponent": false, - "isResource": false, - "short_name": "Uuid", - "title": "bevy_utils::Uuid", - "type": "object", - "typeInfo": "Value" - }, - "bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>": { - "isComponent": false, - "isResource": false, - "items": { + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "additionalProperties": { "type": { - "$ref": "#/$defs/bevy_ecs::entity::Entity" + "$ref": "#/$defs/alloc::vec::Vec" } }, - "short_name": "SmallVec<[Entity; 8]>", - "title": "bevy_utils::smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>", - "type": "array", - "typeInfo": "List" + "isComponent": false, + "isResource": false, + "short_name": "HashMap, DefaultHashBuilder>", + "title": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap, DefaultHashBuilder>", + "title": "bevy_utils::hashbrown::HashMap, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap", + "title": "bevy_utils::hashbrown::HashMap", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap, bevy_utils::NoOpHash>": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap, NoOpHash>", + "title": "bevy_utils::hashbrown::HashMap, bevy_utils::NoOpHash>", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/usize" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap, usize, DefaultHashBuilder>", + "title": "bevy_utils::hashbrown::HashMap, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/alloc::vec::Vec" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap, EntityHash>", + "title": "bevy_utils::hashbrown::HashMap, bevy_ecs::entity::hash::EntityHash>", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::AxisSettings" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap", + "title": "bevy_utils::hashbrown::HashMap", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::ButtonAxisSettings" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap", + "title": "bevy_utils::hashbrown::HashMap", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/bevy_input::gamepad::ButtonSettings" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap", + "title": "bevy_utils::hashbrown::HashMap", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashMap": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/f32" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "HashMap", + "title": "bevy_utils::hashbrown::HashMap", + "type": "object", + "typeInfo": "Map" + }, + "bevy_utils::hashbrown::HashSet": { + "isComponent": false, + "isResource": false, + "short_name": "HashSet", + "title": "bevy_utils::hashbrown::HashSet", + "type": "object", + "typeInfo": "Value" }, "bevy_window::cursor::CursorIcon": { "isComponent": false, @@ -10748,16 +12581,18 @@ "type": "string", "typeInfo": "Enum" }, - "bevy_window::event::ApplicationLifetime": { + "bevy_window::event::AppLifecycle": { "isComponent": false, "isResource": false, "oneOf": [ - "Started", + "Idle", + "Running", + "WillSuspend", "Suspended", - "Resumed" + "WillResume" ], - "short_name": "ApplicationLifetime", - "title": "bevy_window::event::ApplicationLifetime", + "short_name": "AppLifecycle", + "title": "bevy_window::event::AppLifecycle", "type": "string", "typeInfo": "Enum" }, @@ -11006,6 +12841,25 @@ "type": "object", "typeInfo": "Struct" }, + "bevy_window::event::WindowClosing": { + "additionalProperties": false, + "isComponent": false, + "isResource": false, + "properties": { + "window": { + "type": { + "$ref": "#/$defs/bevy_ecs::entity::Entity" + } + } + }, + "required": [ + "window" + ], + "short_name": "WindowClosing", + "title": "bevy_window::event::WindowClosing", + "type": "object", + "typeInfo": "Struct" + }, "bevy_window::event::WindowCreated": { "additionalProperties": false, "isComponent": false, @@ -11386,11 +13240,21 @@ "$ref": "#/$defs/bool" } }, + "desired_maximum_frame_latency": { + "type": { + "$ref": "#/$defs/core::option::Option" + } + }, "enabled_buttons": { "type": { "$ref": "#/$defs/bevy_window::window::EnabledButtons" } }, + "fit_canvas_to_parent": { + "type": { + "$ref": "#/$defs/bool" + } + }, "focused": { "type": { "$ref": "#/$defs/bool" @@ -11436,6 +13300,26 @@ "$ref": "#/$defs/bool" } }, + "recognize_doubletap_gesture": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "recognize_pan_gesture": { + "type": { + "$ref": "#/$defs/core::option::Option<(u8, u8)>" + } + }, + "recognize_pinch_gesture": { + "type": { + "$ref": "#/$defs/bool" + } + }, + "recognize_rotation_gesture": { + "type": { + "$ref": "#/$defs/bool" + } + }, "resizable": { "type": { "$ref": "#/$defs/bool" @@ -11451,6 +13335,11 @@ "$ref": "#/$defs/bevy_window::window::WindowResolution" } }, + "skip_taskbar": { + "type": { + "$ref": "#/$defs/bool" + } + }, "title": { "type": { "$ref": "#/$defs/alloc::string::String" @@ -11492,11 +13381,16 @@ "transparent", "focused", "window_level", + "fit_canvas_to_parent", "prevent_default_event_handling", "internal", "ime_enabled", "ime_position", - "visible" + "visible", + "skip_taskbar", + "recognize_pinch_gesture", + "recognize_rotation_gesture", + "recognize_doubletap_gesture" ], "short_name": "Window", "title": "bevy_window::window::Window", @@ -11672,6 +13566,30 @@ "type": "string", "typeInfo": "Value" }, + "core::num::NonZeroI16": { + "isComponent": false, + "isResource": false, + "short_name": "NonZeroI16", + "title": "core::num::NonZeroI16", + "type": "object", + "typeInfo": "Value" + }, + "core::num::NonZeroU16": { + "isComponent": false, + "isResource": false, + "short_name": "NonZeroU16", + "title": "core::num::NonZeroU16", + "type": "object", + "typeInfo": "Value" + }, + "core::num::NonZeroU32": { + "isComponent": false, + "isResource": false, + "short_name": "NonZeroU32", + "title": "core::num::NonZeroU32", + "type": "object", + "typeInfo": "Value" + }, "core::ops::Range": { "isComponent": false, "isResource": false, @@ -11680,13 +13598,32 @@ "type": "object", "typeInfo": "Value" }, - "core::ops::Range": { + "core::option::Option<(u8, u8)>": { "isComponent": false, "isResource": false, - "short_name": "Range", - "title": "core::ops::Range", + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/(u8, u8)" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option<(u8, u8)>", + "title": "core::option::Option<(u8, u8)>", "type": "object", - "typeInfo": "Value" + "typeInfo": "Enum" }, "core::option::Option": { "isComponent": false, @@ -11742,6 +13679,33 @@ "type": "object", "typeInfo": "Enum" }, + "core::option::Option>": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_asset::handle::Handle" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option>", + "title": "core::option::Option>", + "type": "object", + "typeInfo": "Enum" + }, "core::option::Option>": { "isComponent": false, "isResource": false, @@ -11769,6 +13733,114 @@ "type": "object", "typeInfo": "Enum" }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_audio::audio::SpatialScale" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_color::color::Color" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_input::touch::ForceTouch" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_math::rects::rect::Rect" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, "core::option::Option": { "isComponent": false, "isResource": false, @@ -11823,6 +13895,87 @@ "type": "object", "typeInfo": "Enum" }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::Instant" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_utils::hashbrown::HashMap, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option, usize, DefaultHashBuilder>>", + "title": "core::option::Option, usize, bevy_utils::hashbrown::hash_map::DefaultHashBuilder>>", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/bevy_window::window::WindowTheme" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, "core::option::Option": { "isComponent": false, "isResource": false, @@ -11850,6 +14003,114 @@ "type": "object", "typeInfo": "Enum" }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/char" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::num::NonZeroI16" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::num::NonZeroU16" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/core::num::NonZeroU32" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, "core::option::Option": { "isComponent": false, "isResource": false, @@ -11931,6 +14192,60 @@ "type": "object", "typeInfo": "Enum" }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/glam::Vec2" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, + "core::option::Option": { + "isComponent": false, + "isResource": false, + "oneOf": [ + { + "title": "None" + }, + { + "items": false, + "prefixItems": [ + { + "type": { + "$ref": "#/$defs/petgraph::graph::NodeIndex" + } + } + ], + "short_name": "Some", + "title": "Some", + "type": "array", + "typeInfo": "Tuple" + } + ], + "short_name": "Option", + "title": "core::option::Option", + "type": "object", + "typeInfo": "Enum" + }, "f32": { "isComponent": false, "isResource": false, @@ -11997,295 +14312,6 @@ "type": "object", "typeInfo": "Struct" }, - "glam::BVec2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "x", - "y" - ], - "short_name": "BVec2", - "title": "glam::BVec2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "z": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "BVec3", - "title": "glam::BVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec3A": { - "isComponent": false, - "isResource": false, - "short_name": "BVec3A", - "title": "glam::BVec3A", - "type": "object", - "typeInfo": "Value" - }, - "glam::BVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "x": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "y": { - "type": { - "$ref": "#/$defs/bool" - } - }, - "z": { - "type": { - "$ref": "#/$defs/bool" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "BVec4", - "title": "glam::BVec4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::BVec4A": { - "isComponent": false, - "isResource": false, - "short_name": "BVec4A", - "title": "glam::BVec4A", - "type": "object", - "typeInfo": "Value" - }, - "glam::DAffine2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "matrix2": { - "type": { - "$ref": "#/$defs/glam::DMat2" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - } - }, - "required": [ - "matrix2", - "translation" - ], - "short_name": "DAffine2", - "title": "glam::DAffine2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DAffine3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "matrix3": { - "type": { - "$ref": "#/$defs/glam::DMat3" - } - }, - "translation": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - } - }, - "required": [ - "matrix3", - "translation" - ], - "short_name": "DAffine3", - "title": "glam::DAffine3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DMat2": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::DVec2" - } - } - }, - "required": [ - "x_axis", - "y_axis" - ], - "short_name": "DMat2", - "title": "glam::DMat2", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DMat3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::DVec3" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis" - ], - "short_name": "DMat3", - "title": "glam::DMat3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DMat4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - }, - "x_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::DVec4" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis", - "w_axis" - ], - "short_name": "DMat4", - "title": "glam::DMat4", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DQuat": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "DQuat", - "title": "glam::DQuat", - "type": "object", - "typeInfo": "Struct" - }, "glam::DVec2": { "additionalProperties": false, "isComponent": false, @@ -12311,74 +14337,6 @@ "type": "object", "typeInfo": "Struct" }, - "glam::DVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "DVec3", - "title": "glam::DVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::DVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "x": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "y": { - "type": { - "$ref": "#/$defs/f64" - } - }, - "z": { - "type": { - "$ref": "#/$defs/f64" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "DVec4", - "title": "glam::DVec4", - "type": "object", - "typeInfo": "Struct" - }, "glam::IVec2": { "additionalProperties": false, "isComponent": false, @@ -12404,74 +14362,6 @@ "type": "object", "typeInfo": "Struct" }, - "glam::IVec3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/i32" - } - } - }, - "required": [ - "x", - "y", - "z" - ], - "short_name": "IVec3", - "title": "glam::IVec3", - "type": "object", - "typeInfo": "Struct" - }, - "glam::IVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "x": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/i32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/i32" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "IVec4", - "title": "glam::IVec4", - "type": "object", - "typeInfo": "Struct" - }, "glam::Mat2": { "additionalProperties": false, "isComponent": false, @@ -12497,37 +14387,6 @@ "type": "object", "typeInfo": "Struct" }, - "glam::Mat3": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "x_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "y_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - }, - "z_axis": { - "type": { - "$ref": "#/$defs/glam::Vec3" - } - } - }, - "required": [ - "x_axis", - "y_axis", - "z_axis" - ], - "short_name": "Mat3", - "title": "glam::Mat3", - "type": "object", - "typeInfo": "Struct" - }, "glam::Mat3A": { "additionalProperties": false, "isComponent": false, @@ -12689,43 +14548,6 @@ "type": "object", "typeInfo": "Struct" }, - "glam::UVec4": { - "additionalProperties": false, - "isComponent": false, - "isResource": false, - "properties": { - "w": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "x": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "y": { - "type": { - "$ref": "#/$defs/u32" - } - }, - "z": { - "type": { - "$ref": "#/$defs/u32" - } - } - }, - "required": [ - "x", - "y", - "z", - "w" - ], - "short_name": "UVec4", - "title": "glam::UVec4", - "type": "object", - "typeInfo": "Struct" - }, "glam::Vec2": { "additionalProperties": false, "isComponent": false, @@ -12898,14 +14720,82 @@ "type": "int", "typeInfo": "Value" }, - "std::ffi::OsString": { + "petgraph::graph::DiGraph": { "isComponent": false, "isResource": false, - "short_name": "OsString", - "title": "std::ffi::OsString", + "short_name": "DiGraph", + "title": "petgraph::graph::DiGraph", "type": "object", "typeInfo": "Value" }, + "petgraph::graph::NodeIndex": { + "isComponent": false, + "isResource": false, + "short_name": "NodeIndex", + "title": "petgraph::graph::NodeIndex", + "type": "object", + "typeInfo": "Value" + }, + "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": "smallvec::SmallVec<[bevy_ecs::entity::Entity; 8]>", + "type": "array", + "typeInfo": "List" + }, + "smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/bevy_ui::ui_node::GridTrack" + } + }, + "short_name": "SmallVec<[GridTrack; 1]>", + "title": "smallvec::SmallVec<[bevy_ui::ui_node::GridTrack; 1]>", + "type": "array", + "typeInfo": "List" + }, + "smallvec::SmallVec<[u64; 1]>": { + "isComponent": false, + "isResource": false, + "items": { + "type": { + "$ref": "#/$defs/u64" + } + }, + "short_name": "SmallVec<[u64; 1]>", + "title": "smallvec::SmallVec<[u64; 1]>", + "type": "array", + "typeInfo": "List" + }, + "smol_str::SmolStr": { + "isComponent": false, + "isResource": false, + "short_name": "SmolStr", + "title": "smol_str::SmolStr", + "type": "object", + "typeInfo": "Value" + }, + "std::collections::BTreeMap": { + "additionalProperties": { + "type": { + "$ref": "#/$defs/bevy_animation::ActiveAnimation" + } + }, + "isComponent": false, + "isResource": false, + "short_name": "BTreeMap", + "title": "std::collections::BTreeMap", + "type": "object", + "typeInfo": "Map" + }, "std::path::PathBuf": { "isComponent": false, "isResource": false, @@ -12914,6 +14804,14 @@ "type": "object", "typeInfo": "Value" }, + "std::sync::Arc": { + "isComponent": false, + "isResource": false, + "short_name": "Arc", + "title": "std::sync::Arc", + "type": "object", + "typeInfo": "Value" + }, "u128": { "isComponent": false, "isResource": false, @@ -12961,6 +14859,14 @@ "title": "usize", "type": "uint", "typeInfo": "Value" + }, + "uuid::Uuid": { + "isComponent": false, + "isResource": false, + "short_name": "Uuid", + "title": "uuid::Uuid", + "type": "object", + "typeInfo": "Value" } }, "$schema": "https://json-schema.org/draft/2020-12/schema", diff --git a/examples/common/Cargo.toml b/examples/common/Cargo.toml index 2951869..f50c3a4 100644 --- a/examples/common/Cargo.toml +++ b/examples/common/Cargo.toml @@ -12,10 +12,10 @@ default = ["blueprints", "physics_rapier"] [dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", 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_xpbd_3d = { version = "0.4", optional = true } -bevy_asset_loader = { version = "0.20", features = ["standard_dynamic_assets"] } -bevy_editor_pls = { version = "0.8" } +bevy_rapier3d = { version = "0.27", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"], optional = true } +bevy_xpbd_3d = { version = "0.5", optional = true } +bevy_asset_loader = { version = "0.21", features = ["standard_dynamic_assets"] } +#bevy_editor_pls = { version = "0.8" } rand = "0.8.5" diff --git a/examples/common/src/lib.rs b/examples/common/src/lib.rs index 289f9af..5fc48bc 100644 --- a/examples/common/src/lib.rs +++ b/examples/common/src/lib.rs @@ -11,7 +11,7 @@ pub mod game; pub use game::*; use bevy::prelude::*; -use bevy_editor_pls::prelude::*; +//use bevy_editor_pls::prelude::*; pub struct CommonPlugin; impl Plugin for CommonPlugin { @@ -21,7 +21,7 @@ impl Plugin for CommonPlugin { AssetsPlugin, CorePlugin, GamePlugin, - EditorPlugin::default(), + //EditorPlugin::default(), )); } } diff --git a/examples/common_rapier/Cargo.toml b/examples/common_rapier/Cargo.toml index 5289163..4db3cce 100644 --- a/examples/common_rapier/Cargo.toml +++ b/examples/common_rapier/Cargo.toml @@ -10,10 +10,10 @@ default = ["blueprints"] [dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_worlflow_examples_common = { path = "../common" } bevy_gltf_blueprints = { path = "../../crates/bevy_gltf_blueprints", optional = true } -bevy_rapier3d = { version = "0.25", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } -bevy_asset_loader = { version = "0.20", features = ["standard_dynamic_assets"] } -bevy_editor_pls = { version = "0.8" } +bevy_rapier3d = { version = "0.27", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_asset_loader = { version = "0.21", features = ["standard_dynamic_assets"] } +#bevy_editor_pls = { version = "0.8" } rand = "0.8.5" diff --git a/examples/common_rapier/src/physics/utils.rs b/examples/common_rapier/src/physics/utils.rs index 7886710..98b8cbf 100644 --- a/examples/common_rapier/src/physics/utils.rs +++ b/examples/common_rapier/src/physics/utils.rs @@ -1,54 +1,8 @@ use bevy::prelude::*; -use bevy::render::mesh::{MeshVertexAttributeId, PrimitiveTopology, VertexAttributeValues}; +use bevy::render::mesh::PrimitiveTopology; // TAKEN VERBATIB FROM https://github.com/janhohenheim/foxtrot/blob/src/util/trait_extension.rs -pub(crate) trait Vec3Ext: Copy { - fn is_approx_zero(self) -> bool; - fn split(self, up: Vec3) -> SplitVec3; -} -impl Vec3Ext for Vec3 { - #[inline] - fn is_approx_zero(self) -> bool { - self.length_squared() < 1e-5 - } - - #[inline] - fn split(self, up: Vec3) -> SplitVec3 { - let vertical = up * self.dot(up); - let horizontal = self - vertical; - SplitVec3 { - vertical, - horizontal, - } - } -} - -#[derive(Debug, Clone, Copy, PartialEq)] -pub(crate) struct SplitVec3 { - pub(crate) vertical: Vec3, - pub(crate) horizontal: Vec3, -} - -pub(crate) trait Vec2Ext: Copy { - fn is_approx_zero(self) -> bool; - fn x0y(self) -> Vec3; -} -impl Vec2Ext for Vec2 { - #[inline] - fn is_approx_zero(self) -> bool { - self.length_squared() < 1e-5 - } - - #[inline] - fn x0y(self) -> Vec3 { - Vec3::new(self.x, 0., self.y) - } -} - pub(crate) trait MeshExt { - fn transform(&mut self, transform: Transform); - fn transformed(&self, transform: Transform) -> Mesh; - fn read_coords_mut(&mut self, id: impl Into) -> &mut Vec<[f32; 3]>; fn search_in_children<'a>( parent: Entity, children: &'a Query<&Children>, @@ -58,37 +12,6 @@ pub(crate) trait MeshExt { } impl MeshExt for Mesh { - fn transform(&mut self, transform: Transform) { - for coords in self.read_coords_mut(Mesh::ATTRIBUTE_POSITION.clone()) { - let vec3 = (*coords).into(); - let transformed = transform.transform_point(vec3); - *coords = transformed.into(); - } - for normal in self.read_coords_mut(Mesh::ATTRIBUTE_NORMAL.clone()) { - let vec3 = (*normal).into(); - let transformed = transform.rotation.mul_vec3(vec3); - *normal = transformed.into(); - } - } - - fn transformed(&self, transform: Transform) -> Mesh { - let mut mesh = self.clone(); - mesh.transform(transform); - mesh - } - - fn read_coords_mut(&mut self, id: impl Into) -> &mut Vec<[f32; 3]> { - // Guaranteed by Bevy for the current usage - match self - .attribute_mut(id) - .expect("Failed to read unknown mesh attribute") - { - VertexAttributeValues::Float32x3(values) => values, - // Guaranteed by Bevy for the current usage - _ => unreachable!(), - } - } - fn search_in_children<'a>( parent: Entity, children_query: &'a Query<&Children>, @@ -125,51 +48,3 @@ impl MeshExt for Mesh { } } } - -pub(crate) trait F32Ext: Copy { - fn is_approx_zero(self) -> bool; - fn squared(self) -> f32; - fn lerp(self, other: f32, ratio: f32) -> f32; -} - -impl F32Ext for f32 { - #[inline] - fn is_approx_zero(self) -> bool { - self.abs() < 1e-5 - } - - #[inline] - fn squared(self) -> f32 { - self * self - } - - #[inline] - fn lerp(self, other: f32, ratio: f32) -> f32 { - self.mul_add(1. - ratio, other * ratio) - } -} - -pub(crate) trait TransformExt: Copy { - fn horizontally_looking_at(self, target: Vec3, up: Vec3) -> Transform; - fn lerp(self, other: Transform, ratio: f32) -> Transform; -} - -impl TransformExt for Transform { - fn horizontally_looking_at(self, target: Vec3, up: Vec3) -> Transform { - let direction = target - self.translation; - let horizontal_direction = direction - up * direction.dot(up); - let look_target = self.translation + horizontal_direction; - self.looking_at(look_target, up) - } - - fn lerp(self, other: Transform, ratio: f32) -> Transform { - let translation = self.translation.lerp(other.translation, ratio); - let rotation = self.rotation.slerp(other.rotation, ratio); - let scale = self.scale.lerp(other.scale, ratio); - Transform { - translation, - rotation, - scale, - } - } -} diff --git a/examples/common_xpbd/Cargo.toml b/examples/common_xpbd/Cargo.toml index 2582a73..d2921f1 100644 --- a/examples/common_xpbd/Cargo.toml +++ b/examples/common_xpbd/Cargo.toml @@ -10,10 +10,10 @@ default = ["blueprints"] [dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_worlflow_examples_common = { path = "../common" } bevy_gltf_blueprints = { path = "../../crates/bevy_gltf_blueprints", optional = true } -bevy_xpbd_3d = { version = "0.4" } -bevy_asset_loader = { version = "0.20", features = ["standard_dynamic_assets"] } -bevy_editor_pls = { version = "0.8" } +bevy_xpbd_3d = { version = "0.5" } +bevy_asset_loader = { version = "0.21", features = ["standard_dynamic_assets"] } +#bevy_editor_pls = { version = "0.8" } rand = "0.8.5" diff --git a/examples/common_xpbd/src/physics/utils.rs b/examples/common_xpbd/src/physics/utils.rs index 7886710..98b8cbf 100644 --- a/examples/common_xpbd/src/physics/utils.rs +++ b/examples/common_xpbd/src/physics/utils.rs @@ -1,54 +1,8 @@ use bevy::prelude::*; -use bevy::render::mesh::{MeshVertexAttributeId, PrimitiveTopology, VertexAttributeValues}; +use bevy::render::mesh::PrimitiveTopology; // TAKEN VERBATIB FROM https://github.com/janhohenheim/foxtrot/blob/src/util/trait_extension.rs -pub(crate) trait Vec3Ext: Copy { - fn is_approx_zero(self) -> bool; - fn split(self, up: Vec3) -> SplitVec3; -} -impl Vec3Ext for Vec3 { - #[inline] - fn is_approx_zero(self) -> bool { - self.length_squared() < 1e-5 - } - - #[inline] - fn split(self, up: Vec3) -> SplitVec3 { - let vertical = up * self.dot(up); - let horizontal = self - vertical; - SplitVec3 { - vertical, - horizontal, - } - } -} - -#[derive(Debug, Clone, Copy, PartialEq)] -pub(crate) struct SplitVec3 { - pub(crate) vertical: Vec3, - pub(crate) horizontal: Vec3, -} - -pub(crate) trait Vec2Ext: Copy { - fn is_approx_zero(self) -> bool; - fn x0y(self) -> Vec3; -} -impl Vec2Ext for Vec2 { - #[inline] - fn is_approx_zero(self) -> bool { - self.length_squared() < 1e-5 - } - - #[inline] - fn x0y(self) -> Vec3 { - Vec3::new(self.x, 0., self.y) - } -} - pub(crate) trait MeshExt { - fn transform(&mut self, transform: Transform); - fn transformed(&self, transform: Transform) -> Mesh; - fn read_coords_mut(&mut self, id: impl Into) -> &mut Vec<[f32; 3]>; fn search_in_children<'a>( parent: Entity, children: &'a Query<&Children>, @@ -58,37 +12,6 @@ pub(crate) trait MeshExt { } impl MeshExt for Mesh { - fn transform(&mut self, transform: Transform) { - for coords in self.read_coords_mut(Mesh::ATTRIBUTE_POSITION.clone()) { - let vec3 = (*coords).into(); - let transformed = transform.transform_point(vec3); - *coords = transformed.into(); - } - for normal in self.read_coords_mut(Mesh::ATTRIBUTE_NORMAL.clone()) { - let vec3 = (*normal).into(); - let transformed = transform.rotation.mul_vec3(vec3); - *normal = transformed.into(); - } - } - - fn transformed(&self, transform: Transform) -> Mesh { - let mut mesh = self.clone(); - mesh.transform(transform); - mesh - } - - fn read_coords_mut(&mut self, id: impl Into) -> &mut Vec<[f32; 3]> { - // Guaranteed by Bevy for the current usage - match self - .attribute_mut(id) - .expect("Failed to read unknown mesh attribute") - { - VertexAttributeValues::Float32x3(values) => values, - // Guaranteed by Bevy for the current usage - _ => unreachable!(), - } - } - fn search_in_children<'a>( parent: Entity, children_query: &'a Query<&Children>, @@ -125,51 +48,3 @@ impl MeshExt for Mesh { } } } - -pub(crate) trait F32Ext: Copy { - fn is_approx_zero(self) -> bool; - fn squared(self) -> f32; - fn lerp(self, other: f32, ratio: f32) -> f32; -} - -impl F32Ext for f32 { - #[inline] - fn is_approx_zero(self) -> bool { - self.abs() < 1e-5 - } - - #[inline] - fn squared(self) -> f32 { - self * self - } - - #[inline] - fn lerp(self, other: f32, ratio: f32) -> f32 { - self.mul_add(1. - ratio, other * ratio) - } -} - -pub(crate) trait TransformExt: Copy { - fn horizontally_looking_at(self, target: Vec3, up: Vec3) -> Transform; - fn lerp(self, other: Transform, ratio: f32) -> Transform; -} - -impl TransformExt for Transform { - fn horizontally_looking_at(self, target: Vec3, up: Vec3) -> Transform { - let direction = target - self.translation; - let horizontal_direction = direction - up * direction.dot(up); - let look_target = self.translation + horizontal_direction; - self.looking_at(look_target, up) - } - - fn lerp(self, other: Transform, ratio: f32) -> Transform { - let translation = self.translation.lerp(other.translation, ratio); - let rotation = self.rotation.slerp(other.rotation, ratio); - let scale = self.scale.lerp(other.scale, ratio); - Transform { - translation, - rotation, - scale, - } - } -} diff --git a/testing/bevy_example/Cargo.toml b/testing/bevy_example/Cargo.toml index 3dbc4ca..3aacf28 100644 --- a/testing/bevy_example/Cargo.toml +++ b/testing/bevy_example/Cargo.toml @@ -5,12 +5,12 @@ edition = "2021" license = "MIT OR Apache-2.0" [dependencies] -bevy = { version = "0.13", features = ["dynamic_linking"] } +bevy = { version = "0.14", features = ["dynamic_linking"] } bevy_gltf_blueprints = { path = "../../crates/bevy_gltf_blueprints" } bevy_registry_export = { path = "../../crates/bevy_registry_export" } bevy_gltf_worlflow_examples_common_rapier = { path = "../../examples/common_rapier" } -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" } +bevy_rapier3d = { version = "0.27.0", features = ["serde-serialize", "debug-render-3d", "enhanced-determinism"] } +bevy_asset_loader = { version = "0.21", features = ["standard_dynamic_assets"] } +#bevy_editor_pls = { version = "0.8" } rand = "0.8.5" diff --git a/testing/bevy_example/src/game/mod.rs b/testing/bevy_example/src/game/mod.rs index 973140b..3f8dfb0 100644 --- a/testing/bevy_example/src/game/mod.rs +++ b/testing/bevy_example/src/game/mod.rs @@ -94,7 +94,7 @@ fn generate_screenshot( } fn exit_game(mut app_exit_events: ResMut>) { - app_exit_events.send(bevy::app::AppExit); + app_exit_events.send(AppExit::Success); } pub struct GamePlugin; diff --git a/tools/bevy_components/__init__.py b/tools/bevy_components/__init__.py index 48effb9..1683a96 100644 --- a/tools/bevy_components/__init__.py +++ b/tools/bevy_components/__init__.py @@ -1,7 +1,7 @@ bl_info = { "name": "bevy_components", "author": "kaosigh", - "version": (0, 4, 1), + "version": (0, 4, 2), "blender": (3, 4, 0), "location": "VIEW_3D", "description": "UI to help create Bevy blueprints and components", diff --git a/tools/bevy_components/propGroups/conversions_from_prop_group.py b/tools/bevy_components/propGroups/conversions_from_prop_group.py index 6fadb30..b7a6bf4 100644 --- a/tools/bevy_components/propGroups/conversions_from_prop_group.py +++ b/tools/bevy_components/propGroups/conversions_from_prop_group.py @@ -22,7 +22,9 @@ conversion_tables = { "glam::Quat": lambda value: "Quat(x:"+str(value[0])+ ", y:"+str(value[1])+ ", z:"+str(value[2])+ ", w:"+str(value[3])+")", - "bevy_render::color::Color": lambda value: "Rgba(red:"+str(value[0])+ ", green:"+str(value[1])+ ", blue:"+str(value[2])+ ", alpha:"+str(value[3])+ ")", + "bevy_color::srgba::Srgba": lambda value: "Srgba(red:"+str(value[0])+ ", green:"+str(value[1])+ ", blue:"+str(value[2])+ ", alpha:"+str(value[3])+ ")", + "bevy_color::linear_rgba::LinearRgba": lambda value: "LinearRgba(red:"+str(value[0])+ ", green:"+str(value[1])+ ", blue:"+str(value[2])+ ", alpha:"+str(value[3])+ ")", + "bevy_color::hsva::Hsva": lambda value: "Hsva(hue:"+str(value[0])+ ", saturation:"+str(value[1])+ ", value:"+str(value[2])+ ", alpha:"+str(value[3])+ ")", } #converts the value of a property group(no matter its complexity) into a single custom property value diff --git a/tools/bevy_components/propGroups/conversions_to_prop_group.py b/tools/bevy_components/propGroups/conversions_to_prop_group.py index 84d10e2..90db393 100644 --- a/tools/bevy_components/propGroups/conversions_to_prop_group.py +++ b/tools/bevy_components/propGroups/conversions_to_prop_group.py @@ -118,10 +118,14 @@ def parse_vec4(value, caster, typeName): parsed = parse_struct_string(value.replace(typeName,"").replace("(", "").replace(")","") ) return [caster(parsed['x']), caster(parsed['y']), caster(parsed['z']), caster(parsed['w'])] -def parse_color(value, caster, typeName): +def parse_color_rgba(value, caster, typeName): parsed = parse_struct_string(value.replace(typeName,"").replace("(", "").replace(")","") ) return [caster(parsed['red']), caster(parsed['green']), caster(parsed['blue']), caster(parsed['alpha'])] +def parse_color_hsva(value, caster, typeName): + parsed = parse_struct_string(value.replace(typeName,"").replace("(", "").replace(")","") ) + return [caster(parsed['hue']), caster(parsed['saturation']), caster(parsed['value']), caster(parsed['alpha'])] + def to_int(input): return int(float(input)) @@ -163,7 +167,10 @@ type_mappings = { 'alloc::string::String': lambda value: str(value.replace('"', "")), 'alloc::borrow::Cow': lambda value: str(value.replace('"', "")), - 'bevy_render::color::Color': lambda value: parse_color(value, float, "Rgba"), + "bevy_color::srgba::Srgba": lambda value: parse_color_rgba(value, float, "Srgba"), + "bevy_color::linear_rgba::LinearRgba": lambda value: parse_color_rgba(value, float, "LinearRgba"), + "bevy_color::hsva::Hsva": lambda value: parse_color_hsva(value, float, "Hsva"), + 'bevy_ecs::entity::Entity': lambda value: int(value), } diff --git a/tools/bevy_components/registry/registry.py b/tools/bevy_components/registry/registry.py index 20eb14a..f48b0c9 100644 --- a/tools/bevy_components/registry/registry.py +++ b/tools/bevy_components/registry/registry.py @@ -140,7 +140,9 @@ class ComponentsRegistry(PropertyGroup): "glam::Quat": {"type": FloatVectorProperty, "presets": {"size":4} }, - "bevy_render::color::Color": dict(type = FloatVectorProperty, presets=dict(subtype='COLOR', size=4)), + "bevy_color::srgba::Srgba": dict(type = FloatVectorProperty, presets=dict(subtype='COLOR', size=4)), + "bevy_color::linear_rgba::LinearRgba": dict(type = FloatVectorProperty, presets=dict(subtype='COLOR', size=4)), + "bevy_color::hsva::Hsva": dict(type = FloatVectorProperty, presets=dict(subtype='COLOR', size=4)), "char": dict(type=StringProperty, presets=dict()), "str": dict(type=StringProperty, presets=dict()), @@ -202,8 +204,10 @@ class ComponentsRegistry(PropertyGroup): "glam::Quat": [0.0, 0.0, 0.0, 0.0], - "bevy_render::color::Color": [1.0, 1.0, 0.0, 1.0], - + "bevy_color::srgba::Srgba": [1.0, 1.0, 0.0, 1.0], + "bevy_color::linear_rgba::LinearRgba": [1.0, 1.0, 0.0, 1.0], + "bevy_color::hsva::Hsva": [1.0, 1.0, 0.0, 1.0], + 'bevy_ecs::entity::Entity': 0,#4294967295, # this is the same as Bevy's Entity::Placeholder, too big for Blender..sigh 'bevy_utils::Uuid': '"'+str(uuid.uuid4())+'"' diff --git a/tools/bevy_components/tests/component_values_shuffler.py b/tools/bevy_components/tests/component_values_shuffler.py index 567e1c3..bd71dc4 100644 --- a/tools/bevy_components/tests/component_values_shuffler.py +++ b/tools/bevy_components/tests/component_values_shuffler.py @@ -61,7 +61,10 @@ type_mappings = { "glam::Quat": lambda : random_vec(4, 'float'), - 'bevy_render::color::Color': lambda : random_vec(4, 'float'), + 'bevy_color::srgba::Srgba': lambda : random_vec(4, 'float'), + 'bevy_color::linear_rgba::LinearRgba': lambda : random_vec(4, 'float'), + 'bevy_color::hsva::Hsva': lambda : random_vec(4, 'float'), + 'alloc::string::String': lambda : random_word(8), 'alloc::borrow::Cow': lambda : random_word(8), diff --git a/tools/gltf_auto_export/__init__.py b/tools/gltf_auto_export/__init__.py index aa8f9ea..3f06c12 100644 --- a/tools/gltf_auto_export/__init__.py +++ b/tools/gltf_auto_export/__init__.py @@ -1,7 +1,7 @@ bl_info = { "name": "gltf_auto_export", "author": "kaosigh", - "version": (0, 16, 0), + "version": (0, 16, 1), "blender": (3, 4, 0), "location": "File > Import-Export", "description": "glTF/glb auto-export", diff --git a/tools/gltf_auto_export/modules/bevy_scene_components.py b/tools/gltf_auto_export/modules/bevy_scene_components.py index 382fc7c..ce2d29b 100644 --- a/tools/gltf_auto_export/modules/bevy_scene_components.py +++ b/tools/gltf_auto_export/modules/bevy_scene_components.py @@ -44,7 +44,7 @@ def ambient_color_to_component(world): if color is not None and strength is not None: - colorRgba = f"Rgba(red: {color[0]}, green: {color[1]}, blue: {color[2]}, alpha: {color[3]})" + colorRgba = f"LinearRgba((red: {color[0]}, green: {color[1]}, blue: {color[2]}, alpha: {color[3]}))" component = f"( color: {colorRgba}, strength: {strength})" return component return None