Castor3D 0.13.0
Multiplatform 3D engine
|
#include <Light.hpp>
Fonctions membres publiques | |
C3D_API | Light (castor::String const &name, Scene &scene, SceneNode &node, LightFactory &factory, LightType lightType) |
Constructeur. Plus de détails... | |
C3D_API void | update (CpuUpdater &updater) |
Mise à jour CPU. Plus de détails... | |
C3D_API void | fillBuffer (uint32_t index, LightBuffer::LightData &data) |
Enregistre les données de la source lumineuse dans le tampon donné. Plus de détails... | |
C3D_API DirectionalLightSPtr | getDirectionalLight () const |
C3D_API PointLightSPtr | getPointLight () const |
C3D_API SpotLightSPtr | getSpotLight () const |
LightType | getLightType () const |
bool | isEnabled () const |
castor::Point3f const & | getColour () const |
castor::Point2f const & | getIntensity () const |
float | getFarPlane () const |
float | getDiffuseIntensity () const |
float | getSpecularIntensity () const |
castor::BoundingBox const & | getBoundingBox () const |
LightCategorySPtr | getCategory () const |
bool | isShadowProducer () const |
bool | isExpectedShadowProducer () const |
ShadowType | getShadowType () const |
ShadowMapRPtr | getShadowMap () const |
uint32_t | getShadowMapIndex () const |
uint32_t | getBufferIndex () const |
bool | needsRsmShadowMaps () const |
GlobalIlluminationType | getGlobalIlluminationType () const |
GlobalIlluminationType | getExpectedGlobalIlluminationType () const |
RsmConfig const & | getRsmConfig () const |
RsmConfig & | getRsmConfig () |
LpvConfig const & | getLpvConfig () const |
LpvConfig & | getLpvConfig () |
uint32_t | getVolumetricSteps () const |
float | getVolumetricScatteringFactor () const |
castor::Point2f const & | getShadowRawOffsets () const |
castor::Point2f const & | getShadowPcfOffsets () const |
castor::Point2f const & | getShadowVariance () const |
ShadowConfig const & | getShadowConfig () const |
void | setColour (float *values) |
void | setColour (float r, float g, float b) |
void | setColour (castor::Point3f const &value) |
void | setColour (castor::RgbColour const &value) |
void | setIntensity (float *values) |
void | setIntensity (float d, float s) |
void | setIntensity (castor::Point2f const &value) |
void | setDiffuseIntensity (float value) |
void | setSpecularIntensity (float value) |
void | setEnabled (bool value) |
void | enable () |
void | disable () |
void | setShadowProducer (bool value) |
void | setShadowMap (ShadowMapRPtr value, uint32_t index=0u) |
void | setGlobalIlluminationType (GlobalIlluminationType value) |
void | setShadowType (ShadowType value) |
void | setVolumetricSteps (uint32_t value) |
void | setVolumetricScatteringFactor (float value) |
void | setRawMinOffset (float value) |
void | setRawMaxSlopeOffset (float value) |
void | setPcfMinOffset (float value) |
void | setPcfMaxSlopeOffset (float value) |
void | setVsmMaxVariance (float value) |
void | setVsmVarianceBias (float value) |
void | setBufferIndex (uint32_t value) |
Fonctions membres publiques hérités de castor3d::MovableObject | |
C3D_API | MovableObject (castor::String const &name, Scene &scene, MovableType type, SceneNode &node) |
Constructeur. Plus de détails... | |
C3D_API | MovableObject (castor::String const &name, Scene &scene, MovableType type) |
Constructeur. Plus de détails... | |
virtual C3D_API | ~MovableObject () |
Destructeur. Plus de détails... | |
C3D_API void | detach () |
Détache l'objet de son parent. Plus de détails... | |
virtual C3D_API void | attachTo (SceneNode &node) |
Attache l'object à un noeud. Plus de détails... | |
C3D_API void | markDirty () |
Ajout l'objet à la liste des objets à mettre à jour de la scène. Plus de détails... | |
C3D_API EngineRPtr | getEngine () const |
SceneNode * | getParent () const |
MovableType | getType () const |
Attributs publics | |
OnLightChanged | onGPUChanged |
Attributs protégés | |
bool | m_enabled { false } |
bool | m_shadowCaster { false } |
std::atomic_bool | m_currentShadowCaster { false } |
bool | m_dirty { true } |
ShadowConfig | m_shadows |
LightCategorySPtr | m_category |
ShadowMapRPtr | m_shadowMap { nullptr } |
uint32_t | m_shadowMapIndex { 0u } |
std::atomic< GlobalIlluminationType > | m_currentGlobalIllumination { GlobalIlluminationType::eNone } |
uint32_t | m_bufferIndex { 0u } |
Attributs protégés hérités de castor3d::MovableObject | |
MovableType | m_type |
SceneNode * | m_sceneNode |
OnSceneNodeChangedConnection | m_notifyIndex |
C3D_API castor3d::Light::Light | ( | castor::String const & | name, |
Scene & | scene, | ||
SceneNode & | node, | ||
LightFactory & | factory, | ||
LightType | lightType | ||
) |
Constructeur.
[in] | name | Le nom de la lumière. |
[in] | scene | La scène parente. |
[in] | node | Le scene node parent. |
[in] | factory | La fabrique de LightCategory. |
[in] | lightType | Le type de lumière. |
|
inline |
|
inline |
C3D_API void castor3d::Light::fillBuffer | ( | uint32_t | index, |
LightBuffer::LightData & | data | ||
) |
Enregistre les données de la source lumineuse dans le tampon donné.
[in] | index | L'index de la source lumineuse dans le buffer. |
[out] | data | Reçoit les informations. |
|
inline |
Références m_category.
|
inline |
Références m_bufferIndex.
|
inline |
Références m_category.
|
inline |
Références m_category.
|
inline |
Références m_category.
C3D_API DirectionalLightSPtr castor3d::Light::getDirectionalLight | ( | ) | const |
name Accesseurs.
|
inline |
Références castor3d::ShadowConfig::globalIllumination, et m_shadows.
|
inline |
Références m_category.
|
inline |
Références m_currentGlobalIllumination.
Référencé par needsRsmShadowMaps().
|
inline |
Références m_category.
|
inline |
Références m_category.
|
inline |
Références castor3d::ShadowConfig::lpvConfig, et m_shadows.
|
inline |
Références castor3d::ShadowConfig::lpvConfig, et m_shadows.
C3D_API PointLightSPtr castor3d::Light::getPointLight | ( | ) | const |
|
inline |
Références m_shadows, et castor3d::ShadowConfig::rsmConfig.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::rsmConfig.
|
inline |
Références m_shadows.
|
inline |
Références m_shadowMap.
|
inline |
Références m_shadowMapIndex.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::pcfOffsets.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::rawOffsets.
|
inline |
Références castor3d::ShadowConfig::filterType, et m_shadows.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::variance.
|
inline |
Références m_category.
C3D_API SpotLightSPtr castor3d::Light::getSpotLight | ( | ) | const |
|
inline |
Références m_shadows, et castor3d::ShadowConfig::volumetricScattering.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::volumetricSteps.
|
inline |
Références m_enabled.
|
inline |
Références m_shadowCaster.
|
inline |
Références m_currentShadowCaster.
|
inline |
Références castor3d::eNone, castor3d::eVoxelConeTracing, et getGlobalIlluminationType().
|
inline |
Références m_bufferIndex.
|
inline |
Références m_category.
|
inline |
Références m_category.
|
inline |
name Mutateurs.
Références m_category.
|
inline |
Références m_category.
|
inline |
Références m_category.
|
inline |
|
inline |
Références castor3d::ShadowConfig::globalIllumination, m_shadows, et castor3d::MovableObject::markDirty().
|
inline |
Références m_category.
|
inline |
Références m_category.
|
inline |
Références m_category.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::pcfOffsets.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::pcfOffsets.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::rawOffsets.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::rawOffsets.
|
inline |
Références m_shadowMap, m_shadowMapIndex, et onGPUChanged.
|
inline |
Références m_shadowCaster, et castor3d::MovableObject::markDirty().
|
inline |
Références castor3d::ShadowConfig::filterType, et m_shadows.
|
inline |
Références m_category.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::volumetricScattering.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::volumetricSteps.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::variance.
|
inline |
Références m_shadows, et castor3d::ShadowConfig::variance.
C3D_API void castor3d::Light::update | ( | CpuUpdater & | updater | ) |
Mise à jour CPU.
[in,out] | updater | Les données d'update. |
|
protected |
Référencé par getBufferIndex(), et setBufferIndex().
|
protected |
|
protected |
Référencé par getGlobalIlluminationType().
|
protected |
Référencé par isShadowProducer().
|
protected |
|
protected |
Référencé par isEnabled(), et setEnabled().
|
protected |
Référencé par isExpectedShadowProducer(), et setShadowProducer().
|
protected |
Référencé par getShadowMap(), et setShadowMap().
|
protected |
Référencé par getShadowMapIndex(), et setShadowMap().
|
protected |
Référencé par getExpectedGlobalIlluminationType(), getLpvConfig(), getRsmConfig(), getShadowConfig(), getShadowPcfOffsets(), getShadowRawOffsets(), getShadowType(), getShadowVariance(), getVolumetricScatteringFactor(), getVolumetricSteps(), setGlobalIlluminationType(), setPcfMaxSlopeOffset(), setPcfMinOffset(), setRawMaxSlopeOffset(), setRawMinOffset(), setShadowType(), setVolumetricScatteringFactor(), setVolumetricSteps(), setVsmMaxVariance(), et setVsmVarianceBias().
OnLightChanged castor3d::Light::onGPUChanged |
Référencé par setShadowMap().