Struct wgpu::PrimitiveState
source · [−]#[repr(C)]pub struct PrimitiveState {
pub topology: PrimitiveTopology,
pub strip_index_format: Option<IndexFormat>,
pub front_face: FrontFace,
pub cull_mode: Option<Face>,
pub unclipped_depth: bool,
pub polygon_mode: PolygonMode,
pub conservative: bool,
}
Expand description
Describes the state of primitive assembly and rasterization in a render pipeline.
Corresponds to WebGPU GPUPrimitiveState
.
Fields
topology: PrimitiveTopology
The primitive topology used to interpret vertices.
strip_index_format: Option<IndexFormat>
When drawing strip topologies with indices, this is the required format for the index buffer. This has no effect on non-indexed or non-strip draws.
front_face: FrontFace
The face to consider the front for the purpose of culling and stencil operations.
cull_mode: Option<Face>
The face culling mode.
unclipped_depth: bool
If set to true, the polygon depth is not clipped to 0-1 before rasterization.
Enabling this requires Features::DEPTH_CLIP_CONTROL
to be enabled.
polygon_mode: PolygonMode
Controls the way each polygon is rasterized. Can be either Fill
(default), Line
or Point
Setting this to Line
requires Features::POLYGON_MODE_LINE
to be enabled.
Setting this to Point
requires Features::POLYGON_MODE_POINT
to be enabled.
conservative: bool
If set to true, the primitives are rendered with conservative overestimation. I.e. any rastered pixel touched by it is filled. Only valid for PolygonMode::Fill!
Enabling this requires Features::CONSERVATIVE_RASTERIZATION
to be enabled.
Trait Implementations
sourceimpl Clone for PrimitiveState
impl Clone for PrimitiveState
sourcefn clone(&self) -> PrimitiveState
fn clone(&self) -> PrimitiveState
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for PrimitiveState
impl Debug for PrimitiveState
sourceimpl Default for PrimitiveState
impl Default for PrimitiveState
sourcefn default() -> PrimitiveState
fn default() -> PrimitiveState
sourceimpl<'de> Deserialize<'de> for PrimitiveState
impl<'de> Deserialize<'de> for PrimitiveState
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<PrimitiveState, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<PrimitiveState, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
sourceimpl Hash for PrimitiveState
impl Hash for PrimitiveState
sourceimpl PartialEq<PrimitiveState> for PrimitiveState
impl PartialEq<PrimitiveState> for PrimitiveState
sourcefn eq(&self, other: &PrimitiveState) -> bool
fn eq(&self, other: &PrimitiveState) -> bool
sourceimpl Serialize for PrimitiveState
impl Serialize for PrimitiveState
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Copy for PrimitiveState
impl Eq for PrimitiveState
impl StructuralEq for PrimitiveState
impl StructuralPartialEq for PrimitiveState
Auto Trait Implementations
impl RefUnwindSafe for PrimitiveState
impl Send for PrimitiveState
impl Sync for PrimitiveState
impl Unpin for PrimitiveState
impl UnwindSafe for PrimitiveState
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.