Expand description
The interactive run, stepped inline: the wasm page drives this module. The interactive run: the whole scene, stepped inline and driven by input.
The windowed mode runs the same scene across threads, paced by the display. This run keeps every world stepped on one thread and advances it one frame at a time, so a caller reproduces exactly what it drove: the wasm test that clicks buttons and reads frames back, or a native one that does the same without a process boundary. The GPU is injected, the way the headless run takes one, so a test asks for a headless device and a windowed caller builds its own from the surface.
Re-exportsΒ§
use std::sync::Arc;πuse unlit_ecs::Entity;πuse unlit_ecs::World;πuse unlit_ecs::bundle;πuse unlit_wgpu::resources::ResHandle;πuse unlit3d::frame::Frame;πuse unlit3d::frame::dispatch_frame;πuse unlit3d::input::InputEvent;πuse unlit3d::input::InputWriter;πuse unlit3d::input::dispatch_input;πuse crate::headless::AUDIO_CHANNELS;πuse crate::headless::AUDIO_SAMPLE_RATE;πuse crate::scene::AudioSetup;πuse crate::scene::Ball;πuse crate::scene::HEADLESS_HZ;πuse crate::scene::PanelLayout;πuse crate::scene::PanelSlots;πuse crate::scene::SceneHandles;πuse crate::scene::SceneStepper;πuse crate::scene::SceneTracks;πuse crate::scene::Track;πuse crate::scene::WINDOW_SIZE;πuse crate::scene::mount_scene_content;πuse crate::scene::setup_render_world;πuse crate::scene::spawn_scene;πuse unlit3d::prelude::*;πuse unlit3dx::prelude::*;π
StructsΒ§
- Interactive
- An interactive scene stepping inline: one frame per call, no pacing of its own.
- Interactive
Config - The settings one interactive run builds with.
- Recording
- A finished recording: the format it captured at, and the samples it held.
- Scene
Status - The scene state a caller asserts on: the balls and the sequence.
FunctionsΒ§
- run
- Build the interactive scene: an input writer on the host, the sceneβs worlds, an offscreen render target and the stepping interactive.
- scene_
status - Report the scene state: the balls the gameplay world holds and where its MIDI sequence stands.