Struct gfx::DrawState
[−]
#[must_use] pub struct DrawState { pub primitive: Primitive, pub multi_sample: Option<MultiSample>, pub scissor: Option<Rect>, pub stencil: Option<Stencil>, pub depth: Option<Depth>, pub blend: Option<Blend>, pub color_mask: ColorMask, }
An assembly of states that affect regular draw calls
Fields
primitive: Primitive
How to rasterize geometric primitives.
multi_sample: Option<MultiSample>
Multi-sampling mode
scissor: Option<Rect>
Scissor mask to use. If set, no pixel outside of this rectangle (in screen space) will be written to as a result of rendering.
stencil: Option<Stencil>
Stencil test to use. If None, no stencil testing is done.
depth: Option<Depth>
Depth test to use. If None, no depth testing is done.
blend: Option<Blend>
Blend function to use. If None, no blending is done.
color_mask: ColorMask
Color mask to use. Each flag indicates that the given color channel can be written to, and they can be OR'd together.
Methods
impl DrawState
fn new() -> DrawState
Create a default DrawState
. Uses counter-clockwise winding, culls the backface of each
primitive, and does no scissor/stencil/depth/blend/color masking.
fn get_target_mask(&self) -> Mask
Return a target mask that contains all the planes required by this state.
fn multi_sample(self) -> DrawState
Enable multi-sampled rasterization
fn stencil(self, fun: Comparison, value: u8) -> DrawState
Set the stencil test to a simple expression
fn depth(self, fun: Comparison, write: bool) -> DrawState
Set the depth test with the mask
fn scissor(self, x: u16, y: u16, w: u16, h: u16) -> DrawState
Set the scissor
fn blend(self, preset: BlendPreset) -> DrawState
Set the blend mode to one of the presets
Trait Implementations
impl PartialOrd<DrawState> for DrawState
fn partial_cmp(&self, __arg_0: &DrawState) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &DrawState) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &DrawState) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &DrawState) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &DrawState) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Debug for DrawState
fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.
impl PartialEq<DrawState> for DrawState
fn eq(&self, __arg_0: &DrawState) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &DrawState) -> bool
This method tests for !=
.
impl Clone for DrawState
fn clone(&self) -> DrawState
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more