![]() |
Castor3D 0.12.0
Multiplatform 3D engine
|
#include <Scene.hpp>
Public Member Functions | |
C3D_API | Scene (castor::String const &name, Engine &engine) |
Constructor. More... | |
C3D_API | ~Scene () |
Destructor. More... | |
C3D_API void | initialise () |
Initialises the scene. More... | |
C3D_API void | cleanup () |
Clears the maps, leaves the root nodes. More... | |
C3D_API void | update (CpuUpdater &updater) |
Updates the scene before render. More... | |
C3D_API void | update (GpuUpdater &updater) |
Updates the scene device dependant stuff. More... | |
C3D_API void | setBackground (SceneBackgroundSPtr value) |
Sets the background for the scene. More... | |
C3D_API void | merge (Scene &scene) |
Merges the content of the given scene to this scene. More... | |
C3D_API uint32_t | getVertexCount () const |
Retrieves the vertices count. More... | |
C3D_API uint32_t | getFaceCount () const |
Retrieves the faces count. More... | |
C3D_API SceneFlags | getFlags () const |
C3D_API bool | hasShadows () const |
C3D_API bool | hasShadows (LightType lightType) const |
C3D_API void | addEnvironmentMap (SceneNode &node) |
Creates a reflection map for given node. More... | |
C3D_API void | removeEnvironmentMap (SceneNode &node) |
Creates a reflection map for given node. More... | |
C3D_API bool | hasEnvironmentMap (SceneNode &node) const |
C3D_API EnvironmentMap & | getEnvironmentMap () const |
C3D_API uint32_t | getEnvironmentMapIndex (SceneNode const &node) const |
C3D_API AnimatedObjectSPtr | addAnimatedTexture (TextureSourceInfo const &sourceInfo, TextureConfiguration const &config, Pass &pass) |
C3D_API void | registerLight (Light &light) |
C3D_API void | unregisterLight (Light &light) |
Getters. | |
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 |
bool | hasChanged () const |
castor::RgbColour const & | getAmbientLight () const |
Fog const & | getFog () const |
Fog & | getFog () |
FrameListener const & | getListener () const |
FrameListener & | getListener () |
bool | isInitialised () const |
bool | needsSubsurfaceScattering () const |
bool | hasOpaqueObjects () const |
bool | hasTransparentObjects () const |
uint32_t | getDirectionalShadowCascades () const |
float | getLpvIndirectAttenuation () const |
VoxelSceneData const & | getVoxelConeTracingConfig () const |
VoxelSceneData & | getVoxelConeTracingConfig () |
SceneRenderNodes & | getRenderNodes () const |
LightFactory & | getLightsFactory () 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 | setChanged () |
void | setAmbientLight (castor::RgbColour const &value) |
Public Attributes | |
OnSceneChanged | onChanged |
OnSceneUpdate | onUpdate |
OnBackgroundChanged | onSetBackground |
Static Public Attributes | |
static castor::String | CameraRootNode |
static castor::String | ObjectRootNode |
static castor::String | RootNode |
Constructor.
[in] | name | The scene name |
[in] | engine | The core engine |
C3D_API castor3d::Scene::~Scene | ( | ) |
Destructor.
C3D_API AnimatedObjectSPtr castor3d::Scene::addAnimatedTexture | ( | TextureSourceInfo const & | sourceInfo, |
TextureConfiguration const & | config, | ||
Pass & | pass | ||
) |
Creates a reflection map for given node.
[in] | node | The scene node from which the reflection map is generated. |
C3D_API void castor3d::Scene::cleanup | ( | ) |
Clears the maps, leaves the root nodes.
|
inline |
|
inline |
|
inline |
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 |
|
inline |
|
inline |
|
inline |
C3D_API EnvironmentMap & castor3d::Scene::getEnvironmentMap | ( | ) | const |
[in] | node | The scene node. |
[in] | node | The scene node. |
C3D_API uint32_t castor3d::Scene::getFaceCount | ( | ) | const |
Retrieves the faces count.
C3D_API SceneFlags castor3d::Scene::getFlags | ( | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
C3D_API uint32_t castor3d::Scene::getLpvGridSize | ( | ) | const |
|
inline |
C3D_API ashes::Buffer< ModelBufferConfiguration > const & castor3d::Scene::getModelBuffer | ( | ) | const |
|
inline |
C3D_API castor::String castor3d::Scene::getPassesName | ( | ) | const |
C3D_API PassTypeID castor3d::Scene::getPassesType | ( | ) | const |
|
inline |
C3D_API crg::SemaphoreWaitArray castor3d::Scene::getRenderTargetsSemaphores | ( | ) | const |
|
inline |
C3D_API uint32_t castor3d::Scene::getVertexCount | ( | ) | const |
Retrieves the vertices count.
|
inline |
|
inline |
C3D_API bool castor3d::Scene::hasBindless | ( | ) | const |
|
inline |
[in] | node | The scene node. |
|
inline |
C3D_API bool castor3d::Scene::hasShadows | ( | ) | const |
|
inline |
C3D_API void castor3d::Scene::initialise | ( | ) |
Initialises the scene.
|
inline |
Merges the content of the given scene to this scene.
[in] | scene | The scene to merge into this one |
C3D_API bool castor3d::Scene::needsGlobalIllumination | ( | ) | const |
C3D_API bool castor3d::Scene::needsGlobalIllumination | ( | LightType | ltType, |
GlobalIlluminationType | giType | ||
) | const |
|
inline |
Creates a reflection map for given node.
[in] | node | The scene node from which the reflection map is generated. |
|
inline |
C3D_API void castor3d::Scene::setBackground | ( | SceneBackgroundSPtr | value | ) |
Sets the background for the scene.
[in] | value | The new value. |
|
inline |
|
inline |
References onChanged.
C3D_API void castor3d::Scene::setDirectionalShadowCascades | ( | uint32_t | value | ) |
name Mutators.
C3D_API void castor3d::Scene::setLpvIndirectAttenuation | ( | float | value | ) |
C3D_API void castor3d::Scene::setPassesType | ( | PassTypeID | value | ) |
C3D_API void castor3d::Scene::update | ( | CpuUpdater & | updater | ) |
Updates the scene before render.
C3D_API void castor3d::Scene::update | ( | GpuUpdater & | updater | ) |
Updates the scene device dependant stuff.
|
static |
The cameras root node name.
|
static |
The objects root node name.
|
mutable |
The signal raised when the scene has changed.
Referenced by setChanged().
|
mutable |
The signal raised when the scene background has changed.
|
mutable |
The signal raised when the scene is updating.
|
static |
The root node name.