CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::TriangleMeshBuilder< V, I > Class Template Reference

Helper class that makes building triangle meshes easier. More...

#include <CeresEngine/Mesh/MeshBuilder.hpp>

Public Member Functions

 TriangleMeshBuilder ()
 
void addTriangle (const V &v0, const V &v1, const V &v2)
 
void addTriangleIndices (UInt32 v0, UInt32 v1, UInt32 v2)
 
void addTriangleStrip (const V &v)
 
void addTriangleFan (const V &v)
 
UInt32 nextSubMesh ()
 
const SubMeshgetCurrentSubMesh () const
 
void validate ()
 

Public Attributes

Vector< Vvertices
 
Vector< Iindices
 
Vector< SubMeshsubMeshes
 

Private Member Functions

SubMeshgetLatestSubMesh ()
 

Detailed Description

template<typename V, typename I = UInt32>
class CeresEngine::TriangleMeshBuilder< V, I >

Helper class that makes building triangle meshes easier.

Template Parameters
VA C++ data type that represents data in the vertex buffer.
IThe type used for the index buffer. UInt32 by default.

Constructor & Destructor Documentation

◆ TriangleMeshBuilder()

template<typename V , typename I = UInt32>
CeresEngine::TriangleMeshBuilder< V, I >::TriangleMeshBuilder ( )
inlineexplicit

Member Function Documentation

◆ addTriangle()

template<typename V , typename I = UInt32>
void CeresEngine::TriangleMeshBuilder< V, I >::addTriangle ( const V v0,
const V v1,
const V v2 
)
inline

◆ addTriangleFan()

template<typename V , typename I = UInt32>
void CeresEngine::TriangleMeshBuilder< V, I >::addTriangleFan ( const V v)
inline

◆ addTriangleIndices()

template<typename V , typename I = UInt32>
void CeresEngine::TriangleMeshBuilder< V, I >::addTriangleIndices ( UInt32  v0,
UInt32  v1,
UInt32  v2 
)
inline

◆ addTriangleStrip()

template<typename V , typename I = UInt32>
void CeresEngine::TriangleMeshBuilder< V, I >::addTriangleStrip ( const V v)
inline

◆ getCurrentSubMesh()

template<typename V , typename I = UInt32>
const SubMesh & CeresEngine::TriangleMeshBuilder< V, I >::getCurrentSubMesh ( ) const
inline

◆ getLatestSubMesh()

template<typename V , typename I = UInt32>
SubMesh & CeresEngine::TriangleMeshBuilder< V, I >::getLatestSubMesh ( )
inlineprivate

◆ nextSubMesh()

template<typename V , typename I = UInt32>
UInt32 CeresEngine::TriangleMeshBuilder< V, I >::nextSubMesh ( )
inline

◆ validate()

template<typename V , typename I = UInt32>
void CeresEngine::TriangleMeshBuilder< V, I >::validate ( )
inline

Member Data Documentation

◆ indices

template<typename V , typename I = UInt32>
Vector<I> CeresEngine::TriangleMeshBuilder< V, I >::indices

◆ subMeshes

template<typename V , typename I = UInt32>
Vector<SubMesh> CeresEngine::TriangleMeshBuilder< V, I >::subMeshes

◆ vertices

template<typename V , typename I = UInt32>
Vector<V> CeresEngine::TriangleMeshBuilder< V, I >::vertices

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