Castor3D 0.12.0
Multiplatform 3D engine
Public Types | Public Member Functions | List of all members
castor3d::SceneRenderNodes Struct Reference

#include <SceneRenderNodes.hpp>

Inheritance diagram for castor3d::SceneRenderNodes:
Inheritance graph
[legend]
Collaboration diagram for castor3d::SceneRenderNodes:
Collaboration graph
[legend]

Public Types

template<typename NodeT >
using DescriptorNodesPtrT = std::unordered_map< size_t, castor::UniquePtr< NodeT > >
 
template<typename NodeT >
using DescriptorNodesPoolsT = std::unordered_map< size_t, DescriptorNodesPtrT< NodeT > >
 

Public Member Functions

C3D_API SceneRenderNodes (Scene const &scene)
 
C3D_API void clear ()
 
C3D_API SubmeshRenderNodecreateNode (Pass &pass, Submesh &data, Geometry &instance, AnimatedMesh *mesh, AnimatedSkeleton *skeleton)
 
C3D_API BillboardRenderNodecreateNode (Pass &pass, BillboardBase &instance)
 
C3D_API SubmeshRenderNode const * getSubmeshNode (uint32_t nodeId)
 
C3D_API BillboardRenderNode const * getBillboardNode (uint32_t nodeId)
 
C3D_API void update (CpuUpdater &updater)
 
C3D_API void update (GpuUpdater &updater)
 
bool hasNodes () const
 
ashes::Buffer< ModelBufferConfiguration > const & getModelBuffer () const
 
ashes::Buffer< BillboardUboConfiguration > const & getBillboardsBuffer () const
 
DescriptorNodesPoolsT< SubmeshRenderNode > const & getSubmeshNodes () const
 
DescriptorNodesPoolsT< BillboardRenderNode > const & getBillboardNodes () const
 

Member Typedef Documentation

◆ DescriptorNodesPoolsT

template<typename NodeT >
using castor3d::SceneRenderNodes::DescriptorNodesPoolsT = std::unordered_map< size_t, DescriptorNodesPtrT< NodeT > >

◆ DescriptorNodesPtrT

template<typename NodeT >
using castor3d::SceneRenderNodes::DescriptorNodesPtrT = std::unordered_map< size_t, castor::UniquePtr< NodeT > >

Constructor & Destructor Documentation

◆ SceneRenderNodes()

C3D_API castor3d::SceneRenderNodes::SceneRenderNodes ( Scene const &  scene)
explicit

Member Function Documentation

◆ clear()

C3D_API void castor3d::SceneRenderNodes::clear ( )

◆ createNode() [1/2]

C3D_API BillboardRenderNode & castor3d::SceneRenderNodes::createNode ( Pass pass,
BillboardBase instance 
)

◆ createNode() [2/2]

C3D_API SubmeshRenderNode & castor3d::SceneRenderNodes::createNode ( Pass pass,
Submesh data,
Geometry instance,
AnimatedMesh mesh,
AnimatedSkeleton skeleton 
)

◆ getBillboardNode()

C3D_API BillboardRenderNode const * castor3d::SceneRenderNodes::getBillboardNode ( uint32_t  nodeId)

◆ getBillboardNodes()

DescriptorNodesPoolsT< BillboardRenderNode > const & castor3d::SceneRenderNodes::getBillboardNodes ( ) const
inline

◆ getBillboardsBuffer()

ashes::Buffer< BillboardUboConfiguration > const & castor3d::SceneRenderNodes::getBillboardsBuffer ( ) const
inline

◆ getModelBuffer()

ashes::Buffer< ModelBufferConfiguration > const & castor3d::SceneRenderNodes::getModelBuffer ( ) const
inline

◆ getSubmeshNode()

C3D_API SubmeshRenderNode const * castor3d::SceneRenderNodes::getSubmeshNode ( uint32_t  nodeId)

◆ getSubmeshNodes()

DescriptorNodesPoolsT< SubmeshRenderNode > const & castor3d::SceneRenderNodes::getSubmeshNodes ( ) const
inline

◆ hasNodes()

bool castor3d::SceneRenderNodes::hasNodes ( ) const
inline

◆ update() [1/2]

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

◆ update() [2/2]

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

The documentation for this struct was generated from the following file: