pub trait ShaderSize: ShaderType {
const SHADER_SIZE: NonZero<u64> = _;
}Expand description
Trait implemented for all WGSL fixed-footprint types
Provided Associated Constants§
Sourceconst SHADER_SIZE: NonZero<u64> = _
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§
impl ShaderSize for Option<NonZero<i32>>
impl ShaderSize for Option<NonZero<u32>>
impl ShaderSize for f32
impl ShaderSize for i32
impl ShaderSize for u32
impl ShaderSize for Wrapping<i32>
impl ShaderSize for Wrapping<u32>
impl ShaderSize for Atomic<i32>
impl ShaderSize for Atomic<u32>
Source§impl<T> ShaderSize for Cow<'_, T>
impl<T> ShaderSize for Cow<'_, T>
const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE
Source§impl<T> ShaderSize for &Twhere
T: ShaderSize + ?Sized,
impl<T> ShaderSize for &Twhere
T: ShaderSize + ?Sized,
const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE
Source§impl<T> ShaderSize for &mut Twhere
T: ShaderSize + ?Sized,
impl<T> ShaderSize for &mut Twhere
T: ShaderSize + ?Sized,
const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE
Source§impl<T> ShaderSize for Rc<T>where
T: ShaderSize + ?Sized,
impl<T> ShaderSize for Rc<T>where
T: ShaderSize + ?Sized,
const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE
Source§impl<T> ShaderSize for Cell<T>where
T: Copy + ShaderSize,
impl<T> ShaderSize for Cell<T>where
T: Copy + ShaderSize,
const SHADER_SIZE: NonZero<u64> = T::SHADER_SIZE
impl<T, const N: usize> ShaderSize for [T; N]where
T: ShaderSize,
Implementors§
impl ShaderSize for DownsamplingConstants
impl ShaderSize for OitFragmentNodewhere
u32: ShaderSize,
impl ShaderSize for OrderIndependentTransparencySettings
impl ShaderSize for PreviousViewDatawhere
Mat4: ShaderSize,
impl ShaderSize for SkyboxUniforms
impl ShaderSize for MorphAttributes
impl ShaderSize for RenderClusteredDecal
impl ShaderSize for ForwardDecalMaterialExtUniformwhere
f32: ShaderSize,
impl ShaderSize for PbrDeferredLightingDepthIdwhere
u32: ShaderSize,
impl ShaderSize for FilteringConstants
impl ShaderSize for AtmosphereTransformwhere
Mat4: ShaderSize,
impl ShaderSize for GpuAtmosphere
impl ShaderSize for ContactShadowsUniform
impl ShaderSize for GpuAtmosphereSettings
impl ShaderSize for GpuClusteredLight
impl ShaderSize for GpuDirectionalCascade
impl ShaderSize for GpuDirectionalLightwhere
[GpuDirectionalCascade; 4]: ShaderSize,
Vec4: ShaderSize,
Vec3: ShaderSize,
u32: ShaderSize,
f32: ShaderSize,
impl ShaderSize for GpuFog
impl ShaderSize for GpuLightswhere
[GpuDirectionalLight; 10]: ShaderSize,
Vec4: ShaderSize,
UVec4: ShaderSize,
u32: ShaderSize,
i32: ShaderSize,
[GpuRectLight; 8]: ShaderSize,
impl ShaderSize for GpuMorphDescriptorwhere
u32: ShaderSize,
impl ShaderSize for GpuRectLight
impl ShaderSize for LightProbesUniformwhere
[RenderLightProbe; 8]: ShaderSize,
i32: ShaderSize,
u32: ShaderSize,
Vec4: ShaderSize,
f32: ShaderSize,
impl ShaderSize for MeshCullingDatawhere
Vec4: ShaderSize,
impl ShaderSize for MeshInputUniform
impl ShaderSize for MeshUniformwhere
[Vec4; 3]: ShaderSize,
[Vec4; 2]: ShaderSize,
f32: ShaderSize,
u32: ShaderSize,
UVec2: ShaderSize,
impl ShaderSize for PreviousMeshInputUniform
impl ShaderSize for ScreenSpaceReflectionsUniform
impl ShaderSize for StandardMaterialUniformwhere
Vec4: ShaderSize,
Mat3: ShaderSize,
Vec3: ShaderSize,
f32: ShaderSize,
Vec2: ShaderSize,
u32: ShaderSize,
impl ShaderSize for WireframeVertexPullParamswhere
u32: ShaderSize,
impl ShaderSize for DepthOfFieldUniform
impl ShaderSize for ChromaticAberrationUniform
impl ShaderSize for LensDistortionUniform
impl ShaderSize for VignetteUniform
impl ShaderSize for IVec2where
i32: ShaderSize,
impl ShaderSize for IVec3where
i32: ShaderSize,
impl ShaderSize for IVec4where
i32: ShaderSize,
impl ShaderSize for LinearRgba
Available on crate feature
encase only.