Skip to main content

render_dda

Function render_dda 

Source
pub fn render_dda(
    camera: &Camera,
    settings: &OpticastSettings,
    grid: GridView<'_>,
    pitch_pixels: usize,
    env: &DdaEnv<'_>,
    mip: u32,
    sink: &mut impl PixelSink,
)
Expand description

Render one grid into sink with per-pixel 3D-DDA.

camera is the grid-local pose, settings (OpticastSettings) carries the projection + viewport (including the y_start..y_end strip bound), and grid is the per-frame GridView borrow. pitch_pixels is the framebuffer row stride in pixels (matches ScalarRasterizer::new’s argument).

On a miss, a textured sky (DdaEnv::sky) is sampled per ray direction and written at +inf depth; with no textured sky the miss writes nothing, so the caller’s solid sky pre-fill shows (the render_scene_composed path pre-fills it).