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

Représentation d'un tampon de sommets. Plus de détails...

+ Graphe d'héritage de Castor3D::VertexBuffer:
+ Graphe de collaboration de Castor3D::VertexBuffer:

Fonctions membres publiques

C3D_API VertexBuffer (Engine &p_engine, BufferDeclaration const &p_declaration)
 Constructeur. Plus de détails...
 
C3D_API ~VertexBuffer ()
 Destructeur. Plus de détails...
 
C3D_API bool Create ()
 Fonction de création. Plus de détails...
 
BufferDeclaration const & GetDeclaration () const
 Récupère la déclaration du tampon. Plus de détails...
 
template<typename ItType >
void LinkCoords (ItType p_begin, ItType p_end)
 Lie tous les éméents à ce tampon. Plus de détails...
 
- Fonctions membres publiques hérités de Castor3D::CpuBuffer< uint8_t >
void Destroy ()
 Fonction de destruction. Plus de détails...
 
void Cleanup ()
 Fonction de nettoyage. Plus de détails...
 
bool Initialise (eBUFFER_ACCESS_TYPE p_type, eBUFFER_ACCESS_NATURE p_nature)
 Fonction d'initialisation, initialise le GPU tampon. Plus de détails...
 
uint8_t * Lock (uint32_t p_offset, uint32_t p_count, uint32_t p_flags)
 Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications. Plus de détails...
 
void Unlock ()
 Un locke le tampon, càd l'unmappe de la mémoire ram afin de ne plus autoriser de modifications dessus. Plus de détails...
 
bool Fill (uint8_t const *p_buffer, ptrdiff_t p_size, Castor3D::eBUFFER_ACCESS_TYPE p_type, Castor3D::eBUFFER_ACCESS_NATURE p_nature)
 Transfère des données au tampon GPU à partir de la ram. Plus de détails...
 
bool Bind ()
 Fonction d'activation, pour dire au GPU qu'il est activé Plus de détails...
 
void Unbind ()
 Fonction de désactivation, pour dire au GPU qu'il est désactivé Plus de détails...
 
void SetElement (uint32_t p_index, uint8_t const &p_value)
 Définit la valeur de l'élément à l'index donné Plus de détails...
 
void AddElement (uint8_t const &p_value)
 Ajoute une valeur à la fin du tampon. Plus de détails...
 
uint32_t GetSize () const
 Récupère la taille remplie du tampon. Plus de détails...
 
uint32_t GetCapacity () const
 Récupère la taille allouée du tampon. Plus de détails...
 
void Resize (uint32_t p_uiNewSize)
 Définit la taille allouée du tampon. Plus de détails...
 
void Reserve (uint32_t p_uiIncrement)
 Augmente la taille allouée du tampon. Plus de détails...
 
void Clear ()
 Vide le tampon. Plus de détails...
 
bool IsToDelete () const
 Récupère le statut de suppression du tampon. Plus de détails...
 
bool IsAssigned () const
 Récupère le statut d'affectation du tampon. Plus de détails...
 
GpuBufferSPtr GetGpuBuffer () const
 Récupère le tampon GPU. Plus de détails...
 
void Assign ()
 Définit le status d'affectation à true. Plus de détails...
 
void Unassign ()
 Définit le status d'affectation à false. Plus de détails...
 
uint8_t const * data () const
 Récupère le pointeur sur les données. Plus de détails...
 
uint8_t * data ()
 Récupère le pointeur sur les données. Plus de détails...
 

Attributs protégés

BufferDeclaration m_bufferDeclaration
 Description des élément du tampon. Plus de détails...
 
- Attributs protégés hérités de Castor3D::CpuBuffer< uint8_t >
bool m_bToDelete
 Dit que le tampon doit être détruit à la prochaîne boucle de rendu. Plus de détails...
 
bool m_bAssigned
 Dit que le tampon s'est vu affecter un tampon GPU. Plus de détails...
 
GpuBufferSPtr m_pBuffer
 Le tampon GPU. Plus de détails...
 
TArray m_arrayData
 Les données du tampon. Plus de détails...
 
uint32_t m_uiSavedSize
 

Membres hérités additionnels

- Types protégés hérités de Castor3D::CpuBuffer< uint8_t >
typedef std::shared_ptr< GpuBuffer< uint8_t > > GpuBufferSPtr
 
typedef std::weak_ptr< GpuBuffer< uint8_t > > GpuBufferWPtr
 
typedef std::weak_ptr< CpuBuffer< uint8_t > > CpuBufferWPtr
 
- Fonctions membres protégées hérités de Castor3D::CpuBuffer< uint8_t >
 DECLARE_TPL_VECTOR (uint8_t, uint8_t)
 
 CpuBuffer (Engine &p_engine)
 Constructeur. Plus de détails...
 
 ~CpuBuffer ()
 Destructeur. Plus de détails...
 

Description détaillée

Représentation d'un tampon de sommets.

Auteur
Sylvain DOREMUS
Version
0.1
Date
09/02/2010
Remarques
Contient les informations des sommets d'un submesh

Documentation des constructeurs et destructeur

C3D_API Castor3D::VertexBuffer::VertexBuffer ( Engine p_engine,
BufferDeclaration const &  p_declaration 
)

Constructeur.

Paramètres
[in]p_engineLe moteur.
[in]p_declarationLa déclaration du tampon.
C3D_API Castor3D::VertexBuffer::~VertexBuffer ( )

Destructeur.

Documentation des fonctions membres

C3D_API bool Castor3D::VertexBuffer::Create ( )

Fonction de création.

Renvoie
true si tout s'est bien passé
BufferDeclaration const& Castor3D::VertexBuffer::GetDeclaration ( ) const
inline

Récupère la déclaration du tampon.

Renvoie
La déclaration du tampon

Références m_bufferDeclaration.

template<typename ItType >
void Castor3D::VertexBuffer::LinkCoords ( ItType  p_begin,
ItType  p_end 
)
inline

Lie tous les éméents à ce tampon.

Paramètres
[in]p_begin,p_endLes itérateurs du tableau d'éléments

Références Castor3D::CpuBuffer< T >::data(), Castor3D::BufferDeclaration::GetStride(), et m_bufferDeclaration.

+ Voici le graphe d'appel pour cette fonction :

Documentation des données membres

BufferDeclaration Castor3D::VertexBuffer::m_bufferDeclaration
protected

Description des élément du tampon.

Référencé par GetDeclaration(), et LinkCoords().


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