Struct vulkano::pipeline::vertex::SingleInstanceBufferDefinition
source · pub struct SingleInstanceBufferDefinition<T>(pub PhantomData<T>);
Expand description
Same as SingleBufferDefinition
but advances by instance.
Tuple Fields
0: PhantomData<T>
Implementations
sourceimpl<T> SingleInstanceBufferDefinition<T>
impl<T> SingleInstanceBufferDefinition<T>
pub fn new() -> SingleInstanceBufferDefinition<T>
Trait Implementations
sourceimpl<T, I> VertexDefinition<I> for SingleInstanceBufferDefinition<T>where
T: Vertex,
I: ShaderInterfaceDef,
impl<T, I> VertexDefinition<I> for SingleInstanceBufferDefinition<T>where
T: Vertex,
I: ShaderInterfaceDef,
type BuffersIter = IntoIter<(u32, usize, InputRate)>
type BuffersIter = IntoIter<(u32, usize, InputRate)>
Iterator that returns the offset, the stride (in bytes) and input rate of each buffer.
type AttribsIter = IntoIter<(u32, u32, AttributeInfo), Global>
type AttribsIter = IntoIter<(u32, u32, AttributeInfo), Global>
Iterator that returns the attribute location, buffer id, and infos.
sourcefn definition(
&self,
interface: &I
) -> Result<(Self::BuffersIter, Self::AttribsIter), IncompatibleVertexDefinitionError>
fn definition(
&self,
interface: &I
) -> Result<(Self::BuffersIter, Self::AttribsIter), IncompatibleVertexDefinitionError>
Builds the vertex definition to use to link this definition to a vertex shader’s input
interface. Read more
sourceimpl<'a, B, V> VertexSource<B> for SingleInstanceBufferDefinition<V>where
B: TypedBufferAccess<Content = [V]> + Send + Sync + 'static,
V: Vertex,
impl<'a, B, V> VertexSource<B> for SingleInstanceBufferDefinition<V>where
B: TypedBufferAccess<Content = [V]> + Send + Sync + 'static,
V: Vertex,
sourceimpl<V> VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync + 'static>, Global>> for SingleInstanceBufferDefinition<V>where
V: Vertex,
impl<V> VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync + 'static>, Global>> for SingleInstanceBufferDefinition<V>where
V: Vertex,
Auto Trait Implementations
impl<T> RefUnwindSafe for SingleInstanceBufferDefinition<T>where
T: RefUnwindSafe,
impl<T> Send for SingleInstanceBufferDefinition<T>where
T: Send,
impl<T> Sync for SingleInstanceBufferDefinition<T>where
T: Sync,
impl<T> Unpin for SingleInstanceBufferDefinition<T>where
T: Unpin,
impl<T> UnwindSafe for SingleInstanceBufferDefinition<T>where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Content for T
impl<T> Content for T
sourcefn ref_from_ptr<'a>(ptr: *mut c_void, size: usize) -> Option<*mut T>
fn ref_from_ptr<'a>(ptr: *mut c_void, size: usize) -> Option<*mut T>
Builds a pointer to this type from a raw pointer.
sourcefn is_size_suitable(size: usize) -> bool
fn is_size_suitable(size: usize) -> bool
Returns true if the size is suitable to store a type like this.
sourcefn indiv_size() -> usize
fn indiv_size() -> usize
Returns the size of an individual element.