|
GL++
0.1
OpenGL API C++ Wrapper
|
Object to handle a vertex array object. More...
#include <vertex_array.hpp>
Public Member Functions | |
| vertex_array (primitive_type primitives=primitive_type::TRIANGLES) | |
| Construct an empty vertex array object. | |
| ~vertex_array () | |
| Destroy this vertex array object. | |
| void | bind () const |
| Bind this buffer as active vertex array object. | |
| shared_vertex_attrib_array_t & | attrib (GLuint index) |
| Access properties object of an attribute (by index) | |
| void | set_primitive (primitive_type mode) |
| Set primitive type when drawing. | |
| primitive_type | get_primitive () const |
| Get primitive type when drawing. | |
| void | draw (GLint first, GLint count) |
| Draw this vertex array. | |
| void | draw_elements (GLint count, const GLubyte *pindices) |
| Draw this vertex array using vertex indices (GLubyte) | |
| void | draw_elements (GLint count, const GLushort *pindices) |
| Draw this vertex array using vertex indices (GLushort) | |
| void | draw_elements (GLint count, const GLuint *pindices) |
| Draw this vertex array using vertex indices (GLuint) | |
| void | draw_elements (GLint count, const buffer &elem_array, elements_type type) |
| Draw this vertex array using vertex indices (Elements array buffer object ) | |
| void | draw_instances (GLint first, GLint count, GLint instances) |
| Draw this vertex array multiple times (instanced) | |
| void | draw_elements_instances (GLint count, const GLubyte *pindices, GLint instances) |
| Draw this vertex array using vertex indices (GLubyte), multiple times (instanced) | |
| void | draw_elements_instances (GLint count, const GLushort *pindices, GLint instances) |
| Draw this vertex array using vertex indices (Gushort), multiple times (instanced) | |
| void | draw_elements_instances (GLint count, const GLuint *pindices, GLint instances) |
| Draw this vertex array using vertex indices (GLint), multiple times (instanced) | |
| void | draw_elements_instances (GLint count, const buffer &elem_array, elements_type type, GLint instances) |
| Draw this vertex array using vertex indices (buffer object), multiple times (instanced) | |
Public Member Functions inherited from glpp::named_object< GLuint > | |
| name_type | object_name () const |
| Return the name of object (handle) | |
Public Member Functions inherited from glpp::noncopyable | |
| noncopyable (noncopyable &) | |
| noncopyable & | operator= (noncopyable &) |
Protected Types | |
|
typedef std::map< GLint, shared_vertex_attrib_array_t > | attribs_container_type |
| Type of attributes container. | |
Protected Attributes | |
| attribs_container_type | m_attribs |
| Map with all attributes. | |
| primitive_type | m_primitives |
| Primitive type when drawing. | |
Protected Attributes inherited from glpp::named_object< GLuint > | |
| GLuint | m_gl_name |
| Stored object name. | |
Additional Inherited Members | |
Public Types inherited from glpp::named_object< GLuint > | |
| typedef GLuint | name_type |
| Type of the name. | |
Object to handle a vertex array object.
| glpp::vertex_array::vertex_array | ( | primitive_type | primitives = primitive_type::TRIANGLES | ) |
Construct an empty vertex array object.
| glpp::vertex_array::~vertex_array | ( | ) |
Destroy this vertex array object.
http://www.opengl.org/sdk/docs/man4/xhtml/glDeleteVertexArrays.xml
| shared_vertex_attrib_array_t & glpp::vertex_array::attrib | ( | GLuint | index | ) |
Access properties object of an attribute (by index)
| index | The index of attribute to access |
|
inline |
Bind this buffer as active vertex array object.
http://www.opengl.org/sdk/docs/man4/xhtml/glBindVertexArray.xml
| void glpp::vertex_array::draw | ( | GLint | first, |
| GLint | count | ||
| ) |
Draw this vertex array.
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawArrays.xml
| void glpp::vertex_array::draw_elements | ( | GLint | count, |
| const GLubyte * | pindices | ||
| ) |
Draw this vertex array using vertex indices (GLubyte)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElements.xml
| void glpp::vertex_array::draw_elements | ( | GLint | count, |
| const GLushort * | pindices | ||
| ) |
Draw this vertex array using vertex indices (GLushort)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElements.xml
| void glpp::vertex_array::draw_elements | ( | GLint | count, |
| const GLuint * | pindices | ||
| ) |
Draw this vertex array using vertex indices (GLuint)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElements.xml
| void glpp::vertex_array::draw_elements | ( | GLint | count, |
| const buffer & | elem_array, | ||
| elements_type | type | ||
| ) |
Draw this vertex array using vertex indices (Elements array buffer object )
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElements.xml
| void glpp::vertex_array::draw_elements_instances | ( | GLint | count, |
| const GLubyte * | pindices, | ||
| GLint | instances | ||
| ) |
Draw this vertex array using vertex indices (GLubyte), multiple times (instanced)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElementsInstanced.xml
| void glpp::vertex_array::draw_elements_instances | ( | GLint | count, |
| const GLushort * | pindices, | ||
| GLint | instances | ||
| ) |
Draw this vertex array using vertex indices (Gushort), multiple times (instanced)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElementsInstanced.xml
| void glpp::vertex_array::draw_elements_instances | ( | GLint | count, |
| const GLuint * | pindices, | ||
| GLint | instances | ||
| ) |
Draw this vertex array using vertex indices (GLint), multiple times (instanced)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElementsInstanced.xml
| void glpp::vertex_array::draw_elements_instances | ( | GLint | count, |
| const buffer & | elem_array, | ||
| elements_type | type, | ||
| GLint | instances | ||
| ) |
Draw this vertex array using vertex indices (buffer object), multiple times (instanced)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawElementsInstanced.xml
| void glpp::vertex_array::draw_instances | ( | GLint | first, |
| GLint | count, | ||
| GLint | instances | ||
| ) |
Draw this vertex array multiple times (instanced)
http://www.opengl.org/sdk/docs/man4/xhtml/glDrawArraysInstanced.xml