pub struct SceneViewCutout {
pub tan_outer: f32,
pub tan_inner: f32,
pub focus_world: [f64; 3],
pub margin: f32,
pub z_bias: f64,
}Expand description
OC.0 — the frame’s view cutout (“keyhole”, stage OC) as the facade hands it to the composed render: the view-cone half-angles (already derived from the keyhole’s pixel radius under the frame’s own projection — hazard 1: never window/host pixels; angles are resolution- and rotation-invariant) plus the world-space camera + focus the per-grid loop converts into each grid’s frame (exactly like the lights / CA clip conversions). Per-frame VIEW state — primary rays only: shadows, occluders, collision and gameplay raycasts never see 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
((radius − feather)/focal, clamped ≥ 0): the reveal distance
tapers linearly to zero between the two.
focus_world: [f64; 3]World-space focus point (the controlled character).
margin: f32How far short of the character column the reveal stops, WORLD
units (non-negative); per grid it converts to voxel units
(/vws) before entering the ray loop.
z_bias: f64Focus-plane bias, WORLD units along grid-local z (z-down:
positive lowers the plane, cutting more). Divided by the grid’s
voxel_world_size at the per-grid conversion.
Trait Implementations§
Source§impl Clone for SceneViewCutout
impl Clone for SceneViewCutout
Source§fn clone(&self) -> SceneViewCutout
fn clone(&self) -> SceneViewCutout
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for SceneViewCutout
Source§impl Debug for SceneViewCutout
impl Debug for SceneViewCutout
Source§impl PartialEq for SceneViewCutout
impl PartialEq for SceneViewCutout
impl StructuralPartialEq for SceneViewCutout
Auto Trait Implementations§
impl Freeze for SceneViewCutout
impl RefUnwindSafe for SceneViewCutout
impl Send for SceneViewCutout
impl Sync for SceneViewCutout
impl Unpin for SceneViewCutout
impl UnsafeUnpin for SceneViewCutout
impl UnwindSafe for SceneViewCutout
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more