Radium Engine
1.5.20
|
#include <Engine/Data/Mesh.hpp>
Protected Member Functions | |
void | autoVertexAttribPointer (const ShaderProgram *prog) |
assume m_vao is bound. | |
Protected Member Functions inherited from Ra::Engine::Data::AttribArrayDisplayable | |
void | updatePickingRenderMode () |
Update the picking render mode according to the object render mode. | |
Protected Attributes | |
IndexContainerType | m_cpu_indices |
AttribManager | m_attribManager |
Protected Attributes inherited from Ra::Engine::Data::AttribArrayDisplayable | |
std::unique_ptr< globjects::VertexArray > | m_vao |
MeshRenderMode | m_renderMode { MeshRenderMode::RM_TRIANGLES } |
std::vector< std::unique_ptr< globjects::Buffer > > | m_vbos |
std::vector< bool > | m_dataDirty |
std::map< std::string, unsigned int > | m_handleToBuffer |
bool | m_isDirty { false } |
General dirty bit of the mesh. | |
Protected Attributes inherited from Ra::Engine::Data::Displayable | |
PickingRenderMode | m_pickingRenderMode { NO_PICKING } |
Protected Attributes inherited from Ra::Engine::Data::VaoIndices | |
std::unique_ptr< globjects::Buffer > | m_indices { nullptr } |
bool | m_indicesDirty { true } |
size_t | m_numElements { 0 } |
Additional Inherited Members | |
Public Types inherited from Ra::Engine::Data::AttribArrayDisplayable | |
enum | MeshRenderMode : uint { RM_POINTS = 0x0000 , RM_LINES = 0x0001 , RM_LINE_LOOP = 0x0002 , RM_LINE_STRIP = 0x0003 , RM_TRIANGLES = 0x0004 , RM_TRIANGLE_STRIP = 0x0005 , RM_TRIANGLE_FAN = 0x0006 , RM_QUADS = 0x0007 , RM_QUAD_STRIP = 0x0008 , RM_POLYGON = 0x0009 , RM_LINES_ADJACENCY = 0x000A , RM_LINE_STRIP_ADJACENCY = 0x000B , RM_TRIANGLES_ADJACENCY = 0x000C , RM_TRIANGLE_STRIP_ADJACENCY = 0x000D , RM_PATCHES = 0x000E } |
Public Types inherited from Ra::Engine::Data::Displayable | |
enum | PickingRenderMode { PKM_POINTS = 0 , PKM_LINES = 1 , PKM_LINE_ADJ = 2 , PKM_TRI = 3 , NO_PICKING } |
Public Member Functions inherited from Ra::Engine::Data::AttribArrayDisplayable | |
AttribArrayDisplayable (const std::string &name, MeshRenderMode renderMode=RM_TRIANGLES) | |
AttribArrayDisplayable (const AttribArrayDisplayable &rhs)=delete | |
void | operator= (const AttribArrayDisplayable &rhs)=delete |
void | setRenderMode (MeshRenderMode mode) |
Set the render mode. | |
MeshRenderMode | getRenderMode () const |
Get the render mode. | |
Ra::Core::Utils::optional< gl::GLuint > | getVboHandle (const std::string &name) |
Get opengl's vbo handle (uint) corresponding to attrib name. | |
Ra::Core::Utils::optional< gl::GLuint > | getVaoHandle () |
Get opengl's vao handle (uint). | |
const std::string & | getName () const |
Returns the name of the mesh. | |
void | setDirty (const Core::Geometry::MeshAttrib &type) |
void | setDirty (const std::string &name) |
void | setDirty (unsigned int index) |
virtual const Core::Geometry::AttribArrayGeometry & | getAttribArrayGeometry () const =0 |
virtual Core::Geometry::AttribArrayGeometry & | getAttribArrayGeometry ()=0 |
Public Member Functions inherited from Ra::Engine::Data::Displayable | |
Displayable (const std::string &name) | |
Displayable (const Displayable &rhs)=delete | |
void | operator= (const Displayable &rhs)=delete |
PickingRenderMode | pickingRenderMode () const |
Returns the picking rendermode advised by the object (default PickingRenderMode::NO_PICKING) | |
const std::string & | getName () const |
Returns the name of the mesh. | |
virtual const Core::Geometry::AbstractGeometry & | getAbstractGeometry () const =0 |
virtual Core::Geometry::AbstractGeometry & | getAbstractGeometry ()=0 |
virtual size_t | getNumFaces () const |
virtual size_t | getNumVertices () const |
Public Member Functions inherited from Ra::Engine::Data::VaoIndices | |
void | setIndicesDirty () |
Tag the indices as dirty, asking for a update to gpu. | |
This class handles an attrib array displayable on gpu only, without core geometry. Use only when you don't need to access the cpu geometry again, or when you need to specify special indices.
|
inlineprotected |
|
protected |
|
protected |