vtuber_secondary_motion/
vtuber-secondary-motion.rs1use mittens_engine::{engine, engine::ecs::SignalEmitter, scripting, utils};
2
3fn main() {
4 mittens_engine::example_support::ensure_model_assets();
5 utils::logger::init();
6 let output = scripting::MeowMeowRunner::eval_file("examples/vtuber-secondary-motion.mms");
8 for error in &output.errors {
9 eprintln!("[mms] {error}");
10 }
11 assert!(
12 output.errors.is_empty(),
13 "MMS evaluation produced errors: {:?}",
14 output.errors
15 );
16
17 let mut universe = engine::Universe::new(engine::ecs::World::default());
18 let scope = engine::ecs::ComponentId::default();
19 for intent in output.intents {
20 universe.command_queue.push_intent_now(scope, intent);
21 }
22 universe.systems.process_commands(
23 &mut universe.world,
24 &mut universe.visuals,
25 &mut universe.render_assets,
26 &mut universe.command_queue,
27 );
28 universe.enable_repl();
29 engine::Windowing::run_app(universe).expect("Windowing failed");
30}