Castor3D 0.16.0
Multiplatform 3D engine
|
#include <PointLight.hpp>
Types publics | |
using | ShadowData = PointShadowData |
Fonctions membres publiques | |
C3D_API void | update () override |
Met la source à jour. | |
C3D_API void | updateShadow (int32_t index) |
Met à jour les information d'ombre. | |
C3D_API void | fillShadowBuffer (AllShadowData &data) const override |
Met les données d'ombre dans le buffer donné. | |
C3D_API void | setAttenuation (castor::Point3f const &value) |
Définit les composantes d'atténuation. | |
C3D_API void | setRange (float value) |
Définit la valeur de ditance maximale. | |
Accesseurs. | |
float | getRange () const noexcept |
castor::Matrix4x4f const & | getViewMatrix (CubeMapFace face) const noexcept |
Fonctions membres publiques hérités de castor3d::LightCategory | |
virtual C3D_API | ~LightCategory () noexcept=default |
Destructeur. | |
C3D_API void | fillLightBuffer (castor::Point4f *data) const |
Met la lumière dans le buffer donné. | |
C3D_API void | accept (ConfigurationVisitorBase &vis) |
Fonction d'acceptation de ConfigurationVisitorBase. | |
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 float | getVsmMinVariance () const |
C3D_API float | getVsmLightBleedingReduction () const |
C3D_API castor::RangedValue< uint32_t > | getShadowPcfFilterSize () const |
C3D_API castor::RangedValue< uint32_t > | getShadowPcfSampleCount () const |
C3D_API ShadowConfig const & | getShadowConfig () const |
C3D_API LpvConfig const & | getLpvConfig () const |
LightType | getLightType () const |
uint32_t | getLightComponentCount () const |
uint32_t | getShadowComponentCount () 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 | setPcfFilterSize (uint32_t value) |
C3D_API void | setPcfSampleCount (uint32_t value) |
C3D_API void | setVsmMinVariance (float value) |
C3D_API void | setVsmLightBleedingReduction (float value) |
C3D_API void | setColour (castor::Point3f const &value) |
C3D_API void | setIntensity (castor::Point2f const &value) |
C3D_API void | setDiffuseIntensity (float value) |
C3D_API void | setSpecularIntensity (float value) |
Light & | getLight () |
castor::Point3f & | getColour () |
castor::Point2f & | getIntensity () |
Fonctions membres publiques statiques | |
static C3D_API LightCategoryUPtr | create (Light &light) |
Fonction de création utilisée par Factory. | |
static C3D_API castor::Point3fArray const & | generateVertices () |
Attributs publics statiques | |
static constexpr uint32_t | ShadowDataSize = uint32_t( ashes::getAlignedSize( sizeof( ShadowData ), LightMbrAlign ) ) |
static constexpr uint32_t | ShadowDataComponents = ShadowDataSize / LightMbrAlign |
static constexpr uint32_t | LightDataSize = uint32_t( ashes::getAlignedSize( sizeof( LightData ), LightMbrAlign ) ) |
static constexpr uint32_t | LightDataComponents = LightDataSize / LightMbrAlign |
Attributs publics statiques hérités de castor3d::LightCategory | |
static uint32_t constexpr | LightMbrAlign = 4u * sizeof( float ) |
Amis | |
class | Scene |
Membres hérités additionnels | |
Fonctions membres protégées hérités de castor3d::LightCategory | |
C3D_API | LightCategory (LightType lightType, Light &light, uint32_t lightComponentCount, uint32_t shadowComponentCount) |
Constructeur. | |
C3D_API void | doFillBaseShadowData (BaseShadowData &data) const |
Met les données d'ombre dans le buffer donné. | |
Attributs protégés hérités de castor3d::LightCategory | |
castor::BoundingBox | m_cubeBox |
float | m_farPlane { 1.0f } |
Fonction de création utilisée par Factory.
[in] | light | La Light parente. |
|
overridevirtual |
Met les données d'ombre dans le buffer donné.
[out] | data | Reçoit les données d'ombres de la source lumineuse. |
Implémente castor3d::LightCategory.
|
static |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API void castor3d::PointLight::setAttenuation | ( | castor::Point3f const & | value | ) |
Définit les composantes d'atténuation.
[in] | value | La nouvelle valeur. |
C3D_API void castor3d::PointLight::setRange | ( | float | value | ) |
Définit la valeur de ditance maximale.
[in] | value | La nouvelle valeur. |
|
overridevirtual |
Met la source à jour.
Implémente castor3d::LightCategory.
C3D_API void castor3d::PointLight::updateShadow | ( | int32_t | index | ) |
Met à jour les information d'ombre.
[in] | index | L'indice de la shadow map. |
|
friend |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |