Castor3D
..
|
Classe de gestion de tampon 3D. Plus de détails...
Fonctions membres publiques | |
CpuBuffer (RenderSystem *p_pRenderSystem) | |
Constructeur. Plus de détails... | |
virtual | ~CpuBuffer () |
Destructeur. Plus de détails... | |
virtual bool | Create () |
Fonction de création. Plus de détails... | |
virtual void | Destroy () |
Fonction de destruction. Plus de détails... | |
virtual void | Cleanup () |
Fonction de nettoyage. Plus de détails... | |
virtual bool | Initialise (eBUFFER_ACCESS_TYPE p_eType, eBUFFER_ACCESS_NATURE p_eNature, Castor3D::ShaderProgramBaseSPtr p_pProgram=nullptr) |
Fonction d'initialisation, initialise le GPU tampon. Plus de détails... | |
virtual T * | Lock (uint32_t p_uiOffset, uint32_t p_uiCount, uint32_t p_uiFlags) |
Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications. Plus de détails... | |
virtual 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... | |
virtual bool | Fill (T const *p_pBuffer, ptrdiff_t p_iSize, Castor3D::eBUFFER_ACCESS_TYPE p_eType, Castor3D::eBUFFER_ACCESS_NATURE p_eNature) |
Transfère des données au tampon GPU à partir de la ram. Plus de détails... | |
virtual bool | Bind () |
Fonction d'activation, pour dire au GPU qu'il est activé Plus de détails... | |
virtual void | Unbind () |
Fonction de désactivation, pour dire au GPU qu'il est désactivé Plus de détails... | |
virtual void | SetElement (uint32_t p_uiIndex, T const &p_tValue) |
Définit la valeur de l'élément à l'index donné Plus de détails... | |
virtual void | AddElement (T const &p_tValue) |
Ajoute une valeur à la fin du tampon. Plus de détails... | |
virtual uint32_t | GetSize () const |
Récupère la taille remplie du tampon. Plus de détails... | |
virtual uint32_t | GetCapacity () const |
Récupère la taille allouée du tampon. Plus de détails... | |
virtual void | Resize (uint32_t p_uiNewSize) |
Définit la taille allouée du tampon. Plus de détails... | |
virtual void | Reserve (uint32_t p_uiIncrement) |
Augmente la taille allouée du tampon. Plus de détails... | |
virtual void | Clear () |
Vide le tampon. Plus de détails... | |
virtual bool | IsToDelete () const |
Récupère le statut de suppression du tampon. Plus de détails... | |
virtual bool | IsAssigned () const |
Récupère le statut d'affectation du tampon. Plus de détails... | |
virtual GpuBufferSPtr | GetGpuBuffer () const |
Récupère le tampon GPU. Plus de détails... | |
virtual void | Assign () |
Définit le status d'affectation à true . Plus de détails... | |
virtual void | Unassign () |
Définit le status d'affectation à false . Plus de détails... | |
virtual RenderSystem * | GetRenderSystem () const |
Récupère le RenderSystem. Plus de détails... | |
virtual T const * | data () const |
Récupère le pointeur sur les données. Plus de détails... | |
virtual T * | data () |
Récupère le pointeur sur les données. Plus de détails... | |
Types protégés | |
typedef std::shared_ptr < GpuBuffer< T > > | GpuBufferSPtr |
typedef std::weak_ptr < GpuBuffer< T > > | GpuBufferWPtr |
typedef std::weak_ptr < CpuBuffer< T > > | CpuBufferWPtr |
Fonctions membres protégées | |
DECLARE_TPL_VECTOR (T, T) | |
virtual bool | DoCreateBuffer ()=0 |
Récupère le shared pointer sur this. Plus de détails... | |
Attributs protégés | |
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... | |
RenderSystem * | m_pRenderSystem |
Le RenderSystem, utilisée pour affecter un tampon GPU. Plus de détails... | |
uint32_t | m_uiSavedSize |
Classe de gestion de tampon 3D.
|
protected |
|
protected |
|
protected |
|
inline |
Constructeur.
[in] | p_pRenderSystem | The RenderSystem |
[in] | p_uiCount | Le compte des éléments |
|
inlinevirtual |
Destructeur.
|
inlinevirtual |
Ajoute une valeur à la fin du tampon.
[in] | p_tValue | La valeur |
|
inlinevirtual |
Définit le status d'affectation à true
.
|
inlinevirtual |
Fonction d'activation, pour dire au GPU qu'il est activé
true
si tout s'est bien passé
|
inlinevirtual |
Fonction de nettoyage.
|
inlinevirtual |
Vide le tampon.
|
inlinevirtual |
Fonction de création.
true
si tout s'est bien passé
|
inlinevirtual |
Récupère le pointeur sur les données.
|
inlinevirtual |
Récupère le pointeur sur les données.
|
protected |
|
inlinevirtual |
Fonction de destruction.
|
protectedpure virtual |
Récupère le shared pointer sur this.
Fonction d'initialisation
|
inlinevirtual |
Transfère des données au tampon GPU à partir de la ram.
[in] | p_pBuffer | Les données |
[in] | p_iSize | Taille du tampon de données |
[in] | p_eType | Type de transfert |
[in] | p_eNature | Nature du transfert |
true
si tout s'est bien passé
|
inlinevirtual |
Récupère la taille allouée du tampon.
|
inlinevirtual |
Récupère le tampon GPU.
|
inlinevirtual |
Récupère le RenderSystem.
|
inlinevirtual |
Récupère la taille remplie du tampon.
|
inlinevirtual |
Fonction d'initialisation, initialise le GPU tampon.
[in] | p_eType | Type d'accès du tampon |
[in] | p_eNature | Nature d'accès du tampon |
[in] | p_pProgram | Le programme shader |
|
inlinevirtual |
Récupère le statut d'affectation du tampon.
|
inlinevirtual |
Récupère le statut de suppression du tampon.
|
inlinevirtual |
Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications.
[in] | p_uiOffset | L'offset de départ |
[in] | p_uiCount | Le nombre d'éléments à mapper |
[in] | p_uiFlags | Les flags de lock |
|
inlinevirtual |
Augmente la taille allouée du tampon.
[in] | p_uiIncrement | L'incrément de taille |
|
inlinevirtual |
Définit la taille allouée du tampon.
[in] | p_uiNewSize | La nouvelle taille |
|
inlinevirtual |
Définit la valeur de l'élément à l'index donné
[in] | p_uiIndex | L'index |
[in] | p_tValue | La valeur |
|
inlinevirtual |
Définit le status d'affectation à false
.
|
inlinevirtual |
Fonction de désactivation, pour dire au GPU qu'il est désactivé
true
si tout s'est bien passé
|
inlinevirtual |
Un locke le tampon, càd l'unmappe de la mémoire ram afin de ne plus autoriser de modifications dessus.
|
protected |
Les données du tampon.
|
protected |
Dit que le tampon s'est vu affecter un tampon GPU.
|
protected |
Dit que le tampon doit être détruit à la prochaîne boucle de rendu.
|
protected |
Le tampon GPU.
|
protected |
Le RenderSystem, utilisée pour affecter un tampon GPU.
La taille sauvegardée, afin de toujours l'avoir après un clear
|
protected |