#[repr(i32)]pub enum UniqueSemantics {
Show 13 variants
MVP = 0,
Output = 1,
FinalViewport = 2,
FrameCount = 3,
FrameDirection = 4,
FrameTimeDelta = 5,
OriginalFPS = 6,
Rotation = 7,
OriginalAspect = 8,
OriginalAspectRotated = 9,
TotalSubFrames = 10,
CurrentSubFrame = 11,
FloatParameter = 12,
}
Expand description
Unique semantics are builtin uniforms passed by the shader runtime that are always available.
Variants§
MVP = 0
The Model View Projection matrix for the frame.
Output = 1
The viewport size of the current pass.
FinalViewport = 2
The viewport size of the final pass.
FrameCount = 3
The frame count, possibly with shader-defined modulo.
FrameDirection = 4
The direction in time where frames are rendered
FrameTimeDelta = 5
The time delta between the previous frame and the current frame.
OriginalFPS = 6
The original frames per second for the underlying content
Rotation = 7
The rotation index (0 = 0deg, 1 = 90deg, 2 = 180deg, 3 = 270deg)
OriginalAspect = 8
The original aspect ratio
OriginalAspectRotated = 9
The original aspect ratio, if rotated.
TotalSubFrames = 10
Total number of subframes.
CurrentSubFrame = 11
The current subframe (default 1)
FloatParameter = 12
A user defined float parameter.
Implementations§
Source§impl UniqueSemantics
impl UniqueSemantics
Sourcepub const fn semantics(self) -> Semantic<UniqueSemantics, ()>
pub const fn semantics(self) -> Semantic<UniqueSemantics, ()>
Produce a Semantic
for this UniqueSemantics
.
Sourcepub const fn binding_type(&self) -> UniformType
pub const fn binding_type(&self) -> UniformType
Get the type of the uniform when bound.
Trait Implementations§
Source§impl Clone for UniqueSemantics
impl Clone for UniqueSemantics
Source§fn clone(&self) -> UniqueSemantics
fn clone(&self) -> UniqueSemantics
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for UniqueSemantics
impl Debug for UniqueSemantics
Source§impl Display for UniqueSemantics
impl Display for UniqueSemantics
Source§impl From<UniqueSemantics> for UniformBinding
impl From<UniqueSemantics> for UniformBinding
Source§fn from(value: UniqueSemantics) -> Self
fn from(value: UniqueSemantics) -> Self
Converts to this type from the input type.
Source§impl Hash for UniqueSemantics
impl Hash for UniqueSemantics
Source§impl Ord for UniqueSemantics
impl Ord for UniqueSemantics
Source§fn cmp(&self, other: &UniqueSemantics) -> Ordering
fn cmp(&self, other: &UniqueSemantics) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for UniqueSemantics
impl PartialEq for UniqueSemantics
Source§impl PartialOrd for UniqueSemantics
impl PartialOrd for UniqueSemantics
impl Copy for UniqueSemantics
impl Eq for UniqueSemantics
impl StructuralPartialEq for UniqueSemantics
Auto Trait Implementations§
impl Freeze for UniqueSemantics
impl RefUnwindSafe for UniqueSemantics
impl Send for UniqueSemantics
impl Sync for UniqueSemantics
impl Unpin for UniqueSemantics
impl UnwindSafe for UniqueSemantics
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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