#[repr(C)]pub struct ShadowPassPush {
pub cascade_idx: u32,
pub _pad: [u32; 3],
}Expand description
Per-shadow-pass push constant identifying which cascade is being rendered.
Used so the shadow vertex shader can index ShadowUniforms.light_vps[i]
from a single bound UBO instead of re-binding a different uniform per pass.
Consumed at runtime only by the Metal shadow pass (Vulkan and DirectX each
define their own private push-constant layouts in their respective draw.rs
modules), but kept un-gated like the rest of this module so the shared
shader-layout contract can validate its MSL layout on every platform.
Fields§
§cascade_idx: u32Which cascade the shadow pass is rendering.
_pad: [u32; 3]Padding so the field layout matches the shader-side struct.
Trait Implementations§
Source§impl Clone for ShadowPassPush
impl Clone for ShadowPassPush
Source§fn clone(&self) -> ShadowPassPush
fn clone(&self) -> ShadowPassPush
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for ShadowPassPush
impl NoUninit for ShadowPassPush
Auto Trait Implementations§
impl Freeze for ShadowPassPush
impl RefUnwindSafe for ShadowPassPush
impl Send for ShadowPassPush
impl Sync for ShadowPassPush
impl Unpin for ShadowPassPush
impl UnsafeUnpin for ShadowPassPush
impl UnwindSafe for ShadowPassPush
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