![]() |
Castor3D 0.17.0
Multiplatform 3D engine
|
#include <Scene.hpp>


Public Member Functions | |
| C3D_API | Scene (castor::String const &name, Engine &engine) |
| Constructor. | |
| C3D_API | ~Scene () noexcept |
| Destructor. | |
| C3D_API void | initialise () |
| Initialises the scene. | |
| C3D_API void | updateBoundingBox () |
| Computes the scene AABB. | |
| C3D_API void | cleanup () |
| Clears the maps, leaves the root nodes. | |
| C3D_API void | update (CpuUpdater &updater) |
| Updates the scene before render. | |
| C3D_API void | upload (UploadData &uploader) |
| Uploads the scene objects data. | |
| C3D_API void | update (GpuUpdater &updater) |
| Updates the scene device dependant stuff. | |
| C3D_API void | setBackground (SceneBackgroundUPtr value) |
| Sets the background for the scene. | |
| C3D_API void | merge (Scene &scene) |
| Merges the content of the given scene to this scene. | |
| C3D_API uint32_t | getVertexCount () const |
| Retrieves the vertices count. | |
| C3D_API uint32_t | getFaceCount () const |
| Retrieves the faces count. | |
| 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. | |
| C3D_API void | removeEnvironmentMap (SceneNode &node) |
| Creates a reflection map for given node. | |
| 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) |
| Creates an animated texture and adds it to animated textures group. | |
| C3D_API void | markDirty (SceneNode &object) |
| Adds given node to dirty nodes list. | |
| C3D_API void | markDirty (BillboardBase &object) |
| Adds given BillboardBase to dirty BillboardBase list. | |
| C3D_API void | markDirty (MovableObject &object) |
| Adds given object to dirty object list. | |
Getters. | |
| 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 (GlobalIlluminationType giType) 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 |
| 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 |
| SceneUbo const & | getUbo () 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) |
Public Member Functions inherited from castor::OwnedBy< Engine > | |
| Engine * | getOwner () const noexcept |
| void | setOwner (Engine &owner) noexcept |
Public Member Functions inherited from castor::NamedBaseT< T > | |
| NamedBaseT (T name) noexcept | |
| Constructor. | |
| T const & | getName () const noexcept |
| Retrieves the name. | |
| void | rename (T name) noexcept |
Static Public Member Functions | |
| static C3D_API void | addParsers (castor::AttributeParsers &result) |
Public Attributes | |
| OnSceneUpdate | onUpdate |
| OnBackgroundChanged | onSetBackground |
Static Public Attributes | |
| static C3D_API castor::String | CameraRootNode |
| static C3D_API castor::String | ObjectRootNode |
| static C3D_API castor::String | RootNode |
Additional Inherited Members | |
Protected Member Functions inherited from castor::OwnedBy< Engine > | |
| OwnedBy (Engine &owner) noexcept | |
| Constructor. | |
Protected Attributes inherited from castor::NamedBaseT< T > | |
| T | m_name |
| C3D_API castor3d::Scene::Scene | ( | castor::String const & | name, |
| Engine & | engine ) |
Constructor.
| [in] | name | The scene name |
| [in] | engine | The core engine |
|
noexcept |
Destructor.
| C3D_API AnimatedObjectRPtr castor3d::Scene::addAnimatedTexture | ( | TextureSourceInfo const & | sourceInfo, |
| TextureConfiguration const & | config, | ||
| Pass & | pass ) |
Creates an animated texture and adds it to animated textures group.
| [in] | sourceInfo | The texture source info. |
| [in] | config | The texture configuration. |
| [in] | pass | The target material pass. |
Creates a reflection map for given node.
| [in] | node | The scene node from which the reflection map is generated. |
|
inline |
|
static |
| C3D_API void castor3d::Scene::cleanup | ( | ) |
Clears the maps, leaves the root nodes.
|
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 | The scene node. |
| C3D_API uint32_t castor3d::Scene::getFaceCount | ( | ) | const |
Retrieves the faces count.
| C3D_API SceneFlags castor3d::Scene::getFlags | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
| C3D_API castor::Vector< LightingModelID > castor3d::Scene::getLightingModelsID | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
References 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 |
|
inlinenoexcept |
| C3D_API uint32_t castor3d::Scene::getVertexCount | ( | ) | const |
Retrieves the vertices count.
|
inlinenoexcept |
|
inlinenoexcept |
| C3D_API bool castor3d::Scene::hasBindless | ( | ) | const |
| [in] | node | The scene node. |
| C3D_API bool castor3d::Scene::hasObjects | ( | LightingModelID | lightingModelId | ) | const |
|
inlinenoexcept |
| C3D_API bool castor3d::Scene::hasShadows | ( | ) | const |
|
inlinenoexcept |
| C3D_API void castor3d::Scene::initialise | ( | ) |
Initialises the scene.
|
inlinenoexcept |
| C3D_API void castor3d::Scene::markDirty | ( | BillboardBase & | object | ) |
Adds given BillboardBase to dirty BillboardBase list.
| [in] | object | The scene node. |
| C3D_API void castor3d::Scene::markDirty | ( | MovableObject & | object | ) |
Adds given object to dirty object list.
| [in] | object | The object. |
Adds given node to dirty nodes list.
| [in] | object | The scene node. |
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 | ( | GlobalIlluminationType | giType | ) | const |
| C3D_API bool castor3d::Scene::needsGlobalIllumination | ( | LightType | ltType, |
| GlobalIlluminationType | giType ) const |
|
inlinenoexcept |
Creates a reflection map for given node.
| [in] | node | The scene node from which the reflection map is generated. |
|
inlinenoexcept |
| C3D_API void castor3d::Scene::setBackground | ( | SceneBackgroundUPtr | value | ) |
Sets the background for the scene.
| [in] | value | The new value. |
|
inlinenoexcept |
| C3D_API void castor3d::Scene::setDefaultLightingModel | ( | LightingModelID | value | ) |
| C3D_API void castor3d::Scene::setDirectionalShadowCascades | ( | uint32_t | value | ) |
name Mutators.
| C3D_API void castor3d::Scene::setLpvIndirectAttenuation | ( | float | 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.
| C3D_API void castor3d::Scene::updateBoundingBox | ( | ) |
Computes the scene AABB.
| C3D_API void castor3d::Scene::upload | ( | UploadData & | uploader | ) |
Uploads the scene objects data.
|
static |
The cameras root node name.
|
static |
The objects root node name.
|
mutable |
The signal raised when the scene background has changed.
|
mutable |
The signal raised when the scene is updating.
|
static |
The root node name.