Struct bevy_retrograde::core::luminance::vertex::VertexAttribDesc [−]
pub struct VertexAttribDesc { pub ty: VertexAttribType, pub dim: VertexAttribDim, pub unit_size: usize, pub align: usize, }
Expand description
Vertex attribute format.
Vertex attributes (such as positions, colors, texture UVs, normals, etc.) have all a specific format that must be passed to the GPU. This type gathers information about a single vertex attribute and is completly agnostic of the rest of the attributes used to form a vertex.
A type is associated with a single value of type VertexAttribDesc
via the VertexAttrib
trait. If such an implementor exists for a type, it means that this type can be used as a vertex
attribute.
Fields
ty: VertexAttribType
Type of the attribute. See VertexAttribType
for further details.
dim: VertexAttribDim
Dimension of the attribute. It should be in 1–4. See VertexAttribDim
for further details.
unit_size: usize
Size in bytes that a single element of the attribute takes. That is, if your attribute has a dimension set to 2, then the unit size should be the size of a single element (not two).
align: usize
Alignment of the attribute. The best advice is to respect what Rust does, so it’s highly
recommended to use ::std::mem::align_of
to let it does the job for you.
Implementations
impl VertexAttribDesc
impl VertexAttribDesc
pub fn normalize(self) -> VertexAttribDesc
pub fn normalize(self) -> VertexAttribDesc
Normalize a vertex attribute format’s type.
Trait Implementations
impl Clone for VertexAttribDesc
impl Clone for VertexAttribDesc
pub fn clone(&self) -> VertexAttribDesc
pub fn clone(&self) -> VertexAttribDesc
Returns a copy of the value. Read more
Performs copy-assignment from source
. Read more
impl Debug for VertexAttribDesc
impl Debug for VertexAttribDesc
impl Hash for VertexAttribDesc
impl Hash for VertexAttribDesc
impl PartialEq<VertexAttribDesc> for VertexAttribDesc
impl PartialEq<VertexAttribDesc> for VertexAttribDesc
pub fn eq(&self, other: &VertexAttribDesc) -> bool
pub fn eq(&self, other: &VertexAttribDesc) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
pub fn ne(&self, other: &VertexAttribDesc) -> bool
pub fn ne(&self, other: &VertexAttribDesc) -> bool
This method tests for !=
.
impl Copy for VertexAttribDesc
impl Eq for VertexAttribDesc
impl StructuralEq for VertexAttribDesc
impl StructuralPartialEq for VertexAttribDesc
Auto Trait Implementations
impl RefUnwindSafe for VertexAttribDesc
impl Send for VertexAttribDesc
impl Sync for VertexAttribDesc
impl Unpin for VertexAttribDesc
impl UnwindSafe for VertexAttribDesc
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: 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
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub 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. Read more
impl<T> DynHash for T where
T: DynEq + Hash,
impl<T> DynHash for T where
T: DynEq + Hash,
Compare self to key
and return true
if they are equal.
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
pub fn vzip(self) -> V