Castor3D  0.11.0
Multiplatform 3D engine
Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Amis | Liste de tous les membres
Référence de la classe castor3d::LightCategoryabstract
Graphe d'héritage de castor3d::LightCategory:
Inheritance graph
[légende]

Fonctions membres publiques

virtual C3D_API ~LightCategory ()
 Destructeur. Plus de détails...
 
virtual C3D_API void update ()=0
 Met la source à jour. Plus de détails...
 
C3D_API void bind (castor::Point4f *buffer) const
 Met la lumière dans la texture donnée. Plus de détails...
 
C3D_API uint32_t getVolumetricSteps () const
 
C3D_API float getVolumetricScatteringFactor () const
 
C3D_API castor::Point2f const & getShadowRawOffsets () const
 
C3D_API castor::Point2f const & getShadowPcfOffsets () const
 
C3D_API castor::Point2f const & getShadowVariance () const
 
C3D_API ShadowConfig const & getShadowConfig () const
 
C3D_API RsmConfig const & getRsmConfig () const
 
C3D_API LpvConfig const & getLpvConfig () const
 
LightType getLightType () const
 
float getDiffuseIntensity () const
 
float getSpecularIntensity () const
 
castor::Point2f const & getIntensity () const
 
float getFarPlane () const
 
castor::Point3f const & getColour () const
 
Light const & getLight () const
 
castor::BoundingBox const & getBoundingBox () const
 
C3D_API void setVolumetricSteps (uint32_t value)
 
C3D_API void setVolumetricScatteringFactor (float value)
 
C3D_API void setRawMinOffset (float value)
 
C3D_API void setRawMaxSlopeOffset (float value)
 
C3D_API void setPcfMinOffset (float value)
 
C3D_API void setPcfMaxSlopeOffset (float value)
 
C3D_API void setVsmMaxVariance (float value)
 
C3D_API void setVsmVarianceBias (float value)
 
LightgetLight ()
 
castor::Point3f & getColour ()
 
castor::Point2f & getIntensity ()
 
void setColour (castor::Point3f const &value)
 
void setIntensity (castor::Point2f const &value)
 
void setDiffuseIntensity (float value)
 
void setSpecularIntensity (float value)
 

Fonctions membres protégées

C3D_API LightCategory (LightType lightType, Light &light)
 Constructeur. Plus de détails...
 
virtual C3D_API void updateNode (SceneNode const &node)=0
 Met à jour les informations de la source lumineuse, relatives au noeud de scène. Plus de détails...
 
