Trait ShaderSize

Source
pub trait ShaderSize: ShaderType {
    const SHADER_SIZE: NonZero<u64> = _;
}
Expand description

Trait implemented for all WGSL fixed-footprint types

Provided Associated Constants§

Source

const SHADER_SIZE: NonZero<u64> = _

Represents WGSL Size (equivalent to ShaderType::min_size)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl ShaderSize for Option<NonZero<i32>>

Source§

impl ShaderSize for Option<NonZero<u32>>

Source§

impl ShaderSize for f32

Source§

impl ShaderSize for i32

Source§

impl ShaderSize for u32

Source§

impl ShaderSize for Wrapping<i32>

Source§

impl ShaderSize for Wrapping<u32>

Source§

impl ShaderSize for AtomicI32

Source§

impl ShaderSize for AtomicU32

Source§

impl<T> ShaderSize for Cow<'_, T>
where T: ToOwned<Owned = T> + ShaderSize + ?Sized,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE

Source§

impl<T> ShaderSize for &T
where T: ShaderSize + ?Sized,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE

Source§

impl<T> ShaderSize for &mut T
where T: ShaderSize + ?Sized,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE

Source§

impl<T> ShaderSize for Rc<T>
where T: ShaderSize + ?Sized,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE

Source§

impl<T> ShaderSize for Arc<T>
where T: ShaderSize + ?Sized,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE

Source§

impl<T> ShaderSize for Cell<T>
where T: Copy + ShaderSize,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE

Source§

impl<T, const N: usize> ShaderSize for [T; N]
where T: ShaderSize,

Implementors§

Source§

impl ShaderSize for DepthOfFieldUniform

Source§

impl ShaderSize for MotionBlur

Source§

impl ShaderSize for OrderIndependentTransparencySettings

Source§

impl ShaderSize for ChromaticAberrationUniform

Source§

impl ShaderSize for PreviousViewData

Source§

impl ShaderSize for SmaaInfoUniform

Source§

impl ShaderSize for PbrDeferredLightingDepthId
where u32: ShaderSize,

Source§

impl ShaderSize for EnvironmentMapUniform

Source§

impl ShaderSize for GpuClusterableObject

Source§

impl ShaderSize for GpuClusterableObjectsUniform

Source§

impl ShaderSize for GpuDirectionalCascade

Source§

impl ShaderSize for GpuDirectionalLight

Source§

impl ShaderSize for GpuFog

Source§

impl ShaderSize for GpuLights

Source§

impl ShaderSize for LightProbesUniform
where [RenderLightProbe; 8]: ShaderSize, i32: ShaderSize, u32: ShaderSize, f32: ShaderSize,

Source§

impl ShaderSize for MeshCullingData

Source§

impl ShaderSize for MeshInputUniform

Source§

impl ShaderSize for MeshUniform

Source§

impl ShaderSize for ScreenSpaceReflectionsUniform

Source§

impl ShaderSize for StandardMaterialUniform

Source§

impl ShaderSize for IVec2
where i32: ShaderSize,

Source§

impl ShaderSize for IVec3
where i32: ShaderSize,

Source§

impl ShaderSize for IVec4
where i32: ShaderSize,

Source§

impl ShaderSize for LinearRgba

Source§

impl ShaderSize for Mat2
where f32: ShaderSize,

Source§

impl ShaderSize for Mat3
where f32: ShaderSize,

Source§

impl ShaderSize for Mat4
where f32: ShaderSize,

Source§

impl ShaderSize for UVec2
where u32: ShaderSize,

Source§

impl ShaderSize for UVec3
where u32: ShaderSize,

Source§

impl ShaderSize for UVec4
where u32: ShaderSize,

Source§

impl ShaderSize for Vec2
where f32: ShaderSize,

Source§

impl ShaderSize for Vec3
where f32: ShaderSize,

Source§

impl ShaderSize for Vec4
where f32: ShaderSize,

Source§

impl ShaderSize for IndirectParameters
where u32: ShaderSize,

Source§

impl ShaderSize for PreprocessWorkItem
where u32: ShaderSize,

Source§

impl ShaderSize for GlobalsUniform

Source§

impl ShaderSize for ColorGradingUniform

Source§

impl ShaderSize for ViewUniform

Source§

impl ShaderSize for ArrayLength

Source§

impl<T> ShaderSize for Box<T>
where T: ShaderSize + ?Sized,

Source§

const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE