pub struct RayHit {
pub grid: GridId,
pub voxel: IVec3,
pub world: DVec3,
pub t: f64,
pub color: Option<u32>,
}Expand description
A solid-voxel hit from Scene::raycast.
Fields§
§grid: GridIdThe grid the ray hit.
voxel: IVec3Grid-local integer voxel coordinate of the hit cell.
world: DVec3World-space hit point (origin + t · normalize(dir)).
t: f64World distance from the ray origin to the hit.
color: Option<u32>Packed colour of the hit voxel, or None if it’s an untextured
(bedrock / interior) cell. See Grid::voxel_color.
Trait Implementations§
impl Copy for RayHit
impl StructuralPartialEq for RayHit
Auto Trait Implementations§
impl Freeze for RayHit
impl RefUnwindSafe for RayHit
impl Send for RayHit
impl Sync for RayHit
impl Unpin for RayHit
impl UnsafeUnpin for RayHit
impl UnwindSafe for RayHit
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