pub struct RtParamsInputs {
pub fov_y_radians: f32,
pub aspect: f32,
pub inv_view_rot: [[f32; 4]; 4],
pub cam_pos: [f32; 3],
pub sun_dir: [f32; 3],
pub sun_color: [f32; 3],
pub prefilter_mip_count: f32,
pub sky_rot: [[f32; 4]; 3],
}Expand description
Per-frame camera + sun inputs for building the RT-reflection GPU uniform.
fov_y_radians / aspect give the view-ray scale used to rebuild a
view-space position from the SSR pre-pass G-buffer. inv_view_rot is the
view-to-world rotation (the transpose of the view matrix’s orthonormal 3x3)
and cam_pos the world camera position; together they form the
camera-to-world transform that lifts the reconstructed hit point + normal
into the BVH’s world space. sun_dir is the world-space unit direction
toward the sun and sun_color its radiance; prefilter_mip_count is the IBL
cubemap mip count (0 = no IBL) for the miss fallback.
Fields§
§fov_y_radians: f32Vertical field of view in radians.
aspect: f32Viewport aspect ratio, width over height.
inv_view_rot: [[f32; 4]; 4]View-to-world rotation, column-major.
cam_pos: [f32; 3]World-space camera position.
sun_dir: [f32; 3]World-space unit direction toward the sun.
sun_color: [f32; 3]Sun radiance, linear RGB.
prefilter_mip_count: f32IBL cubemap mip count; 0 when there is no IBL fallback.
sky_rot: [[f32; 4]; 3]Rows of the sky’s inverse rotation, so a missed ray samples the same oriented sky the main pass shows. Identity when the sky does not turn.
Trait Implementations§
Source§impl Clone for RtParamsInputs
impl Clone for RtParamsInputs
Source§fn clone(&self) -> RtParamsInputs
fn clone(&self) -> RtParamsInputs
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 RtParamsInputs
Source§impl Debug for RtParamsInputs
impl Debug for RtParamsInputs
Source§impl PartialEq for RtParamsInputs
impl PartialEq for RtParamsInputs
impl StructuralPartialEq for RtParamsInputs
Auto Trait Implementations§
impl Freeze for RtParamsInputs
impl RefUnwindSafe for RtParamsInputs
impl Send for RtParamsInputs
impl Sync for RtParamsInputs
impl Unpin for RtParamsInputs
impl UnsafeUnpin for RtParamsInputs
impl UnwindSafe for RtParamsInputs
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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