pub struct HitRecord {
pub t: f32,
pub point: [f32; 3],
pub normal: [f32; 3],
pub material_index: usize,
pub front_face: bool,
}Expand description
Record of a ray–surface intersection.
Fields§
§t: f32Ray parameter at intersection.
point: [f32; 3]World-space hit point.
normal: [f32; 3]Outward-facing surface normal (normalised).
material_index: usizeIndex into the scene’s material list.
front_face: boolTrue when the ray hits the front face.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HitRecord
impl RefUnwindSafe for HitRecord
impl Send for HitRecord
impl Sync for HitRecord
impl Unpin for HitRecord
impl UnsafeUnpin for HitRecord
impl UnwindSafe for HitRecord
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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