pub enum BuiltinValue {
Show 47 variants
VertexIndex,
InstanceIndex,
ClipDistances,
Position,
FrontFacing,
FragDepth,
PrimitiveIndex,
SampleIndex,
SampleMask,
LocalInvocationId,
LocalInvocationIndex,
GlobalInvocationId,
GlobalInvocationIndex,
WorkgroupId,
WorkgroupIndex,
NumWorkgroups,
SubgroupInvocationId,
SubgroupSize,
SubgroupId,
NumSubgroups,
ViewIndex,
DrawIndex,
Barycentric,
BarycentricNoPerspective,
CullPrimitive,
PointIndex,
LineIndices,
TriangleIndices,
MeshTaskSize,
VertexCount,
Vertices,
PrimitiveCount,
Primitives,
RayInvocationId,
NumRayInvocations,
InstanceCustomData,
GeometryIndex,
WorldRayOrigin,
WorldRayDirection,
ObjectRayOrigin,
ObjectRayDirection,
RayTMin,
RayTCurrentMax,
ObjectToWorld,
WorldToObject,
HitKind,
HitBarycentrics,
}Expand description
Built-in value names.
Context-dependent tokens.
Variants§
VertexIndex
InstanceIndex
ClipDistances
Position
FrontFacing
FragDepth
PrimitiveIndex
SampleIndex
SampleMask
LocalInvocationId
LocalInvocationIndex
GlobalInvocationId
GlobalInvocationIndex
WorkgroupId
WorkgroupIndex
NumWorkgroups
SubgroupInvocationId
SubgroupSize
SubgroupId
NumSubgroups
ViewIndex
DrawIndex
Barycentric
BarycentricNoPerspective
CullPrimitive
PointIndex
LineIndices
TriangleIndices
MeshTaskSize
VertexCount
Vertices
PrimitiveCount
Primitives
RayInvocationId
vec3<u32>, available in all ray tracing stages.
NumRayInvocations
vec3<u32>, available in all ray tracing stages.
InstanceCustomData
u32, available in the any_hit and closest_hit stages.
GeometryIndex
u32, available in the any_hit and closest_hit stages.
WorldRayOrigin
vec3<f32>, available in the any_hit, closest_hit and miss stages.
WorldRayDirection
vec3<f32>, available in the any_hit, closest_hit and miss stages.
ObjectRayOrigin
vec3<f32>, available in the any_hit and closest_hit stages.
ObjectRayDirection
vec3<f32>, available in the any_hit and closest_hit stages.
RayTMin
f32, available in the any_hit, closest_hit and miss stages.
RayTCurrentMax
f32, available in the any_hit, closest_hit and miss stages.
ObjectToWorld
mat4x3<f32>, available in the any_hit and closest_hit stages.
WorldToObject
mat4x3<f32>, available in the any_hit and closest_hit stages.
HitKind
u32, available in the any_hit and closest_hit stages.
HitBarycentrics
Trait Implementations§
Source§impl Clone for BuiltinValue
impl Clone for BuiltinValue
Source§fn clone(&self) -> BuiltinValue
fn clone(&self) -> BuiltinValue
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 BuiltinValue
Source§impl Debug for BuiltinValue
impl Debug for BuiltinValue
Source§impl Display for BuiltinValue
impl Display for BuiltinValue
impl Eq for BuiltinValue
Source§impl From<BuiltinValue> for Attribute
impl From<BuiltinValue> for Attribute
Source§fn from(value: BuiltinValue) -> Self
fn from(value: BuiltinValue) -> Self
Source§impl FromStr for BuiltinValue
impl FromStr for BuiltinValue
Source§impl PartialEq for BuiltinValue
impl PartialEq for BuiltinValue
impl StructuralPartialEq for BuiltinValue
Auto Trait Implementations§
impl Freeze for BuiltinValue
impl RefUnwindSafe for BuiltinValue
impl Send for BuiltinValue
impl Sync for BuiltinValue
impl Unpin for BuiltinValue
impl UnsafeUnpin for BuiltinValue
impl UnwindSafe for BuiltinValue
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,
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