Nirtcpp 2.1.0
Nirtcpp is a high-performance c++ graphics engine.
|
Implementation of the IMeshBuffer interface with shared vertex list. More...
#include <nirtcpp/core/engine/SSharedMeshBuffer.hpp>
Public Member Functions | |
SSharedMeshBuffer () | |
constructor | |
SSharedMeshBuffer (core::array< video::S3DVertex > *vertices) | |
constructor | |
virtual const video::SMaterial & | getMaterial () const override |
returns the material of this meshbuffer | |
virtual video::SMaterial & | getMaterial () override |
returns the material of this meshbuffer | |
virtual const void * | getVertices () const override |
returns pointer to vertices | |
virtual void * | getVertices () override |
returns pointer to vertices | |
virtual u32 | getVertexCount () const override |
returns amount of vertices | |
virtual const u16 * | getIndices () const override |
returns pointer to indices | |
virtual u16 * | getIndices () override |
returns pointer to indices | |
virtual u32 | getIndexCount () const override |
returns amount of indices | |
virtual video::E_INDEX_TYPE | getIndexType () const override |
Get type of index data which is stored in this meshbuffer. | |
virtual const core::aabbox3d< f32 > & | getBoundingBox () const override |
returns an axis aligned bounding box | |
virtual void | setBoundingBox (const core::aabbox3df &box) override |
set user axis aligned bounding box | |
virtual video::E_VERTEX_TYPE | getVertexType () const override |
returns which type of vertex data is stored. | |
virtual void | recalculateBoundingBox () override |
recalculates the bounding box. should be called if the mesh changed. | |
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::vector3df & | getNormal (u32 i) const override |
returns normal of vertex i | |
virtual core::vector3df & | getNormal (u32 i) override |
returns normal of vertex i | |
virtual const core::vector2df & | getTCoords (u32 i) const override |
returns texture coord of vertex i | |
virtual core::vector2df & | getTCoords (u32 i) override |
returns texture coord 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 | |
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 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 | 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 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 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 nirt::scene::IMeshBuffer | |
virtual u32 | getPrimitiveCount () const |
Calculate how many geometric primitives are used by this meshbuffer. | |
Public Member Functions inherited from nirt::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 |
Material of this meshBuffer. | |
core::array< video::S3DVertex > * | Vertices |
Shared Array of vertices. | |
core::array< u16 > | Indices |
Array of indices. | |
u32 | ChangedID_Vertex |
ID used for hardware buffer management. | |
u32 | ChangedID_Index |
ID used for hardware buffer management. | |
core::aabbox3df | BoundingBox |
Bounding box. | |
E_HARDWARE_MAPPING | MappingHintVertex |
hardware mapping hint | |
E_HARDWARE_MAPPING | MappingHintIndex |
E_PRIMITIVE_TYPE | PrimitiveType |
Primitive type used for rendering (triangles, lines, ...) | |
Additional Inherited Members | |
Public Types inherited from nirt::scene::IMeshBuffer | |
enum | ECloneFlags { ECF_VERTICES = 1 , ECF_INDICES = 2 } |
Bitflags with options for cloning. More... | |
Protected Member Functions inherited from nirt::IReferenceCounted | |
void | setDebugName (const c8 *newName) |
Sets the debug name of the object. | |
Implementation of the IMeshBuffer interface with shared vertex list.
|
inlineoverridevirtual |
append the meshbuffer to the current buffer
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
append the vertices and indices to the current buffer
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Create copy of the meshbuffer.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns an axis aligned bounding box
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get the currently used ID for identification of changes.
This shouldn't be used for anything outside the VideoDriver.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get the currently used ID for identification of changes.
This shouldn't be used for anything outside the VideoDriver.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns color of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns color of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
get the current hardware mapping hint
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
get the current hardware mapping hint
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns amount of indices
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get type of index data which is stored in this meshbuffer.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns pointer to indices
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns pointer to indices
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns the material of this meshbuffer
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns the material of this meshbuffer
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns normal of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns normal of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns position of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns position of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Get the kind of primitive geometry which is used by the meshbuffer.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns texture coord of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns texture coord of vertex i
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Returns type of the class implementing the IMeshBuffer.
Reimplemented from nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns amount of vertices
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns which type of vertex data is stored.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns pointer to vertices
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
returns pointer to vertices
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
recalculates the bounding box. should be called if the mesh changed.
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
set user axis aligned bounding box
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
flags the mesh as changed, reloads hardware buffers
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
set the hardware mapping hint, for driver
Implements nirt::scene::IMeshBuffer.
|
inlineoverridevirtual |
Describe what kind of primitive geometry is used by the meshbuffer.
Implements nirt::scene::IMeshBuffer.