Castor3D  ..
Fonctions membres publiques | Attributs protégés | Liste de tous les membres
Référence de la classe Castor3D::GeometryBuffersabstract

Conteneur de buffers de géométries. Plus de détails...

Fonctions membres publiques

 GeometryBuffers (VertexBufferUPtr p_pVertexBuffer, IndexBufferUPtr p_pIndexBuffer, MatrixBufferUPtr p_pMatrixBuffer)
 Constructeur. Plus de détails...
 
virtual ~GeometryBuffers ()
 Destructeur. Plus de détails...
 
virtual bool Initialise ()=0
 Fonction d'initialisation. Plus de détails...
 
virtual void Cleanup ()=0
 Fonction de nettoyage. Plus de détails...
 
virtual bool Draw (eTOPOLOGY p_eTopology, ShaderProgramBaseSPtr p_pProgram, uint32_t p_uiSize, uint32_t p_uiIndex)=0
 Dessine la géométrie contenue dans les buffers. Plus de détails...
 
virtual bool DrawInstanced (eTOPOLOGY p_eTopology, ShaderProgramBaseSPtr p_pProgram, uint32_t p_uiSize, uint32_t p_uiIndex, uint32_t p_uiCount)=0
 Dessine la géométrie contenue dans les buffers. Plus de détails...
 
virtual bool Bind ()
 Active les buffers de la géométrie. Plus de détails...
 
virtual void Unbind ()
 Désactive les buffers de la géométrie. Plus de détails...
 
IndexBufferGetIndexBuffer ()
 Récupère le tampon d'indices. Plus de détails...
 
VertexBufferGetVertexBuffer ()
 Récupère le tampon de vertices. Plus de détails...
 
MatrixBufferGetMatrixBuffer ()
 Récupère le tampon de matrices. Plus de détails...
 
bool HasIndexBuffer ()
 Récupère le fait que le conteneur possède un tampon d'indices. Plus de détails...
 
bool HasMatrixBuffer ()
 Récupère le fait que le conteneur possède un tampon de matrices. Plus de détails...
 

Attributs protégés

VertexBufferUPtr m_pVertexBuffer
 Le tampon de sommets. Plus de détails...
 
IndexBufferUPtr m_pIndexBuffer
 Le tampon d'indices. Plus de détails...
 
MatrixBufferUPtr m_pMatrixBuffer
 Le tampon de matrices. Plus de détails...
 
bool m_bIndexBuffer
 Dit si le conteneur possède un tampon d'indices. Plus de détails...
 
bool m_bMatrixBuffer
 Dit si le conteneur possède un tampon de matrices. Plus de détails...
 

Description détaillée

Conteneur de buffers de géométries.

Auteur
Sylvain DOREMUS
Version
0.7.0.0
Date
18/11/2012
Remarques
Permet aux implémentations d'utiliser les optimisations spécifiques aux API (comme les Vertex arrays objects OpenGL)
Acquiert la responsabilité de ses buffers à la création

Documentation des constructeurs et destructeur

Castor3D::GeometryBuffers::GeometryBuffers ( VertexBufferUPtr  p_pVertexBuffer,
IndexBufferUPtr  p_pIndexBuffer,
MatrixBufferUPtr  p_pMatrixBuffer 
)

Constructeur.

Paramètres
[in]p_pVertexBufferLe tampon de sommets
[in]p_pIndexBufferLe tampon d'indices
[in]p_pMatrixBufferLe tampon de matrices
virtual Castor3D::GeometryBuffers::~GeometryBuffers ( )
virtual

Destructeur.

Documentation des fonctions membres

virtual bool Castor3D::GeometryBuffers::Bind ( )
virtual

Active les buffers de la géométrie.

Remarques
Si ça échoue, les buffers seront correctement désactivés
Renvoie
false si l'activation d'un tampon a échoué
virtual void Castor3D::GeometryBuffers::Cleanup ( )
pure virtual

Fonction de nettoyage.

virtual bool Castor3D::GeometryBuffers::Draw ( eTOPOLOGY  p_eTopology,
ShaderProgramBaseSPtr  p_pProgram,
uint32_t  p_uiSize,
uint32_t  p_uiIndex 
)
pure virtual

Dessine la géométrie contenue dans les buffers.

Paramètres
[in]p_eTopologyLa topologie voulue
[in]p_uiSizeSpécifie le nombre de vertices à rendre
[in]p_uiIndexSpécifie l'indice du premier vertice
Renvoie
true si tout s'est bien passé
virtual bool Castor3D::GeometryBuffers::DrawInstanced ( eTOPOLOGY  p_eTopology,
ShaderProgramBaseSPtr  p_pProgram,
uint32_t  p_uiSize,
uint32_t  p_uiIndex,
uint32_t  p_uiCount 
)
pure virtual

Dessine la géométrie contenue dans les buffers.

Paramètres
[in]p_eTopologyLa topologie voulue
[in]p_uiSizeSpécifie le nombre de vertices à rendre
[in]p_uiIndexSpécifie l'indice du premier vertice
[in]p_uiCountLe nombre d'instances à dessiner
Renvoie
true si tout s'est bien passé
IndexBuffer& Castor3D::GeometryBuffers::GetIndexBuffer ( )
inline

Récupère le tampon d'indices.

Renvoie
La valeur
MatrixBuffer& Castor3D::GeometryBuffers::GetMatrixBuffer ( )
inline

Récupère le tampon de matrices.

Renvoie
La valeur
VertexBuffer& Castor3D::GeometryBuffers::GetVertexBuffer ( )
inline

Récupère le tampon de vertices.

Renvoie
La valeur
bool Castor3D::GeometryBuffers::HasIndexBuffer ( )
inline

Récupère le fait que le conteneur possède un tampon d'indices.

Renvoie
La valeur
bool Castor3D::GeometryBuffers::HasMatrixBuffer ( )
inline

Récupère le fait que le conteneur possède un tampon de matrices.

Renvoie
La valeur
virtual bool Castor3D::GeometryBuffers::Initialise ( )
pure virtual

Fonction d'initialisation.

Renvoie
true si tout s'est bien passé
virtual void Castor3D::GeometryBuffers::Unbind ( )
virtual

Désactive les buffers de la géométrie.

Documentation des données membres

bool Castor3D::GeometryBuffers::m_bIndexBuffer
protected

Dit si le conteneur possède un tampon d'indices.

bool Castor3D::GeometryBuffers::m_bMatrixBuffer
protected

Dit si le conteneur possède un tampon de matrices.

IndexBufferUPtr Castor3D::GeometryBuffers::m_pIndexBuffer
protected

Le tampon d'indices.

MatrixBufferUPtr Castor3D::GeometryBuffers::m_pMatrixBuffer
protected

Le tampon de matrices.

VertexBufferUPtr Castor3D::GeometryBuffers::m_pVertexBuffer
protected

Le tampon de sommets.


La documentation de cette classe a été générée à partir du fichier suivant :