Irrlicht 3D Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
irr::scene::SMesh Struct Reference

Simple implementation of the IMesh interface. More...

#include <SMesh.h>

+ Inheritance diagram for irr::scene::SMesh:

Public Member Functions

 SMesh ()
 constructor
virtual ~SMesh ()
 destructor
void addMeshBuffer (IMeshBuffer *buf)
 adds a MeshBuffer
virtual void clear ()
 clean mesh
virtual const core::aabbox3d
< f32 > & 
getBoundingBox () const
 returns an axis aligned bounding box
virtual IMeshBuffergetMeshBuffer (u32 nr) const
 returns pointer to a mesh buffer
virtual IMeshBuffergetMeshBuffer (const video::SMaterial &material) const
 returns a meshbuffer which fits a material
virtual u32 getMeshBufferCount () const
 returns amount of mesh buffers.
void recalculateBoundingBox ()
 recalculates the bounding box
virtual void setBoundingBox (const core::aabbox3df &box)
 set user axis aligned bounding box
virtual void setDirty (E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)
 flags the meshbuffer as changed, reloads hardware buffers
virtual void setHardwareMappingHint (E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)
 set the hardware mapping hint, for driver
virtual void setMaterialFlag (video::E_MATERIAL_FLAG flag, bool newvalue)
 sets a flag of all contained materials to a new value

Public Attributes

core::aabbox3d< f32BoundingBox
 The bounding box of this mesh.
core::array< IMeshBuffer * > MeshBuffers
 The meshbuffers of this mesh.

Additional Inherited Members

- Protected Member Functions inherited from irr::IReferenceCounted
void setDebugName (const c8 *newName)
 Sets the debug name of the object.

Detailed Description

Simple implementation of the IMesh interface.

Definition at line 18 of file SMesh.h.

Constructor & Destructor Documentation

irr::scene::SMesh::SMesh ( )
inline

constructor

Definition at line 21 of file SMesh.h.

References irr::IReferenceCounted::setDebugName().

virtual irr::scene::SMesh::~SMesh ( )
inlinevirtual

destructor

Definition at line 29 of file SMesh.h.

References irr::IReferenceCounted::drop(), MeshBuffers, and irr::core::array< T, TAlloc >::size().

Member Function Documentation

void irr::scene::SMesh::addMeshBuffer ( IMeshBuffer buf)
inline

adds a MeshBuffer

The bounding box is not updated automatically.

Definition at line 98 of file SMesh.h.

References irr::IReferenceCounted::grab(), MeshBuffers, and irr::core::array< T, TAlloc >::push_back().

virtual void irr::scene::SMesh::clear ( )
inlinevirtual
virtual const core::aabbox3d<f32>& irr::scene::SMesh::getBoundingBox ( ) const
inlinevirtual

returns an axis aligned bounding box

Implements irr::scene::IMesh.

Definition at line 72 of file SMesh.h.

References BoundingBox.

virtual IMeshBuffer* irr::scene::SMesh::getMeshBuffer ( u32  nr) const
inlinevirtual

returns pointer to a mesh buffer

Implements irr::scene::IMesh.

Definition at line 53 of file SMesh.h.

References MeshBuffers.

virtual IMeshBuffer* irr::scene::SMesh::getMeshBuffer ( const video::SMaterial material) const
inlinevirtual

returns a meshbuffer which fits a material

reverse search

Implements irr::scene::IMesh.

Definition at line 60 of file SMesh.h.

References MeshBuffers, and irr::core::array< T, TAlloc >::size().

virtual u32 irr::scene::SMesh::getMeshBufferCount ( ) const
inlinevirtual

returns amount of mesh buffers.

Implements irr::scene::IMesh.

Definition at line 47 of file SMesh.h.

References MeshBuffers, and irr::core::array< T, TAlloc >::size().

void irr::scene::SMesh::recalculateBoundingBox ( )
inline
virtual void irr::scene::SMesh::setBoundingBox ( const core::aabbox3df box)
inlinevirtual

set user axis aligned bounding box

Implements irr::scene::IMesh.

Definition at line 78 of file SMesh.h.

References BoundingBox.

virtual void irr::scene::SMesh::setDirty ( E_BUFFER_TYPE  buffer = EBT_VERTEX_AND_INDEX)
inlinevirtual

flags the meshbuffer as changed, reloads hardware buffers

Implements irr::scene::IMesh.

Definition at line 122 of file SMesh.h.

References MeshBuffers, and irr::core::array< T, TAlloc >::size().

virtual void irr::scene::SMesh::setHardwareMappingHint ( E_HARDWARE_MAPPING  newMappingHint,
E_BUFFER_TYPE  buffer = EBT_VERTEX_AND_INDEX 
)
inlinevirtual

set the hardware mapping hint, for driver

Implements irr::scene::IMesh.

Definition at line 115 of file SMesh.h.

References MeshBuffers, and irr::core::array< T, TAlloc >::size().

virtual void irr::scene::SMesh::setMaterialFlag ( video::E_MATERIAL_FLAG  flag,
bool  newvalue 
)
inlinevirtual

sets a flag of all contained materials to a new value

Implements irr::scene::IMesh.

Definition at line 108 of file SMesh.h.

References MeshBuffers, and irr::core::array< T, TAlloc >::size().

Member Data Documentation

core::aabbox3d<f32> irr::scene::SMesh::BoundingBox

The bounding box of this mesh.

Definition at line 132 of file SMesh.h.

Referenced by clear(), getBoundingBox(), recalculateBoundingBox(), and setBoundingBox().

core::array<IMeshBuffer*> irr::scene::SMesh::MeshBuffers

The documentation for this struct was generated from the following file: