Saga3D API Documentation  1.0-RC4
saga::scene::SMesh Struct Reference

Simple implementation of the IMesh interface. More...

#include <SMesh.h>

Inheritance diagram for saga::scene::SMesh:
saga::scene::IMesh

Public Member Functions

 SMesh ()
 constructor More...
 
virtual ~SMesh ()
 destructor More...
 
virtual E_MESH_TYPE getMeshType () const override
 
virtual void clear ()
 clean mesh More...
 
virtual std::uint32_t getMeshBufferCount () const override
 returns amount of mesh buffers. More...
 
virtual IMeshBuffergetMeshBuffer (std::uint32_t nr=0) override
 returns pointer to a mesh buffer More...
 
virtual const core::aabbox3d< float > & getBoundingBox () const override
 returns an axis aligned bounding box More...
 
virtual void setBoundingBox (const core::aabbox3df &box) override
 set user axis aligned bounding box More...
 
void recalculateBoundingBox ()
 recalculates the bounding box More...
 
virtual void addMeshBuffer (std::unique_ptr< IMeshBuffer > buf) override
 adds a MeshBuffer More...
 
- Public Member Functions inherited from saga::scene::IMesh
void setID (const ID id)
 
ID getID () const
 

Public Attributes

std::vector< std::unique_ptr< IMeshBuffer > > MeshBuffers
 The meshbuffers of this mesh. More...
 
video::ShaderBufferHandle GPUMeshBuffer
 GPU mesh buffer. More...
 
core::aabbox3d< float > BoundingBox
 The bounding box of this mesh. More...
 

Additional Inherited Members

- Protected Attributes inherited from saga::scene::IMesh
ID MeshID = INVALID_ID
 ID of this mesh. More...
 

Detailed Description

Simple implementation of the IMesh interface.

Definition at line 13 of file SMesh.h.

Constructor & Destructor Documentation

◆ SMesh()

saga::scene::SMesh::SMesh ( )
inline

constructor

Definition at line 16 of file SMesh.h.

◆ ~SMesh()

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

destructor

Definition at line 22 of file SMesh.h.

Member Function Documentation

◆ addMeshBuffer()

virtual void saga::scene::SMesh::addMeshBuffer ( std::unique_ptr< IMeshBuffer buf)
inlineoverridevirtual

adds a MeshBuffer

The bounding box is not updated automatically.

Implements saga::scene::IMesh.

Definition at line 88 of file SMesh.h.

◆ clear()

virtual void saga::scene::SMesh::clear ( )
inlinevirtual

clean mesh

Definition at line 30 of file SMesh.h.

◆ getBoundingBox()

virtual const core::aabbox3d<float>& saga::scene::SMesh::getBoundingBox ( ) const
inlineoverridevirtual

returns an axis aligned bounding box

Implements saga::scene::IMesh.

Definition at line 49 of file SMesh.h.

◆ getMeshBuffer()

virtual IMeshBuffer& saga::scene::SMesh::getMeshBuffer ( std::uint32_t  nr = 0)
inlineoverridevirtual

returns pointer to a mesh buffer

Implements saga::scene::IMesh.

Definition at line 43 of file SMesh.h.

◆ getMeshBufferCount()

virtual std::uint32_t saga::scene::SMesh::getMeshBufferCount ( ) const
inlineoverridevirtual

returns amount of mesh buffers.

Implements saga::scene::IMesh.

Definition at line 37 of file SMesh.h.

◆ getMeshType()

virtual E_MESH_TYPE saga::scene::SMesh::getMeshType ( ) const
inlineoverridevirtual

Implements saga::scene::IMesh.

Definition at line 27 of file SMesh.h.

◆ recalculateBoundingBox()

void saga::scene::SMesh::recalculateBoundingBox ( )
inline

recalculates the bounding box

Definition at line 61 of file SMesh.h.

◆ setBoundingBox()

virtual void saga::scene::SMesh::setBoundingBox ( const core::aabbox3df box)
inlineoverridevirtual

set user axis aligned bounding box

Implements saga::scene::IMesh.

Definition at line 55 of file SMesh.h.

Member Data Documentation

◆ BoundingBox

core::aabbox3d<float> saga::scene::SMesh::BoundingBox

The bounding box of this mesh.

Definition at line 103 of file SMesh.h.

◆ GPUMeshBuffer

video::ShaderBufferHandle saga::scene::SMesh::GPUMeshBuffer

GPU mesh buffer.

Definition at line 100 of file SMesh.h.

◆ MeshBuffers

std::vector<std::unique_ptr<IMeshBuffer> > saga::scene::SMesh::MeshBuffers

The meshbuffers of this mesh.

Definition at line 97 of file SMesh.h.


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