Castor3D  ..
Classes | Fonctions membres publiques | Fonctions membres protégées | Amis | Liste de tous les membres
Référence de la classe Castor3D::LightCategoryabstract

Contient les composantes d'une lumière. Plus de détails...

+ Graphe d'héritage de Castor3D::LightCategory:

Classes

class  TextWriter
 Loader de LightCategory. Plus de détails...
 

Fonctions membres publiques

virtual C3D_API ~LightCategory ()
 Destructeur. Plus de détails...
 
virtual C3D_API void Update (Castor::Point3r const &p_target, Viewport &p_viewport, int32_t p_index=-1)=0
 Met le viewport de la source à jour. Plus de détails...
 
virtual C3D_API std::unique_ptr< TextWriterCreateTextWriter (Castor::String const &p_tabs)=0
 Crée un TextLoader spécifique à la LightCategory. Plus de détails...
 
C3D_API void Bind (Castor::PxBufferBase &p_texture, uint32_t p_index) const
 Met la lumière dans la texture donnée. Plus de détails...
 
void SetColour (Castor::Point3f const &p_colour)
 Définit la couleur. Plus de détails...
 
void SetIntensity (Castor::Point3f const &p_intensity)
 Définit les valeurs d'intensité. Plus de détails...
 
void SetAmbientIntensity (float p_intensity)
 Définit l'intensité diffuse. Plus de détails...
 
void SetDiffuseIntensity (float p_intensity)
 Définit l'intensité diffuse. Plus de détails...
 
void SetSpecularIntensity (float p_intensity)
 Définit l'intensité spéculaire. Plus de détails...
 
LightType GetLightType () const
 Récupère le type de lumière. Plus de détails...
 
float GetAmbientIntensity () const
 Récupère la couleur ambiante. Plus de détails...
 
float GetDiffuseIntensity () const
 Récupère la couleur diffuse. Plus de détails...
 
float GetSpecularIntensity () const
 Récupère la couleur spéculaire. Plus de détails...
 
Castor::Point3f const & GetIntensity () const
 
Castor::Point3f & GetIntensity ()
 
Castor::Point3f const & GetColour () const
 
Castor::Point3f & GetColour ()
 
Light const & GetLight () const
 Récupère la lumière parente. Plus de détails...
 
LightGetLight ()
 Récupère la lumière parente. Plus de détails...
 

Fonctions membres protégées

C3D_API LightCategory (LightType p_lightType, Light &p_light)
 Constructeur. Plus de détails...
 
virtual C3D_API void UpdateNode (SceneNode const &p_node)=0
 Met à jour les informations de la source lumineuse, relatives au noeud de scène. Plus de détails...
 
void DoBindComponent (Castor::Point3f const &p_component, uint32_t p_index, uint32_t &p_offset, Castor::PxBufferBase &p_data) const
 
void DoBindComponent (Castor::Point4f const &p_component, uint32_t p_index, uint32_t &p_offset, Castor::PxBufferBase &p_data) const
 
void DoBindComponent (Castor::ConstCoords4f const &p_component, uint32_t p_index, uint32_t &p_offset, Castor::PxBufferBase &p_data) const
 
void DoBindComponent (Castor::Coords4f const &p_component, uint32_t p_index, uint32_t &p_offset, Castor::PxBufferBase &p_data) const
 
void DoBindComponent (Castor::Matrix4x4f const &p_component, uint32_t p_index, uint32_t &p_offset, Castor::PxBufferBase &p_data) const
 
void DoBindComponent (int32_t const &p_component, uint32_t p_index, uint32_t &p_offset, Castor::PxBufferBase &p_data) const
 

Amis

class Light
 

Description détaillée

Contient les composantes d'une lumière.

Auteur
Sylvain DOREMUS
Date
14/02/2010
Remarques
Dérivée en DirectionalLight, PointLight et SpotLight

Documentation des constructeurs et destructeur

◆ LightCategory()

C3D_API Castor3D::LightCategory::LightCategory ( LightType  p_lightType,
Light p_light 
)
explicitprotected

Constructeur.

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

◆ ~LightCategory()

virtual C3D_API Castor3D::LightCategory::~LightCategory ( )
virtual

Destructeur.

Documentation des fonctions membres

◆ Bind()

C3D_API void Castor3D::LightCategory::Bind ( Castor::PxBufferBase &  p_texture,
uint32_t  p_index 
) const

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

Paramètres
[out]p_textureLa texture recevant les données de la source lumineuse.
[in]p_indexL'indice de la source lumineuse.

◆ CreateTextWriter()

virtual C3D_API std::unique_ptr< TextWriter > Castor3D::LightCategory::CreateTextWriter ( Castor::String const &  p_tabs)
pure virtual

Crée un TextLoader spécifique à la LightCategory.

Paramètres
[in]p_tabsLe niveau d'intentation actuel.
Renvoie
Le TextLoader.

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

◆ DoBindComponent() [1/6]

void Castor3D::LightCategory::DoBindComponent ( Castor::Point3f const &  p_component,
uint32_t  p_index,
uint32_t &  p_offset,
Castor::PxBufferBase &  p_data 
) const
protected

