Castor3D  ..
Classes | Fonctions membres publiques | Attributs publics | Attributs publics statiques | Liste de tous les membres
Référence de la classe castor3d::Scene

Classe de gestion d'un scène. Plus de détails...

+ Graphe d'héritage de castor3d::Scene:
+ Graphe de collaboration de castor3d::Scene:

Classes

class  TextWriter
 

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 cleanup ()
 Vide les maps, laisse les noeuds pères. Plus de détails...
 
C3D_API void renderBackground (castor::Size const &size, Camera const &camera)
 Rend l'arrière plan de la scène (skybox ou image). Plus de détails...
 
C3D_API void update ()
 Met à jour la scène avant le rendu. Plus de détails...
 
C3D_API bool setBackground (castor::Path const &folder, castor::Path const &relative)
 Définit l'image de fond pour la scène. Plus de détails...
 
C3D_API bool setForeground (SkyboxUPtr &&skybox)
 Définit la skybox de la scène. Plus de détails...
 
C3D_API bool importExternal (castor::Path const &fileName, Importer &importer)
 Importe une scène à partir d'un fichier. Plus de détails...
 
C3D_API void merge (SceneSPtr 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 void createEnvironmentMap (SceneNode &node)
 
C3D_API bool hasEnvironmentMap (SceneNode const &node) const
 
C3D_API EnvironmentMapgetEnvironmentMap (SceneNode const &node)
 
C3D_API IblTextures const & getIbl (SceneNode const &node) const
 
C3D_API Skybox const & getSkybox () const
 
std::vector< std::reference_wrapper< EnvironmentMap > > & getEnvironmentMaps ()
 
std::vector< std::reference_wrapper< EnvironmentMap > > const & getEnvironmentMaps () const
 
void setBackgroundColour (castor::RgbColour const &value)
 Définit la couleur du fond. Plus de détails...
 
castor::RgbColour const & getBackgroundColour () const
 
SceneNodeSPtr getRootNode () const
 
SceneNodeSPtr getCameraRootNode () const
 
SceneNodeSPtr getObjectRootNode () const
 
TextureLayoutSPtr getBackgroundImage () const
 
bool hasChanged () const
 
void setChanged ()
 Définit le statut de changement de la scène to true. Plus de détails...
 
castor::RgbColour const & getAmbientLight () const
 
void setAmbientLight (castor::RgbColour const &value)
 Définit la couleur de la lumière ambiante. Plus de détails...
 
bool hasSkybox () const
 
Fog const & getFog () const
 
FoggetFog ()
 
Shadow const & getShadow () const
 
ShadowgetShadow ()
 
MaterialType getMaterialsType () const
 
void setMaterialsType (MaterialType value)
 Définit le type des matériaux. Plus de détails...
 
FrameListener const & getListener () const
 
FrameListenergetListener ()
 
bool isInitialised () const
 
void setExposure (float value)
 Définit la valeur de l'exposition. Plus de détails...
 
void setGamma (float value)
 Définit la valeur de la correction gamma. Plus de détails...
 
HdrConfig const & getHdrConfig () const
 
bool needsSubsurfaceScattering () const
 
bool hasOpaqueObjects () const
 
bool hasTransparentObjects () const
 

Attributs publics

OnSceneChanged onChanged
 
OnSceneUpdate onUpdate
 

Attributs publics statiques

static castor::String CameraRootNode
 
static castor::String ObjectRootNode
 
static castor::String RootNode
 

Description détaillée

Classe de gestion d'un scène.

Auteur
Sylvain DOREMUS
Version
0.1
Date
09/02/2010
Remarques
Une scène est une collection de lumières, noeuds et géométries.
Elle a au moins une caméra permettant son rendu

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

◆ cleanup()

C3D_API void castor3d::Scene::cleanup ( )

Vide les maps, laisse les noeuds pères.

◆ createEnvironmentMap()

C3D_API void castor3d::Scene::createEnvironmentMap ( SceneNode node)
Renvoie
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.

◆ getAmbientLight()

castor::RgbColour const& castor3d::Scene::getAmbientLight ( ) const
inline
Renvoie
La couleur de la lumière ambiante

◆ getBackgroundColour()

castor::RgbColour const& castor3d::Scene::getBackgroundColour ( ) const
inline
Renvoie
La couleur du fond

◆ getBackgroundImage()

TextureLayoutSPtr castor3d::Scene::getBackgroundImage ( ) const
inline
Renvoie
L'image de fond de la scène.

◆ getCameraRootNode()

SceneNodeSPtr castor3d::Scene::getCameraRootNode ( ) const
inline
Renvoie
Le node racine des caméras.

◆ getEnvironmentMap()

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

Référencé par castor3d::doBindPass().

+ Voici le graphe des appelants de cette fonction :

◆ getEnvironmentMaps() [1/2]

std::vector< std::reference_wrapper< EnvironmentMap > >& castor3d::Scene::getEnvironmentMaps ( )
inline
Renvoie
La liste des reflection maps.

◆ getEnvironmentMaps() [2/2]

std::vector< std::reference_wrapper< EnvironmentMap > > const& castor3d::Scene::getEnvironmentMaps ( ) const
inline
Renvoie
La liste des reflection maps.

◆ 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 const& castor3d::Scene::getFog ( ) const
inline
Renvoie
Les paramètres du brouillard.

◆ getFog() [2/2]

Fog& castor3d::Scene::getFog ( )
inline
Renvoie
Les paramètres du brouillard.

◆ getHdrConfig()

HdrConfig const& castor3d::Scene::getHdrConfig ( ) const
inline
Renvoie
La configuration HDR.

◆ getIbl()

C3D_API IblTextures const& castor3d::Scene::getIbl ( SceneNode const &  node) const
Renvoie
Les textures d'IBL pour le noeud donné, celles de la skybox si aucune EnvironmentMap n'existe pour ce noeud.
Paramètres
[in]nodeLe noeud de scène.

Référencé par castor3d::doFillShaderPbrMaps().

+ Voici le graphe des appelants de cette fonction :

◆ getListener() [1/2]

FrameListener const& castor3d::Scene::getListener ( ) const
inline
Renvoie
Le frame listener de la scène.

◆ getListener() [2/2]

FrameListener& castor3d::Scene::getListener ( )
inline
Renvoie
Le frame listener de la scène.

◆ getMaterialsType()

MaterialType castor3d::Scene::getMaterialsType ( ) const
inline
Renvoie
Le type des matériaux.

◆ getObjectRootNode()

SceneNodeSPtr castor3d::Scene::getObjectRootNode ( ) const
inline
Renvoie
Le node racine des objets.

◆ getRootNode()

SceneNodeSPtr castor3d::Scene::getRootNode ( ) const
inline
Renvoie
Le node racine

◆ getShadow() [1/2]

Shadow const& castor3d::Scene::getShadow ( ) const
inline
Renvoie
Les paramètres des ombres.

◆ getShadow() [2/2]

Shadow& castor3d::Scene::getShadow ( )
inline
Renvoie
Les paramètres des ombres.

◆ getSkybox()

C3D_API Skybox const& castor3d::Scene::getSkybox ( ) const
Renvoie
La skybox.

Référencé par castor3d::doFillShaderPbrMaps().

+ Voici le graphe des appelants de cette fonction :

◆ getVertexCount()

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

Récupère le nombre de sommets.

Renvoie
La valeur

◆ hasChanged()

bool castor3d::Scene::hasChanged ( ) const
inline
Renvoie
Le statut de changement de la scène.

◆ hasEnvironmentMap()

C3D_API bool castor3d::Scene::hasEnvironmentMap ( SceneNode const &  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
Renvoie
Dit si la scène a des objets opaques.

◆ hasShadows()

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

◆ hasSkybox()

bool castor3d::Scene::hasSkybox ( ) const
inline
Renvoie
true si la skybox est définie.

◆ hasTransparentObjects()

bool castor3d::Scene::hasTransparentObjects ( ) const
inline
Renvoie
Dit si la scène a des objets opaques.

◆ importExternal()

C3D_API bool castor3d::Scene::importExternal ( castor::Path const &  fileName,
Importer importer 
)

Importe une scène à partir d'un fichier.

Paramètres
[in]fileNameL'adresse du fichier
[in]importerL'importeur chargé de la récupération des données
Renvoie
false si un problème quelconque a été rencontré

◆ initialise()

C3D_API void castor3d::Scene::initialise ( )

Initialise la scène.

◆ isInitialised()

bool castor3d::Scene::isInitialised ( ) const
inline
Renvoie
true si la scène est initialisée.

◆ merge()

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

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

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

◆ needsSubsurfaceScattering()

bool castor3d::Scene::needsSubsurfaceScattering ( ) const
inline
Renvoie
Dit si la scène a besoin d'une passe de subsurface scattering.

◆ renderBackground()

C3D_API void castor3d::Scene::renderBackground ( castor::Size const &  size,
Camera const &  camera 
)

Rend l'arrière plan de la scène (skybox ou image).

Paramètres
[in]sizeLes dimensions de la cible.
[in]cameraLa caméra courante.

◆ setAmbientLight()

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

Définit la couleur de la lumière ambiante.

Paramètres
[in]valueLa nouvelle valeur.

◆ setBackground()

C3D_API bool castor3d::Scene::setBackground ( castor::Path const &  folder,
castor::Path const &  relative 
)

Définit l'image de fond pour la scène.

Paramètres
[in]folderLe dossier contenant l'image.
[in]relativeLe chemin d'accès à l'image, relatif à folder.

◆ setBackgroundColour()

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

Définit la couleur du fond.

Paramètres
[in]valueLa nouvelle couleur

◆ setChanged()

void castor3d::Scene::setChanged ( )
inline

Définit le statut de changement de la scène to true.

Références onChanged.

◆ setExposure()

void castor3d::Scene::setExposure ( float  value)
inline

Définit la valeur de l'exposition.

Paramètres
[in]valueLa nouvelle valeur.

◆ setForeground()

C3D_API bool castor3d::Scene::setForeground ( SkyboxUPtr &&  skybox)

Définit la skybox de la scène.

Paramètres
[in]skyboxLa skybox.

◆ setGamma()

void castor3d::Scene::setGamma ( float  value)
inline

Définit la valeur de la correction gamma.

Paramètres
[in]valueLa nouvelle valeur.

◆ setMaterialsType()

void castor3d::Scene::setMaterialsType ( MaterialType  value)
inline

Définit le type des matériaux.

Paramètres
[in]valueLa nouvelle valeur.

◆ update()

C3D_API void castor3d::Scene::update ( )

Met à jour la scène avant le rendu.

Documentation des données membres

◆ CameraRootNode

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

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

◆ ObjectRootNode

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

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

◆ onChanged

OnSceneChanged castor3d::Scene::onChanged
mutable

Le signal levé lorsque la scène a changé.

Référencé par setChanged().

◆ onUpdate

OnSceneUpdate castor3d::Scene::onUpdate
mutable

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

◆ RootNode

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 :