pub struct GpuViewCutout {
pub tan_outer: f32,
pub tan_inner: f32,
pub margin: f32,
}Expand description
OC.0 — the frame’s view cutout (“keyhole”, stage OC) in the wire
form the scene kernel consumes: the view-cone half-angle tangents
(derived by the facade from the keyhole’s pixel radius and the
frame’s focal length — resolution-invariant, so no SSAA scaling)
plus the column margin. The kernel classifies whole CELLS by their
centres against the tapered eye→focus cone (the same rule as the
CPU CpuCutout); the focus itself arrives PER GRID, pre-converted
into each grid’s frame
(GridWorldTransform::cutout_focus_local, with the focus-plane
z in GridWorldTransform::cutout_focus_z). Primary rays only —
the shadow marches never read it.
Fields§
§tan_outer: f32Tangent of the cone’s outer half-angle (radius_px / focal).
tan_inner: f32Tangent of the full-reveal inner half-angle: the reveal distance tapers linearly to zero between the two (a deterministic geometric funnel rim, no dither).
margin: f32How far short of the character COLUMN the reveal stops, world
units (non-negative). The reveal surface hugs the column — the
vertical segment at the focus xy between the focus plane
(GridWorldTransform::cutout_focus_z, the feet) and its
mirror above the focus (the head) — so an obstacle the
character stands right behind cuts down to the boots, not just
to a fixed eye-distance sphere through the chest.
Trait Implementations§
Source§impl Clone for GpuViewCutout
impl Clone for GpuViewCutout
Source§fn clone(&self) -> GpuViewCutout
fn clone(&self) -> GpuViewCutout
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more