Référencé par GetLight().

+ Voici le graphe des appelants de cette fonction :

◆ DoBindComponent() [2/6]

void Castor3D::LightCategory::DoBindComponent ( Castor::Point4f const &  p_component,
uint32_t  p_index,
uint32_t &  p_offset,
Castor::PxBufferBase &  p_data 
) const
protected

◆ DoBindComponent() [3/6]

void Castor3D::LightCategory::DoBindComponent ( Castor::ConstCoords4f const &  p_component,
uint32_t  p_index,
uint32_t &  p_offset,
Castor::PxBufferBase &  p_data 
) const
protected

◆ DoBindComponent() [4/6]

void Castor3D::LightCategory::DoBindComponent ( Castor::Coords4f const &  p_component,
uint32_t  p_index,
uint32_t &  p_offset,
Castor::PxBufferBase &  p_data 
) const
protected

◆ DoBindComponent() [5/6]

void Castor3D::LightCategory::DoBindComponent ( Castor::Matrix4x4f const &  p_component,
uint32_t  p_index,
uint32_t &  p_offset,
Castor::PxBufferBase &  p_data 
) const
protected

◆ DoBindComponent() [6/6]

void Castor3D::LightCategory::DoBindComponent ( int32_t const &  p_component,
uint32_t  p_index,
uint32_t &  p_offset,
Castor::PxBufferBase &  p_data 
) const
protected

◆ GetAmbientIntensity()

float Castor3D::LightCategory::GetAmbientIntensity ( ) const
inline

Récupère la couleur ambiante.

Renvoie
La valeur

◆ GetColour() [1/2]

Castor::Point3f const& Castor3D::LightCategory::GetColour ( ) const
inline
Renvoie
La couleur.

◆ GetColour() [2/2]

Castor::Point3f& Castor3D::LightCategory::GetColour ( )
inline
Renvoie
La couleur.

◆ GetDiffuseIntensity()

float Castor3D::LightCategory::GetDiffuseIntensity ( ) const
inline

Récupère la couleur diffuse.

Renvoie
La valeur

◆ GetIntensity() [1/2]

Castor::Point3f const& Castor3D::LightCategory::GetIntensity ( ) const
inline
Renvoie
Les valeurs d'intensité

◆ GetIntensity() [2/2]

Castor::Point3f& Castor3D::LightCategory::GetIntensity ( )
inline
Renvoie
Les valeurs d'intensité

◆ GetLight() [1/2]

Light const& Castor3D::LightCategory::GetLight ( ) const
inline

Récupère la lumière parente.

Renvoie
La valeur

◆ GetLight() [2/2]

Light& Castor3D::LightCategory::GetLight ( )
inline

Récupère la lumière parente.

Renvoie
La valeur

Références C3D_API, DoBindComponent(), et UpdateNode().

+ Voici le graphe d'appel pour cette fonction :

◆ GetLightType()

LightType Castor3D::LightCategory::GetLightType ( ) const
inline

Récupère le type de lumière.

Renvoie
La valeur

◆ GetSpecularIntensity()

float Castor3D::LightCategory::GetSpecularIntensity ( ) const
inline

Récupère la couleur spéculaire.

Renvoie
La valeur

◆ SetAmbientIntensity()

void Castor3D::LightCategory::SetAmbientIntensity ( float  p_intensity)
inline

Définit l'intensité diffuse.

Paramètres
[in]p_intensityLa nouvelle valeur

◆ SetColour()

void Castor3D::LightCategory::SetColour ( Castor::Point3f const &  p_colour)
inline

Définit la couleur.

Paramètres
[in]p_colourLa nouvelle valeur.

◆ SetDiffuseIntensity()

void Castor3D::LightCategory::SetDiffuseIntensity ( float  p_intensity)
inline

Définit l'intensité diffuse.

Paramètres
[in]p_intensityLa nouvelle valeur

◆ SetIntensity()

void Castor3D::LightCategory::SetIntensity ( Castor::Point3f const &  p_intensity)
inline

Définit les valeurs d'intensité.

Paramètres
[in]p_intensityLes nouvelles valeurs.

◆ SetSpecularIntensity()

void Castor3D::LightCategory::SetSpecularIntensity ( float  p_intensity)
inline

Définit l'intensité spéculaire.

Paramètres
[in]p_intensityLa nouvelle valeur

◆ Update()

virtual C3D_API void Castor3D::LightCategory::Update ( Castor::Point3r const &  p_target,
Viewport p_viewport,
int32_t  p_index = -1 
)
pure virtual

Met le viewport de la source à jour.

Paramètres
[in]p_targetLa position de la cible, utilisée pour la map d'ombres des source directionnelles.
[in,out]p_viewportLe viewport à mettre à jour.
[in]p_indexL'indice de la shadow map de la lumière, -1 si elle n'en a pas.

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

◆ UpdateNode()

virtual C3D_API void Castor3D::LightCategory::UpdateNode ( SceneNode const &  p_node)
protectedpure virtual

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

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

Référencé par GetLight().

+ Voici le graphe des appelants de cette fonction :

Documentation des fonctions amies et associées

◆ Light

friend class Light
friend

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