Jimcpp 2.1.0
Jimcpp is a high-performance c++ graphics engine.
|
Implementation of the IMeshBuffer interface for which can work with 16 and 32 bit indices as well as different vertex types. More...
#include <jimcpp/core/engine/CDynamicMeshBuffer.hpp>
Public Member Functions | |
CDynamicMeshBuffer (video::E_VERTEX_TYPE vertexType, video::E_INDEX_TYPE indexType) | |
constructor | |
virtual | ~CDynamicMeshBuffer () |
destructor | |
virtual IVertexBuffer & | getVertexBuffer () const override |
virtual IIndexBuffer & | getIndexBuffer () const override |
virtual void | setVertexBuffer (IVertexBuffer *newVertexBuffer) override |
virtual void | setIndexBuffer (IIndexBuffer *newIndexBuffer) override |
virtual const video::SMaterial & | getMaterial () const override |
Get Material of this buffer. | |
virtual video::SMaterial & | getMaterial () override |
Get Material of this buffer. | |
virtual const core::aabbox3d< f32 > & | getBoundingBox () const override |
Get bounding box. | |
virtual void | setBoundingBox (const core::aabbox3df &box) override |
Set bounding box. | |
virtual void | recalculateBoundingBox () override |
Recalculate bounding box. | |
virtual void | append (const void *const vertices, u32 numVertices, const u16 *const indices, u32 numIndices) override |
Append the vertices and indices to the current buffer. | |
virtual void | append (const IMeshBuffer *const other) override |
Append the meshbuffer to the current buffer. | |
virtual void | setPrimitiveType (E_PRIMITIVE_TYPE type) override |
Describe what kind of primitive geometry is used by the meshbuffer. | |
virtual E_PRIMITIVE_TYPE | getPrimitiveType () const override |
Get the kind of primitive geometry which is used by the meshbuffer. | |
virtual EMESH_BUFFER_TYPE | getType () const override |
Returns type of the class implementing the IMeshBuffer. | |
virtual IMeshBuffer * | createClone (int cloneFlags) const override |
Create copy of the meshbuffer. | |
Public Member Functions inherited from jpp::scene::IDynamicMeshBuffer | |
virtual E_HARDWARE_MAPPING | getHardwareMappingHint_Vertex () const override |
get the current hardware mapping hint | |
virtual E_HARDWARE_MAPPING | getHardwareMappingHint_Index () const override |
get the current hardware mapping hint | |
virtual void | setHardwareMappingHint (E_HARDWARE_MAPPING NewMappingHint, E_BUFFER_TYPE Buffer=EBT_VERTEX_AND_INDEX) override |
set the hardware mapping hint, for driver | |
virtual void | setDirty (E_BUFFER_TYPE Buffer=EBT_VERTEX_AND_INDEX) override |
flags the mesh as changed, reloads hardware buffers | |
virtual u32 | getChangedID_Vertex () const override |
Get the currently used ID for identification of changes. | |
virtual u32 | getChangedID_Index () const override |
Get the currently used ID for identification of changes. | |
virtual video::E_VERTEX_TYPE | getVertexType () const override |
Get type of vertex data which is stored in this meshbuffer. | |
virtual const void * | getVertices () const override |
Get access to vertex data. The data is an array of vertices. | |
virtual void * | getVertices () override |
Get access to vertex data. The data is an array of vertices. | |
virtual u32 | getVertexCount () const override |
Get amount of vertices in meshbuffer. | |
virtual video::E_INDEX_TYPE | getIndexType () const override |
Get type of index data which is stored in this meshbuffer. | |
virtual const u16 * | getIndices () const override |
Get access to indices. | |
virtual u16 * | getIndices () override |
Get access to indices. | |
virtual u32 | getIndexCount () const override |
Get amount of indices in this meshbuffer. | |
virtual const core::vector3df & | getPosition (u32 i) const override |
returns position of vertex i | |
virtual core::vector3df & | getPosition (u32 i) override |
returns position of vertex i | |
virtual const core::vector2df & | getTCoords (u32 i) const override |
returns texture coords of vertex i | |
virtual core::vector2df & | getTCoords (u32 i) override |
returns texture coords of vertex i | |
virtual const core::vector3df & | getNormal (u32 i) const override |
returns normal of vertex i | |
virtual core::vector3df & | getNormal (u32 i) override |
returns normal of vertex i | |
virtual video::SColor & | getColor (u32 i) override |
returns color of vertex i | |
virtual const video::SColor & | getColor (u32 i) const override |
returns color of vertex i | |
Public Member Functions inherited from jpp::scene::IMeshBuffer | |
virtual u32 | getPrimitiveCount () const |
Calculate how many geometric primitives are used by this meshbuffer. | |
Public Member Functions inherited from jpp::IReferenceCounted | |
IReferenceCounted () | |
Constructor. | |
virtual | ~IReferenceCounted () |
Destructor. | |
void | grab () const |
Grabs the object. Increments the reference counter by one. | |
bool | drop () const |
Drops the object. Decrements the reference counter by one. | |
s32 | getReferenceCount () const |
Get the reference count. | |
const c8 * | getDebugName () const |
Returns the debug name of the object. | |
Public Attributes | |
video::SMaterial | Material |
core::aabbox3d< f32 > | BoundingBox |
E_PRIMITIVE_TYPE | PrimitiveType |
Primitive type used for rendering (triangles, lines, ...) | |
Additional Inherited Members | |
Public Types inherited from jpp::scene::IMeshBuffer | |
enum | ECloneFlags { ECF_VERTICES = 1 , ECF_INDICES = 2 } |
Bitflags with options for cloning. More... | |
Protected Member Functions inherited from jpp::IReferenceCounted | |
void | setDebugName (const c8 *newName) |
Sets the debug name of the object. | |
Implementation of the IMeshBuffer interface for which can work with 16 and 32 bit indices as well as different vertex types.
|
inlineoverridevirtual |
Append the meshbuffer to the current buffer.
Only works for compatible vertex types
other | Buffer to append to this one. |
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Append the vertices and indices to the current buffer.
Only works for compatible vertex types.
vertices | Pointer to a vertex array. |
numVertices | Number of vertices in the array. |
indices | Pointer to index array. |
numIndices | Number of indices in array. |
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Create copy of the meshbuffer.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get bounding box.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Implements jpp::scene::IDynamicMeshBuffer.
|
inlineoverridevirtual |
Get Material of this buffer.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get Material of this buffer.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get the kind of primitive geometry which is used by the meshbuffer.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Returns type of the class implementing the IMeshBuffer.
Reimplemented from jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Implements jpp::scene::IDynamicMeshBuffer.
|
inlineoverridevirtual |
Recalculate bounding box.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Set bounding box.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Implements jpp::scene::IDynamicMeshBuffer.
|
inlineoverridevirtual |
Describe what kind of primitive geometry is used by the meshbuffer.
Implements jpp::scene::IMeshBuffer.
|
inlineoverridevirtual |
Implements jpp::scene::IDynamicMeshBuffer.