Castor3D 0.14.0
Multiplatform 3D engine
Fonctions membres publiques | Attributs publics | Attributs publics statiques | Liste de tous les membres
Référence de la classe castor3d::Scene

#include <Scene.hpp>

Graphe d'héritage de castor3d::Scene:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::Scene:
Collaboration graph
[légende]

Fonctions membres publiques

C3D_API Scene (castor::String const &name, Engine &engine)
 Constructeur. Plus de détails...
 
C3D_API ~Scene ()
 Destructeur. Plus de détails...
 
C3D_API void initialise ()
 Initialise la scène. Plus de détails...
 
C3D_API void updateBoundingBox ()
 Calcule l'AABB de la scène. Plus de détails...
 
C3D_API void cleanup ()
 Vide les maps, laisse les noeuds pères. Plus de détails...
 
C3D_API void update (CpuUpdater &updater)
 Met à jour la scène avant le rendu. Plus de détails...
 
C3D_API void update (GpuUpdater &updater)
 Met à jour les objets de scène dépendant du device. Plus de détails...
 
C3D_API void setBackground (SceneBackgroundSPtr value)
 Définit le fond de la scène. Plus de détails...
 
C3D_API void merge (Scene &scene)
 Intègre à cette scène le contenu de celle donnée. Plus de détails...
 
C3D_API uint32_t getVertexCount () const
 Récupère le nombre de sommets. Plus de détails...
 
C3D_API uint32_t getFaceCount () const
 Récupère le nombre de faces. Plus de détails...
 
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é. Plus de détails...
 
C3D_API void removeEnvironmentMap (SceneNode &node)
 Crée une reflection map pour le noeud donné. Plus de détails...
 
C3D_API bool hasEnvironmentMap (SceneNode &node) const
 
C3D_API EnvironmentMapgetEnvironmentMap () const
 
C3D_API uint32_t getEnvironmentMapIndex (SceneNode const &node) const
 
C3D_API castor::String const & getBackgroundModel () const
 
C3D_API castor::String getLightingModel (LightType lightType) const
 
C3D_API castor::String getLightingModel () const
 
C3D_API AnimatedObjectSPtr 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. Plus de détails...
 
C3D_API void markDirty (SceneNode &object)
 Ajoute le noeud donné à la liste des noeuds à mettre à jour. Plus de détails...
 
C3D_API void markDirty (BillboardBase &object)
 Ajoute le BillboardBase donné à la liste des BillboardBase à mettre à jour. Plus de détails...
 
C3D_API void markDirty (MovableObject &object)
 Ajoute l'objet donné à la liste des objets à mettre à jour. Plus de détails...
 

Accesseurs.

C3D_API PassTypeID getPassesType () const
 
C3D_API castor::String getPassesName () 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
 
castor::BoundingBox const & getBoundingBox () const
 
SceneBackgroundSPtr getBackground () const
 
castor::RgbColour const & getBackgroundColour () const
 
SceneNodeSPtr getRootNode () const
 
SceneNodeSPtr getCameraRootNode () const
 
SceneNodeSPtr getObjectRootNode () const
 
castor::RgbColour const & getAmbientLight () const
 
Fog const & getFog () const
 
FoggetFog ()
 
FrameListener const & getListener () const
 
FrameListenergetListener ()
 
bool isInitialised () const
 
bool needsSubsurfaceScattering () const
 
bool hasOpaqueObjects () const
 
bool hasTransparentObjects () const
 
uint32_t getDirectionalShadowCascades () const
 
float getLpvIndirectAttenuation () const
 
VoxelSceneData const & getVoxelConeTracingConfig () const
 
VoxelSceneDatagetVoxelConeTracingConfig ()
 
SceneRenderNodesgetRenderNodes () const
 
LightFactorygetLightsFactory () const
 
C3D_API void setDirectionalShadowCascades (uint32_t value)
 
C3D_API void setLpvIndirectAttenuation (float value)
 
C3D_API void setPassesType (PassTypeID value)
 
void setBackgroundColour (castor::RgbColour const &value)
 
void setAmbientLight (castor::RgbColour const &value)
 
void addGeometry (GeometryCache::ElementPtrT element)
 

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
 

Documentation des constructeurs et destructeur

◆ Scene()

C3D_API castor3d::Scene::Scene ( castor::String const &  name,
Engine engine 
)

Constructeur.

Paramètres
[in]nameLe nom de la scène
[in]engineLe moteur

◆ ~Scene()

C3D_API castor3d::Scene::~Scene ( )

Destructeur.

Documentation des fonctions membres

◆ addAnimatedTexture()

C3D_API AnimatedObjectSPtr 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.

Paramètres
[in]sourceInfoLes informations de source de la texture.
[in]configLa configuration de la texture.
[in]passLa passe de matériau cible.
Renvoie
La texture animée.

◆ addEnvironmentMap()

C3D_API void castor3d::Scene::addEnvironmentMap ( SceneNode node)

Crée une reflection map pour le noeud donné.

