pub enum StencilTest {
AlwaysPass,
AlwaysFail,
IfLess {
mask: u32,
},
IfLessOrEqual {
mask: u32,
},
IfMore {
mask: u32,
},
IfMoreOrEqual {
mask: u32,
},
IfEqual {
mask: u32,
},
IfNotEqual {
mask: u32,
},
}Expand description
Specifies which comparison the GPU will do to determine whether a sample passes the stencil
test. The general equation is (ref & mask) CMP (stencil & mask), where ref is the reference
value (stencil_reference_value_clockwise or stencil_reference_value_counter_clockwise),
CMP is the comparison chosen, and stencil is the current value in the stencil buffer.
Variants§
AlwaysPass
The stencil test always passes.
AlwaysFail
The stencil test always fails.
IfLess
(ref & mask) < (stencil & mask)
IfLessOrEqual
(ref & mask) <= (stencil & mask)
IfMore
(ref & mask) > (stencil & mask)
IfMoreOrEqual
(ref & mask) >= (stencil & mask)
IfEqual
(ref & mask) == (stencil & mask)
IfNotEqual
(ref & mask) != (stencil & mask)
Trait Implementations§
Source§impl Clone for StencilTest
impl Clone for StencilTest
Source§fn clone(&self) -> StencilTest
fn clone(&self) -> StencilTest
Returns a duplicate 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 StencilTest
impl Debug for StencilTest
Source§impl PartialEq for StencilTest
impl PartialEq for StencilTest
impl Copy for StencilTest
impl Eq for StencilTest
impl StructuralPartialEq for StencilTest
Auto Trait Implementations§
impl Freeze for StencilTest
impl RefUnwindSafe for StencilTest
impl Send for StencilTest
impl Sync for StencilTest
impl Unpin for StencilTest
impl UnwindSafe for StencilTest
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> Content for Twhere
T: Copy,
impl<T> Content for Twhere
T: Copy,
Source§fn read<F, E>(size: usize, f: F) -> Result<T, E>
fn read<F, E>(size: usize, f: F) -> Result<T, E>
Prepares an output buffer, then turns this buffer into an
Owned.Source§fn get_elements_size() -> usize
fn get_elements_size() -> usize
Returns the size of each element.
Source§fn to_void_ptr(&self) -> *const ()
fn to_void_ptr(&self) -> *const ()
Produces a pointer to the data.
Source§fn ref_from_ptr<'a>(ptr: *mut (), size: usize) -> Option<*mut T>
fn ref_from_ptr<'a>(ptr: *mut (), size: usize) -> Option<*mut T>
Builds a pointer to this type from a raw pointer.
Source§fn is_size_suitable(size: usize) -> bool
fn is_size_suitable(size: usize) -> bool
Returns true if the size is suitable to store a type like this.
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SetParameter for T
impl<T> SetParameter for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§unsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.