#[repr(C)]pub struct DepthStencilState {
pub format: TextureFormat,
pub depth_write_enabled: Option<bool>,
pub depth_compare: Option<CompareFunction>,
pub stencil: StencilState,
pub bias: DepthBiasState,
}Expand description
Describes the depth/stencil state in a render pipeline.
Corresponds to WebGPU GPUDepthStencilState.
Fields§
§format: TextureFormatFormat of the depth/stencil buffer, must be special depth format. Must match the format
of the depth/stencil attachment in CommandEncoder::begin_render_pass.
depth_write_enabled: Option<bool>Whether to write updated depth values to the depth attachment.
If format is a depth or depth/stencil format, then this must be Some.
Otherwise, specifying None is preferred, but Some(false) is also
accepted.
depth_compare: Option<CompareFunction>Comparison function used to compare depth values in the depth test.
If depth_write_enabled is Some(true) or if depth_fail_op for either
stencil face is not Keep, then this must be Some. Otherwise, specifying
None is preferred, but Some(CompareFunction::Always) is also accepted.
stencil: StencilStateStencil state.
bias: DepthBiasStateDepth bias state.
Implementations§
Source§impl DepthStencilState
impl DepthStencilState
Sourcepub fn stencil(
format: TextureFormat,
stencil: StencilState,
) -> DepthStencilState
pub fn stencil( format: TextureFormat, stencil: StencilState, ) -> DepthStencilState
Construct DepthStencilState for a stencil operation with no depth operation.
Panics if format does not have a stencil aspect.
Sourcepub fn is_depth_enabled(&self) -> bool
pub fn is_depth_enabled(&self) -> bool
Returns true if the depth testing is enabled.
Sourcepub fn is_depth_read_only(&self) -> bool
pub fn is_depth_read_only(&self) -> bool
Returns true if the state doesn’t mutate the depth buffer.
Sourcepub fn is_stencil_read_only(&self, cull_mode: Option<Face>) -> bool
pub fn is_stencil_read_only(&self, cull_mode: Option<Face>) -> bool
Returns true if the state doesn’t mutate the stencil.
Sourcepub fn is_read_only(&self, cull_mode: Option<Face>) -> bool
pub fn is_read_only(&self, cull_mode: Option<Face>) -> bool
Returns true if the state doesn’t mutate either depth or stencil of the target.
Trait Implementations§
Source§impl Clone for DepthStencilState
impl Clone for DepthStencilState
Source§fn clone(&self) -> DepthStencilState
fn clone(&self) -> DepthStencilState
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more