#[repr(C)]pub struct PreprocessWorkItem {
pub input_index: u32,
pub output_or_indirect_parameters_index: u32,
}Expand description
One invocation of the preprocessing shader: i.e. one mesh instance in a view.
Fields§
§input_index: u32The index of the batch input data in the input buffer that the shader reads from.
output_or_indirect_parameters_index: u32In direct mode, the index of the mesh uniform; in indirect mode, the
index of the IndirectParametersGpuMetadata.
In indirect mode, this is the index of the
IndirectParametersGpuMetadata in the
IndirectParametersBuffers::indexed_metadata or
IndirectParametersBuffers::non_indexed_metadata.
Trait Implementations§
Source§impl Clone for PreprocessWorkItem
impl Clone for PreprocessWorkItem
Source§fn clone(&self) -> PreprocessWorkItem
fn clone(&self) -> PreprocessWorkItem
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl CreateFrom for PreprocessWorkItemwhere
PreprocessWorkItem: ShaderType<ExtraMetadata = StructMetadata<2>>,
u32: for<'__> CreateFrom + for<'__> CreateFrom,
impl CreateFrom for PreprocessWorkItemwhere
PreprocessWorkItem: ShaderType<ExtraMetadata = StructMetadata<2>>,
u32: for<'__> CreateFrom + for<'__> CreateFrom,
fn create_from<B>(reader: &mut Reader<B>) -> PreprocessWorkItemwhere
B: BufferRef,
Source§impl Default for PreprocessWorkItem
impl Default for PreprocessWorkItem
Source§fn default() -> PreprocessWorkItem
fn default() -> PreprocessWorkItem
Returns the “default value” for a type. Read more
Source§impl ReadFrom for PreprocessWorkItemwhere
PreprocessWorkItem: ShaderType<ExtraMetadata = StructMetadata<2>>,
u32: for<'__> ReadFrom + for<'__> ReadFrom,
impl ReadFrom for PreprocessWorkItemwhere
PreprocessWorkItem: ShaderType<ExtraMetadata = StructMetadata<2>>,
u32: for<'__> ReadFrom + for<'__> ReadFrom,
Source§impl ShaderSize for PreprocessWorkItemwhere
u32: ShaderSize,
impl ShaderSize for PreprocessWorkItemwhere
u32: ShaderSize,
Source§const SHADER_SIZE: NonZero<u64> = _
const SHADER_SIZE: NonZero<u64> = _
Represents WGSL Size (equivalent to
ShaderType::min_size)Source§impl ShaderType for PreprocessWorkItem
impl ShaderType for PreprocessWorkItem
Source§fn assert_uniform_compat()
fn assert_uniform_compat()
Asserts that
Self meets the requirements of the
uniform address space restrictions on stored values and the
uniform address space layout constraints Read moreSource§impl WriteInto for PreprocessWorkItemwhere
PreprocessWorkItem: ShaderType<ExtraMetadata = StructMetadata<2>>,
u32: for<'__> WriteInto + for<'__> WriteInto,
impl WriteInto for PreprocessWorkItemwhere
PreprocessWorkItem: ShaderType<ExtraMetadata = StructMetadata<2>>,
u32: for<'__> WriteInto + for<'__> WriteInto,
fn write_into<B>(&self, writer: &mut Writer<B>)where
B: BufferMut,
impl Copy for PreprocessWorkItem
impl Pod for PreprocessWorkItem
Auto Trait Implementations§
impl Freeze for PreprocessWorkItem
impl RefUnwindSafe for PreprocessWorkItem
impl Send for PreprocessWorkItem
impl Sync for PreprocessWorkItem
impl Unpin for PreprocessWorkItem
impl UnwindSafe for PreprocessWorkItem
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
Return the
T ShaderType for self. When used in AsBindGroup
derives, it is safe to assume that all images in self exist.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
Source§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
Source§type Bits = T
type Bits = T
Self must have the same layout as the specified Bits except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern.Source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self using default().
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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> ⓘ
Converts
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> ⓘ
Converts
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 moreSource§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.
Source§impl<T> TypeData for T
impl<T> TypeData for T
Source§fn clone_type_data(&self) -> Box<dyn TypeData>
fn clone_type_data(&self) -> Box<dyn TypeData>
Creates a type-erased clone of this value.