Castor3D 0.16.0
Multiplatform 3D engine
|
#include <Scene.hpp>
Fonctions membres publiques | |
C3D_API | Scene (castor::String const &name, Engine &engine) |
Constructeur. | |
C3D_API | ~Scene () noexcept |
Destructeur. | |
C3D_API void | initialise () |
Initialise la scène. | |
C3D_API void | updateBoundingBox () |
Calcule l'AABB de la scène. | |
C3D_API void | cleanup () |
Vide les maps, laisse les noeuds pères. | |
C3D_API void | update (CpuUpdater &updater) |
Met à jour la scène avant le rendu. | |
C3D_API void | upload (UploadData &uploader) |
Upload les données des objets de la scène. | |
C3D_API void | update (GpuUpdater &updater) |
Met à jour les objets de scène dépendant du device. | |
C3D_API void | setBackground (SceneBackgroundUPtr value) |
Définit le fond de la scène. | |
C3D_API void | merge (Scene &scene) |
Intègre à cette scène le contenu de celle donnée. | |
C3D_API uint32_t | getVertexCount () const |
Récupère le nombre de sommets. | |
C3D_API uint32_t | getFaceCount () const |
Récupère le nombre de faces. | |
C3D_API SceneFlags | getFlags () const |
C3D_API bool | hasShadows () const |
C3D_API bool | hasShadows (LightType lightType) const |
C3D_API void | addEnvironmentMap (SceneNode &node) |
Crée une reflection map pour le noeud donné. | |
C3D_API void | removeEnvironmentMap (SceneNode &node) |
Crée une reflection map pour le noeud donné. | |
C3D_API bool | hasEnvironmentMap (SceneNode &node) const |
C3D_API EnvironmentMap & | getEnvironmentMap () const |
C3D_API uint32_t | getEnvironmentMapIndex (SceneNode const &node) const |
C3D_API castor::String const & | getBackgroundModel () const |
C3D_API castor::Vector< LightingModelID > | getLightingModelsID () const |
C3D_API AnimatedObjectRPtr | addAnimatedTexture (TextureSourceInfo const &sourceInfo, TextureConfiguration const &config, Pass &pass) |
Crée une texture animée et l'ajoute au group e de textures animées. | |
C3D_API void | markDirty (SceneNode &object) |
Ajoute le noeud donné à la liste des noeuds à mettre à jour. | |
C3D_API void | markDirty (BillboardBase &object) |
Ajoute le BillboardBase donné à la liste des BillboardBase à mettre à jour. | |
C3D_API void | markDirty (MovableObject &object) |
Ajoute l'objet donné à la liste des objets à mettre à jour. | |
Accesseurs. | |
C3D_API BackgroundModelID | getBackgroundModelId () const |
C3D_API LightingModelID | getDefaultLightingModel () const |
C3D_API castor::String | getDefaultLightingModelName () const |
C3D_API bool | needsGlobalIllumination () const |
C3D_API bool | needsGlobalIllumination (LightType ltType, GlobalIlluminationType giType) const |
C3D_API crg::SemaphoreWaitArray | getRenderTargetsSemaphores () const |
C3D_API uint32_t | getLpvGridSize () const |
C3D_API bool | hasBindless () const |
C3D_API ashes::DescriptorSetLayout * | getBindlessTexDescriptorLayout () const |
C3D_API ashes::DescriptorPool * | getBindlessTexDescriptorPool () const |
C3D_API ashes::DescriptorSet * | getBindlessTexDescriptorSet () const |
C3D_API ashes::Buffer< ModelBufferConfiguration > const & | getModelBuffer () const |
C3D_API ashes::Buffer< BillboardUboConfiguration > const & | getBillboardsBuffer () const |
C3D_API bool | hasObjects (LightingModelID lightingModelId) const |
C3D_API bool | hasIBLSupport (LightingModelID lightingModelId) const |
castor::BoundingBox const & | getBoundingBox () const noexcept |
SceneBackgroundRPtr | getBackground () const noexcept |
castor::RgbColour const & | getBackgroundColour () const noexcept |
SceneNodeRPtr | getRootNode () const noexcept |
SceneNodeRPtr | getCameraRootNode () const noexcept |
SceneNodeRPtr | getObjectRootNode () const noexcept |
castor::RgbColour const & | getAmbientLight () const noexcept |
Fog const & | getFog () const noexcept |
Fog & | getFog () noexcept |
FrameListener & | getListener () const noexcept |
bool | isInitialised () const noexcept |
bool | needsSubsurfaceScattering () const noexcept |
bool | hasOpaqueObjects () const noexcept |
bool | hasTransparentObjects () const noexcept |
uint32_t | getDirectionalShadowCascades () const noexcept |
float | getLpvIndirectAttenuation () const noexcept |
VctConfig const & | getVoxelConeTracingConfig () const noexcept |
VctConfig & | getVoxelConeTracingConfig () noexcept |
SceneRenderNodes & | getRenderNodes () const noexcept |
LightFactory & | getLightsFactory () const noexcept |
crg::ResourcesCache & | getResources () noexcept |
DebugConfig & | getDebugConfig () const noexcept |
C3D_API void | setDirectionalShadowCascades (uint32_t value) |
C3D_API void | setLpvIndirectAttenuation (float value) |
C3D_API void | setDefaultLightingModel (LightingModelID value) |
void | setBackgroundColour (castor::RgbColour const &value) noexcept |
void | setAmbientLight (castor::RgbColour const &value) noexcept |
GeometryCache::ElementObsT | addGeometry (GeometryCache::ElementPtrT element) |
Fonctions membres publiques hérités de castor::OwnedBy< Engine > | |
Engine * | getOwner () const |
L'objet propriétaire. | |
Fonctions membres publiques hérités de castor::NamedBaseT< T > | |
NamedBaseT (T name) noexcept | |
Constructeur. | |
T const & | getName () const noexcept |
Récupère le nom. | |
void | rename (T name) noexcept |
Attributs publics | |
OnSceneUpdate | onUpdate |
OnBackgroundChanged | onSetBackground |
Attributs publics statiques | |
static C3D_API castor::String | CameraRootNode |
static C3D_API castor::String | ObjectRootNode |
static C3D_API castor::String | RootNode |
Membres hérités additionnels | |
Fonctions membres protégées hérités de castor::OwnedBy< Engine > | |
OwnedBy (Engine &owner) | |
Constructeur. | |
Attributs protégés hérités de castor::NamedBaseT< T > | |
T | m_name |
C3D_API castor3d::Scene::Scene | ( | castor::String const & | name, |
Engine & | engine ) |
Constructeur.
[in] | name | Le nom de la scène |
[in] | engine | Le moteur |
|
noexcept |
Destructeur.
C3D_API AnimatedObjectRPtr castor3d::Scene::addAnimatedTexture | ( | TextureSourceInfo const & | sourceInfo, |
TextureConfiguration const & | config, | ||
Pass & | pass ) |
Crée une texture animée et l'ajoute au group e de textures animées.
[in] | sourceInfo | Les informations de source de la texture. |
[in] | config | La configuration de la texture. |
[in] | pass | La passe de matériau cible. |
Crée une reflection map pour le noeud donné.
[in] | node | Le noeud de scène depuis lequel la reflection map est générée. |
|
inline |
C3D_API void castor3d::Scene::cleanup | ( | ) |
Vide les maps, laisse les noeuds pères.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API castor::String const & castor3d::Scene::getBackgroundModel | ( | ) | const |
C3D_API BackgroundModelID castor3d::Scene::getBackgroundModelId | ( | ) | const |
C3D_API ashes::Buffer< BillboardUboConfiguration > const & castor3d::Scene::getBillboardsBuffer | ( | ) | const |
C3D_API ashes::DescriptorSetLayout * castor3d::Scene::getBindlessTexDescriptorLayout | ( | ) | const |
C3D_API ashes::DescriptorPool * castor3d::Scene::getBindlessTexDescriptorPool | ( | ) | const |
C3D_API ashes::DescriptorSet * castor3d::Scene::getBindlessTexDescriptorSet | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API LightingModelID castor3d::Scene::getDefaultLightingModel | ( | ) | const |
C3D_API castor::String castor3d::Scene::getDefaultLightingModelName | ( | ) | const |
|
inlinenoexcept |
C3D_API EnvironmentMap & castor3d::Scene::getEnvironmentMap | ( | ) | const |
[in] | node | Le noeud de scène. |
C3D_API uint32_t castor3d::Scene::getFaceCount | ( | ) | const |
Récupère le nombre de faces.
C3D_API SceneFlags castor3d::Scene::getFlags | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API castor::Vector< LightingModelID > castor3d::Scene::getLightingModelsID | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
Références CU_Require.
C3D_API uint32_t castor3d::Scene::getLpvGridSize | ( | ) | const |
|
inlinenoexcept |
C3D_API ashes::Buffer< ModelBufferConfiguration > const & castor3d::Scene::getModelBuffer | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API crg::SemaphoreWaitArray castor3d::Scene::getRenderTargetsSemaphores | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API uint32_t castor3d::Scene::getVertexCount | ( | ) | const |
Récupère le nombre de sommets.
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API bool castor3d::Scene::hasBindless | ( | ) | const |
[in] | node | Le noeud de scène. |
C3D_API bool castor3d::Scene::hasIBLSupport | ( | LightingModelID | lightingModelId | ) | const |
C3D_API bool castor3d::Scene::hasObjects | ( | LightingModelID | lightingModelId | ) | const |
|
inlinenoexcept |
C3D_API bool castor3d::Scene::hasShadows | ( | ) | const |
|
inlinenoexcept |
C3D_API void castor3d::Scene::initialise | ( | ) |
Initialise la scène.
|
inlinenoexcept |
C3D_API void castor3d::Scene::markDirty | ( | BillboardBase & | object | ) |
Ajoute le BillboardBase donné à la liste des BillboardBase à mettre à jour.
[in] | object | Le noeud de scène. |
C3D_API void castor3d::Scene::markDirty | ( | MovableObject & | object | ) |
Ajoute l'objet donné à la liste des objets à mettre à jour.
[in] | object | L'objet. |
Ajoute le noeud donné à la liste des noeuds à mettre à jour.
[in] | object | Le noeud de scène. |
Intègre à cette scène le contenu de celle donnée.
[in] | scene | La scène à intégrer |
C3D_API bool castor3d::Scene::needsGlobalIllumination | ( | ) | const |
C3D_API bool castor3d::Scene::needsGlobalIllumination | ( | LightType | ltType, |
GlobalIlluminationType | giType ) const |
|
inlinenoexcept |
Crée une reflection map pour le noeud donné.
[in] | node | Le noeud de scène depuis lequel la reflection map est générée. |
|
inlinenoexcept |
C3D_API void castor3d::Scene::setBackground | ( | SceneBackgroundUPtr | value | ) |
Définit le fond de la scène.
[in] | value | La nouvelle valeur. |
|
inlinenoexcept |
C3D_API void castor3d::Scene::setDefaultLightingModel | ( | LightingModelID | value | ) |
C3D_API void castor3d::Scene::setDirectionalShadowCascades | ( | uint32_t | value | ) |
name Mutateurs.
C3D_API void castor3d::Scene::setLpvIndirectAttenuation | ( | float | value | ) |
C3D_API void castor3d::Scene::update | ( | CpuUpdater & | updater | ) |
Met à jour la scène avant le rendu.
C3D_API void castor3d::Scene::update | ( | GpuUpdater & | updater | ) |
Met à jour les objets de scène dépendant du device.
C3D_API void castor3d::Scene::updateBoundingBox | ( | ) |
Calcule l'AABB de la scène.
C3D_API void castor3d::Scene::upload | ( | UploadData & | uploader | ) |
Upload les données des objets de la scène.
|
static |
Le nom du noeud de scène racine des caméras.
|
static |
Le nom du noeud de scène racine des objets.
|
mutable |
Le signal levé lorsque le fond a changé.
|
mutable |
Le signal levé lorsque la scène se met à jour.
|
static |
Le nom du noeud de scène racine.