mirror of
https://github.com/kaosat-dev/Blender_bevy_components_workflow.git
synced 2024-12-04 08:36:59 +00:00
528e13a250
* feat(bevy_gltf_components): * create crate * added SystemSet (GltfComponentsSet) to run process_loaded_scenes (where components are injected) in a specific systemset & allow ordering other systems relative to it * feat(bevy_gltf_blueprints): * created crate * made the blueprint library path configurable * added BluePrintBundle helper * added SystemSet (GltfBlueprintsSet) for better system ordering * integrated into advanced demo * feat(tools-blender-auto-export): * renamed blender tool to gltf_auto_export * rewritten auto_export * added blueprint / prefab support * creates scene with empties with BlueprintName components in the scene * export of the main scene now exports this scene instead of real main scene * changes collection stand in names in original scene & sets them back after export to have correctly named collection instance exports * also added an additional 'SpawnHere' component to not conflate BlueprintNames & spawning requests * toggling & blueprint library output parameters added * added correct handling/ restoring of saved selection when using blueprints * feat(examples): * added advanced example * general example renamed to "basic", and cleaned up * feat(various): a lot of experiments with saving & loading etc * chore(assets): updated blend & generated assets * fix(examples-advanced): disabling hot reloading as it messes up scenes in experiments with save & loading * docs(): * added & fleshing out docs for the various crates & main README * added process doc image & tweaks to README * added missing licence info where relevant * fixed broken links * clarified some aspects * added updated screenshots where relevant * added tweaks & improvements etc
30 lines
735 B
Rust
30 lines
735 B
Rust
use bevy::prelude::*;
|
|
|
|
use crate::{assets::GameAssets, state::{InAppRunning, GameState}};
|
|
use bevy_gltf_blueprints::GameWorldTag;
|
|
|
|
pub fn setup_game(
|
|
mut commands: Commands,
|
|
game_assets: Res<GameAssets>,
|
|
mut next_game_state: ResMut<NextState<GameState>>,
|
|
) {
|
|
|
|
println!("setting up all stuff");
|
|
commands.insert_resource(AmbientLight {
|
|
color: Color::WHITE,
|
|
brightness: 0.2,
|
|
});
|
|
// here we actually spawn our game world/level
|
|
|
|
commands.spawn((
|
|
SceneBundle {
|
|
scene: game_assets.world.clone(),
|
|
..default()
|
|
},
|
|
bevy::prelude::Name::from("world"),
|
|
GameWorldTag,
|
|
InAppRunning
|
|
));
|
|
|
|
next_game_state.set(GameState::InGame)
|
|
} |