camera_constraint/
camera-constraint.rs1use mittens_engine::{engine, engine::ecs::SignalEmitter, scripting, utils};
2use std::time::Duration;
3
4fn main() {
5 mittens_engine::example_support::ensure_model_assets();
6 utils::logger::init();
7
8 let output = scripting::MeowMeowRunner::eval_file_with_timeout(
9 "examples/camera-constraint.mms",
10 Duration::from_secs(10),
11 );
12
13 for error in &output.errors {
14 eprintln!("[mms] error: {error}");
15 }
16 assert!(
17 output.errors.is_empty(),
18 "MMS evaluation produced errors: {:?}",
19 output.errors,
20 );
21
22 println!(
23 "[mms] {} intent(s) from camera-constraint.mms",
24 output.intents.len()
25 );
26
27 let world = engine::ecs::World::default();
28 let mut universe = engine::Universe::new(world);
29
30 let scope = engine::ecs::ComponentId::default();
31 for intent in output.intents {
32 universe.command_queue.push_intent_now(scope, intent);
33 }
34
35 universe.systems.process_commands(
36 &mut universe.world,
37 &mut universe.visuals,
38 &mut universe.render_assets,
39 &mut universe.command_queue,
40 );
41
42 engine::Windowing::run_app(universe).expect("Windowing failed");
43}