Castor3D
..
|
Classe de configuration des buffers de profondeur et stencil. Plus de détails...
Classes | |
struct | stSTENCIL |
Fonction et opérations de stencil. Plus de détails... | |
Fonctions membres publiques | |
C3D_API | DepthStencilState (Engine &p_engine) |
Constructeur. Plus de détails... | |
virtual C3D_API | ~DepthStencilState () |
Destructeur. Plus de détails... | |
virtual C3D_API bool | Initialise ()=0 |
Initialise les états. Plus de détails... | |
virtual C3D_API void | Cleanup ()=0 |
Nettoie les états. Plus de détails... | |
virtual C3D_API bool | Apply ()=0 |
Applique les états. Plus de détails... | |
void | SetDepthTest (bool p_enable) |
Définit le statut du test de profondeur. Plus de détails... | |
bool | GetDepthTest () const |
Récupère le statut du test de profondeur. Plus de détails... | |
void | SetDepthFunc (eDEPTH_FUNC p_func) |
Définit la fonction de profondeur. Plus de détails... | |
eDEPTH_FUNC | GetDepthFunc () const |
Récupère la fonction de profondeur. Plus de détails... | |
void | SetDepthRange (double p_near, double p_far) |
Définit l'intervalle profondeur. Plus de détails... | |
double | GetDepthNear () const |
Récupère la valeur proche pour la profondeur. Plus de détails... | |
double | GetDepthFar () const |
Récupère la valeur lointaine pour la profondeur. Plus de détails... | |
void | SetDepthMask (eWRITING_MASK p_eMask) |
Définit le masque d'écriture de la profondeur. Plus de détails... | |
eWRITING_MASK | GetDepthMask () const |
Récupère le masque d'écriture de la profondeur. Plus de détails... | |
void | SetStencilTest (bool p_enable) |
Définit le statut du test de stencil. Plus de détails... | |
bool | GetStencilTest () const |
Récupère le statut du test de stencil. Plus de détails... | |
void | SetStencilReadMask (uint32_t p_uiMask) |
Définit le masque de lecture du stencil. Plus de détails... | |
uint32_t | GetStencilReadMask () const |
Récupère le masque de lecture du stencil. Plus de détails... | |
void | SetStencilWriteMask (uint32_t p_uiMask) |
Définit le masque d'écriture du stencil. Plus de détails... | |
uint32_t | GetStencilWriteMask () const |
Récupère le masque d'écriture du stencil. Plus de détails... | |
void | SetStencilFrontRef (uint32_t p_ref) |
Définit la valeur de référence de stencil pour les faces avant. Plus de détails... | |
uint32_t | GetStencilFrontRef () const |
Récupère la valeur de référence de stencil pour les faces avant. Plus de détails... | |
void | SetStencilFrontFunc (eSTENCIL_FUNC p_func) |
Définit la fonction de stencil pour les faces avant. Plus de détails... | |
eSTENCIL_FUNC | GetStencilFrontFunc () const |
Récupère la fonction de stencil pour les faces avant. Plus de détails... | |
void | SetStencilFrontFailOp (eSTENCIL_OP p_eOp) |
Définit l'opération lors de l'échec du test de stencil, pour les faces avant. Plus de détails... | |
eSTENCIL_OP | GetStencilFrontFailOp () const |
Récupère l'opération lors de l'échec du test de stencil, pour les faces avant. Plus de détails... | |
void | SetStencilFrontDepthFailOp (eSTENCIL_OP p_eOp) |
Définit l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces avant. Plus de détails... | |
eSTENCIL_OP | GetStencilFrontDepthFailOp () const |
Récupère l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces avant. Plus de détails... | |
void | SetStencilFrontPassOp (eSTENCIL_OP p_eOp) |
Définit l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces avant. Plus de détails... | |
eSTENCIL_OP | GetStencilFrontPassOp () const |
Récupère l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces avant. Plus de détails... | |
void | SetStencilBackRef (uint32_t p_ref) |
Définit la valeur de référence de stencil pour les faces arrières. Plus de détails... | |
uint32_t | GetStencilBackRef () const |
Récupère la valeur de référence de stencil pour les faces arrières. Plus de détails... | |
void | SetStencilBackFunc (eSTENCIL_FUNC p_func) |
Définit la fonction de stencil pour les faces arrières. Plus de détails... | |
eSTENCIL_FUNC | GetStencilBackFunc () const |
Récupère la fonction de stencil pour les faces arrières. Plus de détails... | |
void | SetStencilBackFailOp (eSTENCIL_OP p_eOp) |
Définit l'opération lors de l'échec du test de stencil, pour les faces arrières. Plus de détails... | |
eSTENCIL_OP | GetStencilBackFailOp () const |
Récupère l'opération lors de l'échec du test de stencil, pour les faces arrières. Plus de détails... | |
void | SetStencilBackDepthFailOp (eSTENCIL_OP p_eOp) |
Définit l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces arrières. Plus de détails... | |
eSTENCIL_OP | GetStencilBackDepthFailOp () const |
Récupère l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces arrières. Plus de détails... | |
void | SetStencilBackPassOp (eSTENCIL_OP p_eOp) |
Définit l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces arrières. Plus de détails... | |
eSTENCIL_OP | GetStencilBackPassOp () const |
Récupère l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces arrières. Plus de détails... | |
Fonctions membres protégées | |
C3D_API void | CreateCurrent () |
Crée l'état utilisé pour stocker l'état courant. Plus de détails... | |
C3D_API void | DestroyCurrent () |
Détruit l'état utilisé pour stocker l'état courant. Plus de détails... | |
virtual C3D_API DepthStencilStateSPtr | DoCreateCurrent ()=0 |
Crée l'état utilisé pour stocker l'état courant. Plus de détails... | |
Attributs protégés | |
bool | m_changed |
Dit que l'état a changé Plus de détails... | |
bool | m_bDepthTest |
Dit si oui on non le test de profondeur est activé Plus de détails... | |
eDEPTH_FUNC | m_eDepthFunc |
La fonction du test de profondeur. Plus de détails... | |
double | m_dDepthNear |
Le plan proche pour le test de profondeur. Plus de détails... | |
double | m_dDepthFar |
Le plan lointain pour le test de profondeur. Plus de détails... | |
eWRITING_MASK | m_eDepthMask |
Masque d'écriture de la profondeur. Plus de détails... | |
bool | m_bStencilTest |
Dit si le test stencil est activé ou non. Plus de détails... | |
uint32_t | m_uiStencilReadMask |
Le masque de lecture du stencil. Plus de détails... | |
uint32_t | m_uiStencilWriteMask |
Le masque d'écriture du stencil. Plus de détails... | |
stSTENCIL | m_stStencilFront |
Fonction stencil du tampon de premier plan. Plus de détails... | |
stSTENCIL | m_stStencilBack |
Fonction stencil du tampon d'arrière plan. Plus de détails... | |
DepthStencilStateSPtr | m_currentState |
Pointeur partag2 sur l'état interne global, utilisé pour avoir le comptage de références pour ce membre statique. Plus de détails... | |
Attributs protégés statiques | |
static DepthStencilStateWPtr | m_wCurrentState |
Etat interne global, utilisé pour n'appliquer que les changements d'état. Plus de détails... | |
Classe de configuration des buffers de profondeur et stencil.
C3D_API Castor3D::DepthStencilState::DepthStencilState | ( | Engine & | p_engine | ) |
Constructeur.
[in] | p_engine | Le moteur. |
|
virtual |
Destructeur.
|
pure virtual |
Applique les états.
|
pure virtual |
Nettoie les états.
|
protected |
Crée l'état utilisé pour stocker l'état courant.
Référencé par GetStencilBackPassOp().
|
protected |
Détruit l'état utilisé pour stocker l'état courant.
Référencé par GetStencilBackPassOp().
|
protectedpure virtual |
Crée l'état utilisé pour stocker l'état courant.
Référencé par GetStencilBackPassOp().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Récupère l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces arrières.
Références Castor3D::DepthStencilState::stSTENCIL::m_eDepthFailOp, et m_stStencilBack.
|
inline |
Récupère l'opération lors de l'échec du test de stencil, pour les faces arrières.
Références Castor3D::DepthStencilState::stSTENCIL::m_eFailOp, et m_stStencilBack.
|
inline |
Récupère la fonction de stencil pour les faces arrières.
Références Castor3D::DepthStencilState::stSTENCIL::m_eFunc, et m_stStencilBack.
|
inline |
Récupère l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces arrières.
Références CreateCurrent(), DestroyCurrent(), DoCreateCurrent(), Castor3D::DepthStencilState::stSTENCIL::m_ePassOp, et m_stStencilBack.
|
inline |
Récupère la valeur de référence de stencil pour les faces arrières.
Références Castor3D::DepthStencilState::stSTENCIL::m_ref, et m_stStencilBack.
|
inline |
Récupère l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces avant.
Références Castor3D::DepthStencilState::stSTENCIL::m_eDepthFailOp, et m_stStencilFront.
|
inline |
Récupère l'opération lors de l'échec du test de stencil, pour les faces avant.
Références Castor3D::DepthStencilState::stSTENCIL::m_eFailOp, et m_stStencilFront.
|
inline |
Récupère la fonction de stencil pour les faces avant.
Références Castor3D::DepthStencilState::stSTENCIL::m_eFunc, et m_stStencilFront.
|
inline |
Récupère l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces avant.
Références Castor3D::DepthStencilState::stSTENCIL::m_ePassOp, et m_stStencilFront.
|
inline |
Récupère la valeur de référence de stencil pour les faces avant.
Références Castor3D::DepthStencilState::stSTENCIL::m_ref, et m_stStencilFront.
|
inline |
|
inline |
|
inline |
|
pure virtual |
Initialise les états.
|
inline |
Définit la fonction de profondeur.
[in] | p_func | La fonction |
Références m_changed, et m_eDepthFunc.
|
inline |
Définit le masque d'écriture de la profondeur.
[in] | p_eMask | Le masque |
Références m_changed, et m_eDepthMask.
|
inline |
Définit l'intervalle profondeur.
[in] | p_near | La borne inférieure |
[in] | p_far | La borne supérieure |
Références m_changed, m_dDepthFar, et m_dDepthNear.
|
inline |
Définit le statut du test de profondeur.
[in] | p_enable | Le nouveau statut |
Références m_bDepthTest, et m_changed.
|
inline |
Définit l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces arrières.
[in] | p_eOp | L'opération |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_eDepthFailOp, et m_stStencilBack.
|
inline |
Définit l'opération lors de l'échec du test de stencil, pour les faces arrières.
[in] | p_eOp | L'opération |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_eFailOp, et m_stStencilBack.
|
inline |
Définit la fonction de stencil pour les faces arrières.
[in] | p_func | La fonction |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_eFunc, et m_stStencilBack.
|
inline |
Définit l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces arrières.
[in] | p_eOp | L'opération |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_ePassOp, et m_stStencilBack.
|
inline |
Définit la valeur de référence de stencil pour les faces arrières.
[in] | p_ref | La valeur de référence |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_ref, et m_stStencilBack.
|
inline |
Définit l'opération lors de la réussite du test de stencil mais de l'échec du test de profondeur, pour les faces avant.
[in] | p_eOp | L'opération |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_eDepthFailOp, et m_stStencilFront.
|
inline |
Définit l'opération lors de l'échec du test de stencil, pour les faces avant.
[in] | p_eOp | L'opération |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_eFailOp, et m_stStencilFront.
|
inline |
Définit la fonction de stencil pour les faces avant.
[in] | p_func | La fonction |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_eFunc, et m_stStencilFront.
|
inline |
Définit l'opération lors de la réussite des tests de stencil et de profondeur, pour les faces avant.
[in] | p_eOp | L'opération |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_ePassOp, et m_stStencilFront.
|
inline |
Définit la valeur de référence de stencil pour les faces avant.
[in] | p_ref | La valeur de référence |
Références m_changed, Castor3D::DepthStencilState::stSTENCIL::m_ref, et m_stStencilFront.
|
inline |
Définit le masque de lecture du stencil.
[in] | p_uiMask | Le masque |
Références m_changed, et m_uiStencilReadMask.
|
inline |
Définit le statut du test de stencil.
[in] | p_enable | Le nouveau statut |
Références m_bStencilTest, et m_changed.
|
inline |
Définit le masque d'écriture du stencil.
[in] | p_uiMask | Le masque |
Références m_changed, et m_uiStencilWriteMask.
|
protected |
Dit si oui on non le test de profondeur est activé
Référencé par GetDepthTest(), et SetDepthTest().
|
protected |
Dit si le test stencil est activé ou non.
Référencé par GetStencilTest(), et SetStencilTest().
|
protected |
Dit que l'état a changé
Référencé par SetDepthFunc(), SetDepthMask(), SetDepthRange(), SetDepthTest(), SetStencilBackDepthFailOp(), SetStencilBackFailOp(), SetStencilBackFunc(), SetStencilBackPassOp(), SetStencilBackRef(), SetStencilFrontDepthFailOp(), SetStencilFrontFailOp(), SetStencilFrontFunc(), SetStencilFrontPassOp(), SetStencilFrontRef(), SetStencilReadMask(), SetStencilTest(), et SetStencilWriteMask().
|
protected |
Pointeur partag2 sur l'état interne global, utilisé pour avoir le comptage de références pour ce membre statique.
|
protected |
Le plan lointain pour le test de profondeur.
Référencé par GetDepthFar(), et SetDepthRange().
|
protected |
Le plan proche pour le test de profondeur.
Référencé par GetDepthNear(), et SetDepthRange().
|
protected |
La fonction du test de profondeur.
Référencé par GetDepthFunc(), et SetDepthFunc().
|
protected |
Masque d'écriture de la profondeur.
Référencé par GetDepthMask(), et SetDepthMask().
|
protected |
Fonction stencil du tampon d'arrière plan.
Référencé par GetStencilBackDepthFailOp(), GetStencilBackFailOp(), GetStencilBackFunc(), GetStencilBackPassOp(), GetStencilBackRef(), SetStencilBackDepthFailOp(), SetStencilBackFailOp(), SetStencilBackFunc(), SetStencilBackPassOp(), et SetStencilBackRef().
|
protected |
Fonction stencil du tampon de premier plan.
Référencé par GetStencilFrontDepthFailOp(), GetStencilFrontFailOp(), GetStencilFrontFunc(), GetStencilFrontPassOp(), GetStencilFrontRef(), SetStencilFrontDepthFailOp(), SetStencilFrontFailOp(), SetStencilFrontFunc(), SetStencilFrontPassOp(), et SetStencilFrontRef().
|
protected |
Le masque de lecture du stencil.
Référencé par GetStencilReadMask(), et SetStencilReadMask().
|
protected |
Le masque d'écriture du stencil.
Référencé par GetStencilWriteMask(), et SetStencilWriteMask().
|
staticprotected |
Etat interne global, utilisé pour n'appliquer que les changements d'état.