#include <Vbo.h>
Classes | |
struct | Layout |
struct | Obj |
class | VertexIter |
Public Types | |
enum | { NONE, STATIC, DYNAMIC } |
enum | { ATTR_INDICES, ATTR_POSITIONS, ATTR_NORMALS, ATTR_COLORS_RGB, ATTR_COLORS_RGBA, ATTR_TEXCOORDS2D_0, ATTR_TEXCOORDS2D_1, ATTR_TEXCOORDS2D_2, ATTR_TEXCOORDS2D_3, ATTR_TEXCOORDS3D_0, ATTR_TEXCOORDS3D_1, ATTR_TEXCOORDS3D_2, ATTR_TEXCOORDS3D_3, ATTR_TOTAL } |
enum | { ATTR_MAX_TEXTURE_UNIT = 3 } |
enum | { INDEX_BUFFER = 0, STATIC_BUFFER, DYNAMIC_BUFFER, TOTAL_BUFFERS } |
Public Member Functions | |
VboMesh () | |
VboMesh (const TriMesh &triMesh, Layout layout=Layout()) | |
VboMesh (size_t numVertices, size_t numIndices, Layout layout, GLenum primitiveType) | |
VboMesh (size_t numVertices, size_t numIndices, Layout layout, GLenum primitiveType, Vbo *indexBuffer, Vbo *staticBuffer, Vbo *dynamicBuffer) | |
size_t | getNumIndices () const |
size_t | getNumVertices () const |
GLenum | getPrimitiveType () const |
const Layout & | getLayout () const |
void | bindIndexBuffer () const |
void | enableClientStates () const |
void | disableClientStates () const |
void | bindAllData () const |
void | bufferIndices (const std::vector< uint32_t > &indices) |
void | bufferPositions (const std::vector< Vec3f > &normals) |
void | bufferNormals (const std::vector< Vec3f > &normals) |
void | bufferTexCoords2d (size_t unit, const std::vector< Vec2f > &texCoords) |
class VertexIter | mapVertexBuffer () |
Vbo & | getIndexVbo () const |
Vbo & | getStaticVbo () const |
Vbo & | getDynamicVbo () const |
void | setCustomStaticLocation (size_t internalIndex, GLuint location) |
void | setCustomDynamicLocation (size_t internalIndex, GLuint location) |
size_t | getTexCoordOffset (size_t unit) const |
void | setTexCoordOffset (size_t unit, size_t aTexCoordOffset) |
Static Public Member Functions | |
static void | unbindBuffers () |
Protected Member Functions | |
void | initializeBuffers (bool staticDataPlanar) |
Protected Attributes | |
shared_ptr< Obj > | mObj |
| |
typedef shared_ptr< Obj > VboMesh::* | unspecified_bool_type |
Emulates shared_ptr-like behavior. | |
VboMesh (const VboMesh &other) | |
Emulates shared_ptr-like behavior. | |
VboMesh & | operator= (const VboMesh &other) |
Emulates shared_ptr-like behavior. | |
bool | operator== (const VboMesh &other) |
Emulates shared_ptr-like behavior. | |
operator unspecified_bool_type () | |
Emulates shared_ptr-like behavior. | |
void | reset () |
Emulates shared_ptr-like behavior. |
typedef shared_ptr<Obj> VboMesh::* cinder::gl::VboMesh::unspecified_bool_type |
Emulates shared_ptr-like behavior.
anonymous enum |
cinder::gl::VboMesh::VboMesh | ( | ) |
cinder::gl::VboMesh::VboMesh | ( | size_t | numVertices, | |
size_t | numIndices, | |||
Layout | layout, | |||
GLenum | primitiveType | |||
) |
cinder::gl::VboMesh::VboMesh | ( | size_t | numVertices, | |
size_t | numIndices, | |||
Layout | layout, | |||
GLenum | primitiveType, | |||
Vbo * | indexBuffer, | |||
Vbo * | staticBuffer, | |||
Vbo * | dynamicBuffer | |||
) |
cinder::gl::VboMesh::VboMesh | ( | const VboMesh & | other | ) |
Emulates shared_ptr-like behavior.
size_t cinder::gl::VboMesh::getNumIndices | ( | ) | const |
size_t cinder::gl::VboMesh::getNumVertices | ( | ) | const |
GLenum cinder::gl::VboMesh::getPrimitiveType | ( | ) | const |
const Layout& cinder::gl::VboMesh::getLayout | ( | ) | const |
void cinder::gl::VboMesh::bindIndexBuffer | ( | ) | const |
void cinder::gl::VboMesh::enableClientStates | ( | ) | const |
void cinder::gl::VboMesh::disableClientStates | ( | ) | const |
void cinder::gl::VboMesh::bindAllData | ( | ) | const |
void cinder::gl::VboMesh::unbindBuffers | ( | ) | [static] |
void cinder::gl::VboMesh::bufferIndices | ( | const std::vector< uint32_t > & | indices | ) |
void cinder::gl::VboMesh::bufferPositions | ( | const std::vector< Vec3f > & | normals | ) |
void cinder::gl::VboMesh::bufferNormals | ( | const std::vector< Vec3f > & | normals | ) |
void cinder::gl::VboMesh::bufferTexCoords2d | ( | size_t | unit, | |
const std::vector< Vec2f > & | texCoords | |||
) |
VboMesh::VertexIter cinder::gl::VboMesh::mapVertexBuffer | ( | ) |
Vbo& cinder::gl::VboMesh::getIndexVbo | ( | ) | const |
Vbo& cinder::gl::VboMesh::getStaticVbo | ( | ) | const |
Vbo& cinder::gl::VboMesh::getDynamicVbo | ( | ) | const |
void cinder::gl::VboMesh::setCustomStaticLocation | ( | size_t | internalIndex, | |
GLuint | location | |||
) |
void cinder::gl::VboMesh::setCustomDynamicLocation | ( | size_t | internalIndex, | |
GLuint | location | |||
) |
size_t cinder::gl::VboMesh::getTexCoordOffset | ( | size_t | unit | ) | const |
void cinder::gl::VboMesh::setTexCoordOffset | ( | size_t | unit, | |
size_t | aTexCoordOffset | |||
) |
Emulates shared_ptr-like behavior.
bool cinder::gl::VboMesh::operator== | ( | const VboMesh & | other | ) |
Emulates shared_ptr-like behavior.
cinder::gl::VboMesh::operator unspecified_bool_type | ( | ) |
Emulates shared_ptr-like behavior.
void cinder::gl::VboMesh::reset | ( | ) |
Emulates shared_ptr-like behavior.
void cinder::gl::VboMesh::initializeBuffers | ( | bool | staticDataPlanar | ) | [protected] |
shared_ptr<Obj> cinder::gl::VboMesh::mObj [protected] |