Paramètres
[in]nodeLe noeud de scène depuis lequel la reflection map est générée.

◆ addGeometry()

void castor3d::Scene::addGeometry ( GeometryCache::ElementPtrT  element)
inline

◆ cleanup()

C3D_API void castor3d::Scene::cleanup ( )

Vide les maps, laisse les noeuds pères.

◆ getAmbientLight()

castor::RgbColour const & castor3d::Scene::getAmbientLight ( ) const
inline

◆ getBackground()

SceneBackgroundSPtr castor3d::Scene::getBackground ( ) const
inline

◆ getBackgroundColour()

castor::RgbColour const & castor3d::Scene::getBackgroundColour ( ) const
inline

◆ getBackgroundModel()

C3D_API castor::String const & castor3d::Scene::getBackgroundModel ( ) const
Renvoie
Le nom du modèle de fond.

◆ getBillboardsBuffer()

C3D_API ashes::Buffer< BillboardUboConfiguration > const & castor3d::Scene::getBillboardsBuffer ( ) const

◆ getBindlessTexDescriptorLayout()

C3D_API ashes::DescriptorSetLayout * castor3d::Scene::getBindlessTexDescriptorLayout ( ) const

◆ getBindlessTexDescriptorPool()

C3D_API ashes::DescriptorPool * castor3d::Scene::getBindlessTexDescriptorPool ( ) const

◆ getBindlessTexDescriptorSet()

C3D_API ashes::DescriptorSet * castor3d::Scene::getBindlessTexDescriptorSet ( ) const

◆ getBoundingBox()

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

◆ getCameraRootNode()

SceneNodeSPtr castor3d::Scene::getCameraRootNode ( ) const
inline

◆ getDirectionalShadowCascades()

uint32_t castor3d::Scene::getDirectionalShadowCascades ( ) const
inline

◆ getEnvironmentMap()

C3D_API EnvironmentMap & castor3d::Scene::getEnvironmentMap ( ) const
Renvoie
Récupère la reflection map pour le noeud donné.
Remarques
Appelez hasEnvironmentMap avant d'appeler cette fonction (celle-ci retournant une référence sur une EnvironmentMap existante)
Paramètres
[in]nodeLe noeud de scène.

◆ getEnvironmentMapIndex()

C3D_API uint32_t castor3d::Scene::getEnvironmentMapIndex ( SceneNode const &  node) const
Renvoie
Récupère la reflection map pour le noeud donné.
Remarques
Appelez hasEnvironmentMap avant d'appeler cette fonction (celle-ci retournant une référence sur une EnvironmentMap existante)
Paramètres
[in]nodeLe noeud de scène.

◆ getFaceCount()

C3D_API uint32_t castor3d::Scene::getFaceCount ( ) const

Récupère le nombre de faces.

Renvoie
La valeur

◆ getFlags()

C3D_API SceneFlags castor3d::Scene::getFlags ( ) const
Renvoie
Les indicateurs de la scène.

◆ getFog() [1/2]

Fog & castor3d::Scene::getFog ( )
inline

◆ getFog() [2/2]

Fog const & castor3d::Scene::getFog ( ) const
inline

◆ getLightingModel() [1/2]

C3D_API castor::String castor3d::Scene::getLightingModel ( ) const
Renvoie
Le nom du modèle d'éclairage.

◆ getLightingModel() [2/2]

C3D_API castor::String castor3d::Scene::getLightingModel ( LightType  lightType) const
Renvoie
Le nom du modèle d'éclairage.

◆ getLightsFactory()

LightFactory & castor3d::Scene::getLightsFactory ( ) const
inline

◆ getListener() [1/2]

FrameListener & castor3d::Scene::getListener ( )
inline

◆ getListener() [2/2]

FrameListener const & castor3d::Scene::getListener ( ) const
inline

◆ getLpvGridSize()

C3D_API uint32_t castor3d::Scene::getLpvGridSize ( ) const

◆ getLpvIndirectAttenuation()

float castor3d::Scene::getLpvIndirectAttenuation ( ) const
inline

◆ getModelBuffer()

C3D_API ashes::Buffer< ModelBufferConfiguration > const & castor3d::Scene::getModelBuffer ( ) const

◆ getObjectRootNode()

SceneNodeSPtr castor3d::Scene::getObjectRootNode ( ) const
inline

◆ getPassesName()

C3D_API castor::String castor3d::Scene::getPassesName ( ) const

◆ getPassesType()

C3D_API PassTypeID castor3d::Scene::getPassesType ( ) const

◆ getRenderNodes()

SceneRenderNodes & castor3d::Scene::getRenderNodes ( ) const
inline

◆ getRenderTargetsSemaphores()

C3D_API crg::SemaphoreWaitArray castor3d::Scene::getRenderTargetsSemaphores ( ) const

◆ getRootNode()

SceneNodeSPtr castor3d::Scene::getRootNode ( ) const
inline

◆ getVertexCount()

C3D_API uint32_t castor3d::Scene::getVertexCount ( ) const

Récupère le nombre de sommets.

