Skip to main content

render_swim_frame

Function render_swim_frame 

Source
pub fn render_swim_frame(
    koi_development: &KoiDevelopment,
    koi_body: KoiBody,
    behavior: Behavior,
    frame_index: u32,
) -> KoiFrame
Expand description

Render one frame of a behavior’s seamless loop, colored like render_koi, in the pose motion::calculate_swim_pose gives; frame numbers wrap around the loop of motion::frame_count(behavior) frames. Laps circle the frame center, and longer koi swim a tighter lap so every size fits. A hovering loop is framed once, centered on the koi’s sweep, and its drift shrinks only as far as the largest koi need to stay inside. The view never follows the fins, so it never shakes. Under water the koi turns toward water blue and partly drops out, more with depth. Identical inputs produce identical pixels without I/O, clock reads, or input mutation.