Expand description
App wiring: Repose platform runners + sim/gamepad helpers.
A game provides a root view; ShellHooks is the game-side per-frame
contract (snapshot production + variable-rate hook) that the game’s own
root closure drives. The run_* runners below are thin mounts only:
they do not call ShellHooks or step the sim — stepping stays game-side
via Sim::step (see the rozvp pilot runner for the reference wiring).
Per-game UI stays in the game crate as Repose views.
Structs§
- Camera2d
- 2D orthographic camera. Owned by the UI (signals), copied into the snapshot per frame.
- Frame
Input - Everything the viewport draws this frame. Plain data, snapshot per frame.
- Gamepad
Id - Opaque gamepad handle. Backend-local index, stable for the connection
lifetime. Survives across frames; invalid after
GamepadEvent::Disconnected. - Gamepad
Poller - Gamepad polling unified on the shared
repose-platformbackend: one button layout, one deadzone, one mapping policy for repose apps and repame games alike. Events feed straight intoReposeRuntime::handle_gamepad(UI nav) andrt.gamepads(gameplay). - Sim
- Fixed-timestep simulation state.
- SimTime
- Sim time resource, advanced once per fixed step.
- Sprite
Instance - One batched sprite.
uvis in atlas texels normalized to 0..1.
Enums§
- Gamepad
Event - Pick
Event - UI-facing pointer events from the viewport.
Traits§
- Shell
Hooks - Per-frame hooks the game implements. Snapshot production (
frame_input) is the only required render coupling: plain data out, no renderer types.
Functions§
- run_
desktop - Desktop entry point. Mounts
rooton the repose-platform runner with the given window title/size. The root closure owns stepping (sim, rigs) and must callrequest_frame()for continuous frames; see the rozvp pilot runner for the reference wiring.