Renvoie
La valeur

◆ getVoxelConeTracingConfig() [1/2]

VoxelSceneData & castor3d::Scene::getVoxelConeTracingConfig ( )
inline

◆ getVoxelConeTracingConfig() [2/2]

VoxelSceneData const & castor3d::Scene::getVoxelConeTracingConfig ( ) const
inline

◆ hasBindless()

C3D_API bool castor3d::Scene::hasBindless ( ) const

◆ hasEnvironmentMap()

C3D_API bool castor3d::Scene::hasEnvironmentMap ( SceneNode node) const
Renvoie
Dit s'il y a une reflection map pour le noeud donné.
Paramètres
[in]nodeLe noeud de scène.

◆ hasOpaqueObjects()

bool castor3d::Scene::hasOpaqueObjects ( ) const
inline

◆ hasShadows() [1/2]

C3D_API bool castor3d::Scene::hasShadows ( ) const
Renvoie
Dit si la scène a au moins une source lumineuse projetant des ombres.

◆ hasShadows() [2/2]

C3D_API bool castor3d::Scene::hasShadows ( LightType  lightType) const
Renvoie
Dit si la scène a au moins une source lumineuse du type donné projetant des ombres.

◆ hasTransparentObjects()

bool castor3d::Scene::hasTransparentObjects ( ) const
inline

◆ initialise()

C3D_API void castor3d::Scene::initialise ( )

Initialise la scène.

◆ isInitialised()

bool castor3d::Scene::isInitialised ( ) const
inline

◆ markDirty() [1/3]

C3D_API void castor3d::Scene::markDirty ( BillboardBase object)

Ajoute le BillboardBase donné à la liste des BillboardBase à mettre à jour.

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

◆ markDirty() [2/3]

C3D_API void castor3d::Scene::markDirty ( MovableObject object)

Ajoute l'objet donné à la liste des objets à mettre à jour.

Paramètres
[in]objectL'objet.

◆ markDirty() [3/3]

C3D_API void castor3d::Scene::markDirty ( SceneNode object)

Ajoute le noeud donné à la liste des noeuds à mettre à jour.

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

◆ merge()

C3D_API void castor3d::Scene::merge ( Scene scene)

Intègre à cette scène le contenu de celle donnée.

Paramètres
[in]sceneLa scène à intégrer

◆ needsGlobalIllumination() [1/2]

C3D_API bool castor3d::Scene::needsGlobalIllumination ( ) const

◆ needsGlobalIllumination() [2/2]

C3D_API bool castor3d::Scene::needsGlobalIllumination ( LightType  ltType,
GlobalIlluminationType  giType 
) const

◆ needsSubsurfaceScattering()

bool castor3d::Scene::needsSubsurfaceScattering ( ) const
inline

◆ removeEnvironmentMap()

C3D_API void castor3d::Scene::removeEnvironmentMap ( SceneNode node)

Crée une reflection map pour le noeud donné.

Paramètres
[in]nodeLe noeud de scène depuis lequel la reflection map est générée.

◆ setAmbientLight()

void castor3d::Scene::setAmbientLight ( castor::RgbColour const &  value)
inline

◆ setBackground()

C3D_API void castor3d::Scene::setBackground ( SceneBackgroundSPtr  value)

Définit le fond de la scène.

Paramètres
[in]valueLa nouvelle valeur.

◆ setBackgroundColour()

void castor3d::Scene::setBackgroundColour ( castor::RgbColour const &  value)
inline

◆ setDirectionalShadowCascades()

C3D_API void castor3d::Scene::setDirectionalShadowCascades ( uint32_t  value)

name Mutateurs.

◆ setLpvIndirectAttenuation()

C3D_API void castor3d::Scene::setLpvIndirectAttenuation ( float  value)

◆ setPassesType()

C3D_API void castor3d::Scene::setPassesType ( PassTypeID  value)

◆ update() [1/2]

C3D_API void castor3d::Scene::update ( CpuUpdater updater)

Met à jour la scène avant le rendu.

◆ update() [2/2]

C3D_API void castor3d::Scene::update ( GpuUpdater updater)

Met à jour les objets de scène dépendant du device.

◆ updateBoundingBox()

C3D_API void castor3d::Scene::updateBoundingBox ( )

Calcule l'AABB de la scène.

Documentation des données membres

◆ CameraRootNode

C3D_API castor::String castor3d::Scene::CameraRootNode
static

Le nom du noeud de scène racine des caméras.

◆ ObjectRootNode

C3D_API castor::String castor3d::Scene::ObjectRootNode
static

Le nom du noeud de scène racine des objets.

◆ onSetBackground

OnBackgroundChanged castor3d::Scene::onSetBackground
mutable

Le signal levé lorsque le fond a changé.

◆ onUpdate

OnSceneUpdate castor3d::Scene::onUpdate
mutable

Le signal levé lorsque la scène se met à jour.

◆ RootNode

C3D_API castor::String castor3d::Scene::RootNode
static

Le nom du noeud de scène racine.


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