Struct SDL_GPURasterizerState
#[repr(C)]pub struct SDL_GPURasterizerState {
pub fill_mode: SDL_GPUFillMode,
pub cull_mode: SDL_GPUCullMode,
pub front_face: SDL_GPUFrontFace,
pub depth_bias_constant_factor: f32,
pub depth_bias_clamp: f32,
pub depth_bias_slope_factor: f32,
pub enable_depth_bias: bool,
pub enable_depth_clip: bool,
pub padding1: u8,
pub padding2: u8,
}
dep_sdl3
only.Expand description
A structure specifying the parameters of the graphics pipeline rasterizer state.
NOTE: Some backend APIs (D3D11/12) will enable depth clamping even if enable_depth_clip is true. If you rely on this clamp+clip behavior, consider enabling depth clip and then manually clamping depth in your fragment shaders on Metal and Vulkan.
§Availability
This struct is available since SDL 3.2.0.
§See also
Fields§
§fill_mode: SDL_GPUFillMode
Whether polygons will be filled in or drawn as lines.
cull_mode: SDL_GPUCullMode
The facing direction in which triangles will be culled.
front_face: SDL_GPUFrontFace
The vertex winding that will cause a triangle to be determined as front-facing.
depth_bias_constant_factor: f32
A scalar factor controlling the depth value added to each fragment.
depth_bias_clamp: f32
The maximum depth bias of a fragment.
depth_bias_slope_factor: f32
A scalar factor applied to a fragment’s slope in depth calculations.
enable_depth_bias: bool
true to bias fragment depth values.
enable_depth_clip: bool
true to enable depth clip, false to enable depth clamp.
padding1: u8
§padding2: u8
Trait Implementations§
§impl Clone for SDL_GPURasterizerState
impl Clone for SDL_GPURasterizerState
§fn clone(&self) -> SDL_GPURasterizerState
fn clone(&self) -> SDL_GPURasterizerState
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Default for SDL_GPURasterizerState
impl Default for SDL_GPURasterizerState
§fn default() -> SDL_GPURasterizerState
fn default() -> SDL_GPURasterizerState
impl Copy for SDL_GPURasterizerState
Auto Trait Implementations§
impl Freeze for SDL_GPURasterizerState
impl RefUnwindSafe for SDL_GPURasterizerState
impl Send for SDL_GPURasterizerState
impl Sync for SDL_GPURasterizerState
impl Unpin for SDL_GPURasterizerState
impl UnwindSafe for SDL_GPURasterizerState
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
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
TypeId
of Self
using a custom hasher.Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Source§fn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Source§fn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Source§fn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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