Class GL.GLSLUtils.VertexBuffer
- Description
- This class defines a vertex buffer. This is a chunk of memory defining vertex attributes for future drawing. Any number of vertex buffers (up to a hardware specific limit) can be added to any GLSLProgram. - Vertex buffers are generally speaking stored on the graphic card for fast access, making it possible to draw huge amounts of primitives without using all available CPU->GPU memory bandwidth. - Normal usage of this class is to create it, then call add_[type] for each vertex attribute (add_float, add_vec2 etc) defined in your program, then call set_size or set_data to set the size of the buffer, add the VertexBuffer to any relevant GLSLProgram instances, and then optionally call pwrite, vertex or - stream_vertex() to update the data.- The add_* functions can not be called once the VertexBuffer has been added to a GLSLProgram. set_size, set_data or recalc must be called before the VertexBuffer is added to a GLSLProgram. 
- Variable
current_size
 
- intGL.GLSLUtils.VertexBuffer.current_size
- Description
- The maximum offset ever written using stream 
- Variable
id
 
- intGL.GLSLUtils.VertexBuffer.id
- Description
- The vertexbuffer id (the object id passed to glBindBuffer). 
- Variable
offset
 
- intGL.GLSLUtils.VertexBuffer.offset
- Description
- The index of the last vertex that was written using stream 
- Variable
size
 
- intGL.GLSLUtils.VertexBuffer.size
- Description
- The total size of the VertexBuffer, counted in vertices 
- Variable
stride
 
- intGL.GLSLUtils.VertexBuffer.stride
- Description
- The size of a single vertex, in bytes 
- Variable
vertex_size
 
- intGL.GLSLUtils.VertexBuffer.vertex_size
- Description
- The size of a single vertex, in floats 
- Method
create
 
- GL.GLSLUtils.VertexBuffer GL.GLSLUtils.VertexBuffer(- int- draw_mode)
- Description
- Create a new vertex buffer, draw_mode is a usage hint. - GL_STREAM_DRAW: Draw multiple times, updating the data ocassionally GL_STATIC_DRAW: Set the data once, then draw multiple times GL_DYNAMIC_DRAW: Draw and update all the time - The mode is only a hint, it does not really affect the functionality of the buffer.