void doCopyComponent (castor::Point2f const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Point2f const &components1, castor::Point2f const &components2, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Point2f const &components, float component, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Point2f const &components, float component1, float component2, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (float component0, float component1, float component2, float component3, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Point3f const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Point3f const &components, float component, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Point4f const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::ConstCoords4f const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Coords4f const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (castor::Matrix4x4f const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 
void doCopyComponent (int32_t const &components, castor::Point4f *&buffer) const
 Copie les valeurs de la composante de lumière donnée dans le tampon. Plus de détails...
 

Attributs protégés

castor::BoundingBox m_cubeBox
 
float m_farPlane { 1.0f }
 
int32_t m_shadowMapIndex { -1 }
 

Amis

class Light
 

Documentation des constructeurs et destructeur

◆ LightCategory()

C3D_API castor3d::LightCategory::LightCategory ( LightType  lightType,
Light light 
)
explicitprotected

Constructeur.

Paramètres
[in]lightTypeLe type de catégorie de lumière.
[in]lightLa Light parente.

◆ ~LightCategory()

virtual C3D_API castor3d::LightCategory::~LightCategory ( )
virtual

Destructeur.

Documentation des fonctions membres

◆ bind()

C3D_API void castor3d::LightCategory::bind ( castor::Point4f *  buffer) const

Met la lumière dans la texture donnée.

Paramètres
[out]bufferLe tampon recevant les données de la source lumineuse.

◆ doCopyComponent() [1/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point2f const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [2/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point2f const &  components1,
castor::Point2f const &  components2,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]components1,components2Les composantes.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [3/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point2f const &  components,
float  component,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]componentLa dernière composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [4/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point2f const &  components,
float  component1,
float  component2,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]component1La troisième composante.
[in]component2La quatrième composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [5/12]

void castor3d::LightCategory::doCopyComponent ( float  component0,
float  component1,
float  component2,
float  component3,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]component0,component1,component2,component3Les composantes.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [6/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point3f const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [7/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point3f const &  components,
float  component,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLes composantes.
[in]componentLa dernière composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [8/12]

void castor3d::LightCategory::doCopyComponent ( castor::Point4f const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [9/12]

void castor3d::LightCategory::doCopyComponent ( castor::ConstCoords4f const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [10/12]

void castor3d::LightCategory::doCopyComponent ( castor::Coords4f const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [11/12]

void castor3d::LightCategory::doCopyComponent ( castor::Matrix4x4f const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ doCopyComponent() [12/12]

void castor3d::LightCategory::doCopyComponent ( int32_t const &  components,
castor::Point4f *&  buffer 
) const
protected

Copie les valeurs de la composante de lumière donnée dans le tampon.

Paramètres
[in]componentsLa composante.
[in]bufferLe tampon de destination.

◆ getBoundingBox()

castor::BoundingBox const& castor3d::LightCategory::getBoundingBox ( ) const
inline

Références m_cubeBox.

◆ getColour() [1/2]

castor::Point3f const& castor3d::LightCategory::getColour ( ) const
inline

◆ getColour() [2/2]

castor::Point3f& castor3d::LightCategory::getColour ( )
inline

◆ getDiffuseIntensity()

float castor3d::LightCategory::getDiffuseIntensity ( ) const
inline

◆ getFarPlane()

float castor3d::LightCategory::getFarPlane ( ) const
inline

Références m_farPlane.

◆ getIntensity() [1/2]

castor::Point2f const& castor3d::LightCategory::getIntensity ( ) const
inline

◆ getIntensity() [2/2]

castor::Point2f& castor3d::LightCategory::getIntensity ( )
inline

◆ getLight() [1/2]

Light const& castor3d::LightCategory::getLight ( ) const
inline

◆ getLight() [2/2]

Light& castor3d::LightCategory::getLight ( )
inline

◆ getLightType()

LightType castor3d::LightCategory::getLightType ( ) const
inline

◆ getLpvConfig()

C3D_API LpvConfig const& castor3d::LightCategory::getLpvConfig ( ) const

◆ getRsmConfig()

C3D_API RsmConfig const& castor3d::LightCategory::getRsmConfig ( ) const

◆ getShadowConfig()

C3D_API ShadowConfig const& castor3d::LightCategory::getShadowConfig ( ) const

◆ getShadowPcfOffsets()

C3D_API castor::Point2f const& castor3d::LightCategory::getShadowPcfOffsets ( ) const

◆ getShadowRawOffsets()

C3D_API castor::Point2f const& castor3d::LightCategory::getShadowRawOffsets ( ) const

◆ getShadowVariance()

C3D_API castor::Point2f const& castor3d::LightCategory::getShadowVariance ( ) const

◆ getSpecularIntensity()

float castor3d::LightCategory::getSpecularIntensity ( ) const
inline

◆ getVolumetricScatteringFactor()

C3D_API float castor3d::LightCategory::getVolumetricScatteringFactor ( ) const

◆ getVolumetricSteps()

C3D_API uint32_t castor3d::LightCategory::getVolumetricSteps ( ) const

name Accesseurs.

◆ setColour()

void castor3d::LightCategory::setColour ( castor::Point3f const &  value)
inline

◆ setDiffuseIntensity()

void castor3d::LightCategory::setDiffuseIntensity ( float  value)
inline

◆ setIntensity()

void castor3d::LightCategory::setIntensity ( castor::Point2f const &  value)
inline

◆ setPcfMaxSlopeOffset()

C3D_API void castor3d::LightCategory::setPcfMaxSlopeOffset ( float  value)

◆ setPcfMinOffset()

C3D_API void castor3d::LightCategory::setPcfMinOffset ( float  value)

◆ setRawMaxSlopeOffset()

C3D_API void castor3d::LightCategory::setRawMaxSlopeOffset ( float  value)

◆ setRawMinOffset()

C3D_API void castor3d::LightCategory::setRawMinOffset ( float  value)

◆ setSpecularIntensity()

void castor3d::LightCategory::setSpecularIntensity ( float  value)
inline

◆ setVolumetricScatteringFactor()

C3D_API void castor3d::LightCategory::setVolumetricScatteringFactor ( float  value)

◆ setVolumetricSteps()

C3D_API void castor3d::LightCategory::setVolumetricSteps ( uint32_t  value)

name Mutateurs.

◆ setVsmMaxVariance()

C3D_API void castor3d::LightCategory::setVsmMaxVariance ( float  value)

◆ setVsmVarianceBias()

C3D_API void castor3d::LightCategory::setVsmVarianceBias ( float  value)

◆ update()

virtual C3D_API void castor3d::LightCategory::update ( )
pure virtual

Met la source à jour.

Implémenté dans castor3d::DirectionalLight, castor3d::SpotLight, et castor3d::PointLight.

◆ updateNode()

virtual C3D_API void castor3d::LightCategory::updateNode ( SceneNode const &  node)
protectedpure virtual

Met à jour les informations de la source lumineuse, relatives au noeud de scène.

Paramètres
[in]nodeLe noeud de scène.

Documentation des fonctions amies et associées

◆ Light

friend class Light
friend

Documentation des données membres

◆ m_cubeBox

castor::BoundingBox castor3d::LightCategory::m_cubeBox
protected

La cube box pour le volume d'effet de la lumière.

Référencé par getBoundingBox().

◆ m_farPlane

float castor3d::LightCategory::m_farPlane { 1.0f }
protected

La profondeur du plan éloigné.

Référencé par getFarPlane().

◆ m_shadowMapIndex

int32_t castor3d::LightCategory::m_shadowMapIndex { -1 }
protected

L'index de la shadow map de la source lumineuse.


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