Struct glium::vertex::VertexBufferAny
[−]
[src]
pub struct VertexBufferAny { /* fields omitted */ }
A list of vertices loaded in the graphics card's memory.
Contrary to VertexBuffer
, this struct doesn't know about the type of data
inside the buffer. Therefore you can't map or read it.
This struct is provided for convenience, so that you can have a Vec<VertexBufferAny>
,
or return a VertexBufferAny
instead of a VertexBuffer<MyPrivateVertexType>
.
Methods
impl VertexBufferAny
[src]
pub fn get_elements_size(&self) -> usize
[src]
Returns the number of bytes between two consecutive elements in the buffer.
pub fn len(&self) -> usize
[src]
Returns the number of elements in the buffer.
pub fn get_bindings(&self) -> &VertexFormat
[src]
Returns the associated VertexFormat
.
pub unsafe fn into_vertex_buffer<T: Copy>(self) -> VertexBuffer<T>
[src]
Turns the vertex buffer into a VertexBuffer
without checking the type.
pub fn per_instance(&self) -> Result<PerInstance, InstancingNotSupported>
[src]
Creates a marker that instructs glium to use multiple instances.
Instead of calling surface.draw(&vertex_buffer, ...)
you can call
surface.draw(vertex_buffer.per_instance(), ...)
. This will draw one instance of the
geometry for each element in this buffer. The attributes are still passed to the
vertex shader, but each entry is passed for each different instance.
Trait Implementations
impl Debug for VertexBufferAny
[src]
impl<T> From<VertexBuffer<T>> for VertexBufferAny where
T: Copy + Send + 'static,
[src]
T: Copy + Send + 'static,
fn from(buf: VertexBuffer<T>) -> VertexBufferAny
[src]
Performs the conversion.
impl<T> From<Buffer<[T]>> for VertexBufferAny where
T: Vertex + Copy + Send + 'static,
[src]
T: Vertex + Copy + Send + 'static,
impl<'a> IntoVerticesSource<'a> for &'a VertexBufferAny
[src]
fn into_vertices_source(self) -> VerticesSource<'a>
[src]
Builds the VerticesSource
.