Castor3D 0.16.0
Multiplatform 3D engine
Types publics | Fonctions membres publiques | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::BillboardBase

#include <BillboardList.hpp>

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

Types publics

using IdRenderNode = castor::Pair< uint32_t, BillboardRenderNode const * >
 
using Quad = castor::Array< BillboardVertex, 4u >
 

Fonctions membres publiques

C3D_API BillboardBase (Scene &scene, SceneNode *node, ashes::PipelineVertexInputStateCreateInfoPtr vertexLayout, uint32_t vertexStride, GpuBufferOffsetT< uint8_t > vertexBuffer={})
 Constructeur.
 
virtual C3D_API ~BillboardBase () noexcept=default
 Destructeur.
 
C3D_API bool initialise (RenderDevice const &device, uint32_t count)
 Initialise les éléments GPU.
 
C3D_API void cleanup (RenderDevice const &device)
 Nettoie les elements GPU.
 
C3D_API void update (GpuUpdater &updater)
 Met à jour la passe de rendu, au niveau GPU.
 
C3D_API uint32_t getId (Pass const &pass) const
 Récupère l'ID de l'objet dans le buffer de modèles.
 
C3D_API BillboardRenderNode const * getRenderNode (Pass const &pass) const
 Récupère le noeud de rendu de l'objet.
 
C3D_API void fillData (BillboardUboConfiguration &data) const
 Remplit les données données avec les propriétés de ce billboard.
 
C3D_API void setId (Pass const &pass, BillboardRenderNode const *renderNode, uint32_t id)
 Définit le noeud de rendu de l'objet et son ID dans le buffer de modèles.
 
C3D_API ProgramFlags getProgramFlags () const
 
SubmeshComponentCombineID getComponentCombineID () const
 
MaterialObs getMaterial () const
 
castor::Point2f const & getDimensions () const
 
uint32_t getCount () const
 
bool isInitialised () const
 
GpuBufferOffsetT< uint8_t > const & getVertexBuffer () const
 
GpuBufferOffsetT< uint8_t > & getVertexBuffer ()
 
uint32_t getVertexStride ()
 
GeometryBuffers const & getGeometryBuffers () const
 
ObjectBufferOffset const & getBufferOffsets () const
 
Scene const & getParentScene () const
 
ScenegetParentScene ()
 
SceneNodegetNode () const
 
BillboardType getBillboardType () const
 
BillboardSize getBillboardSize () const
 
castor::UnorderedMap< Pass const *, IdRenderNode > const & getIds () const
 
void setDimensions (castor::Point2f const &value)
 
void setCenterOffset (uint32_t value)
 
void setNode (SceneNode &value)
 
void setBillboardType (BillboardType value)
 
void setBillboardSize (BillboardSize value)
 
void setGpuFilled (bool value)
 
C3D_API void setMaterial (MaterialObs value)
 
C3D_API void setCount (uint32_t value)
 
- Fonctions membres publiques hérités de castor3d::RenderedObject
C3D_API void fillEntry (uint32_t nodeId, Pass const &pass, SceneNode const &sceneNode, uint32_t meshletCount, ModelBufferConfiguration &modelData)
 
C3D_API void fillEntryOffsets (uint32_t nodeId, VkDeviceSize vertexOffset, VkDeviceSize indexOffset, VkDeviceSize meshletOffset)
 
void setVisible (bool value) noexcept
 
void setShadowCaster (bool value) noexcept
 
void setShadowReceiver (bool value) noexcept
 
void setCullable (bool value) noexcept
 
bool isVisible () const noexcept
 
bool isShadowCaster () const noexcept
 
bool isShadowReceiver () const noexcept
 
bool isCullable () const noexcept
 

Attributs protégés

Scenem_scene
 
SceneNodem_node {}
 
MaterialObs m_material {}
 
castor::Point2f m_dimensions
 
castor::Point3f m_cameraPosition
 
GpuBufferOffsetT< uint8_t > m_vertexBuffer
 
ashes::PipelineVertexInputStateCreateInfoPtr m_vertexLayout
 
uint32_t m_vertexStride
 
ashes::PipelineVertexInputStateCreateInfoPtr m_quadLayout
 
ObjectBufferOffset m_bufferOffsets
 
GeometryBuffers m_geometryBuffers
 
bool m_needUpdate { true }
 
bool m_initialised { false }
 
bool m_gpuFilled { false }
 
uint32_t m_count { 0u }
 
uint32_t m_centerOffset { 0u }
 
BillboardType m_billboardType { BillboardType::eCylindrical }
 
BillboardSize m_billboardSize { BillboardSize::eDynamic }
 
castor::UnorderedMap< Pass const *, IdRenderNodem_ids {}
 
SubmeshComponentCombine m_proxyCombine
 

Documentation des définitions de type membres

◆ IdRenderNode

◆ Quad

Documentation des constructeurs et destructeur

◆ BillboardBase()

C3D_API castor3d::BillboardBase::BillboardBase ( Scene & scene,
SceneNode * node,
ashes::PipelineVertexInputStateCreateInfoPtr vertexLayout,
uint32_t vertexStride,
GpuBufferOffsetT< uint8_t > vertexBuffer = {} )

Constructeur.

Paramètres
[in]sceneLa scène parente.
[in]nodeLe noeud de scène parent.
[in]vertexLayoutLe layout du tampon de sommets.
[in]vertexStrideLe stride du tampon de sommets.
[in]vertexBufferLe tampon de sommets.

◆ ~BillboardBase()

virtual C3D_API castor3d::BillboardBase::~BillboardBase ( )
virtualdefaultnoexcept

Destructeur.

Documentation des fonctions membres

◆ cleanup()

C3D_API void castor3d::BillboardBase::cleanup ( RenderDevice const & device)

Nettoie les elements GPU.

Paramètres
deviceLe device actuel.

◆ fillData()

C3D_API void castor3d::BillboardBase::fillData ( BillboardUboConfiguration & data) const

Remplit les données données avec les propriétés de ce billboard.

Paramètres
[out]dataLes données à remplir.

◆ getBillboardSize()

BillboardSize castor3d::BillboardBase::getBillboardSize ( ) const
inline

Références m_billboardSize.

◆ getBillboardType()

BillboardType castor3d::BillboardBase::getBillboardType ( ) const
inline

Références m_billboardType.

◆ getBufferOffsets()

ObjectBufferOffset const & castor3d::BillboardBase::getBufferOffsets ( ) const
inline

Références m_bufferOffsets.

◆ getComponentCombineID()

SubmeshComponentCombineID castor3d::BillboardBase::getComponentCombineID ( ) const
inline

◆ getCount()

uint32_t castor3d::BillboardBase::getCount ( ) const
inline

Références m_count.

◆ getDimensions()

castor::Point2f const & castor3d::BillboardBase::getDimensions ( ) const
inline

Références m_dimensions.

◆ getGeometryBuffers()

GeometryBuffers const & castor3d::BillboardBase::getGeometryBuffers ( ) const
inline

Références m_geometryBuffers.

◆ getId()

C3D_API uint32_t castor3d::BillboardBase::getId ( Pass const & pass) const

Récupère l'ID de l'objet dans le buffer de modèles.

Paramètres
[in]passLa passe de matériau.

◆ getIds()

castor::UnorderedMap< Pass const *, IdRenderNode > const & castor3d::BillboardBase::getIds ( ) const
inline

Références m_ids.

◆ getMaterial()

MaterialObs castor3d::BillboardBase::getMaterial ( ) const
inline

Références m_material.

◆ getNode()

SceneNode * castor3d::BillboardBase::getNode ( ) const
inline

Références m_node.

◆ getParentScene() [1/2]

Scene & castor3d::BillboardBase::getParentScene ( )
inline

Références m_scene.

◆ getParentScene() [2/2]

Scene const & castor3d::BillboardBase::getParentScene ( ) const
inline

Références m_scene.

◆ getProgramFlags()

C3D_API ProgramFlags castor3d::BillboardBase::getProgramFlags ( ) const

name Accesseurs.

◆ getRenderNode()

C3D_API BillboardRenderNode const * castor3d::BillboardBase::getRenderNode ( Pass const & pass) const

Récupère le noeud de rendu de l'objet.

Paramètres
[in]passLa passe de matériau.

◆ getVertexBuffer() [1/2]

GpuBufferOffsetT< uint8_t > & castor3d::BillboardBase::getVertexBuffer ( )
inline

Références m_vertexBuffer.

◆ getVertexBuffer() [2/2]

GpuBufferOffsetT< uint8_t > const & castor3d::BillboardBase::getVertexBuffer ( ) const
inline

Références m_vertexBuffer.

◆ getVertexStride()

uint32_t castor3d::BillboardBase::getVertexStride ( )
inline

Références m_vertexStride.

◆ initialise()

C3D_API bool castor3d::BillboardBase::initialise ( RenderDevice const & device,
uint32_t count )

Initialise les éléments GPU.

Paramètres
deviceLe device actuel.
[in]countLe nombre d'éléments.
Renvoie
true si tout s'est bien passé.

◆ isInitialised()

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

Références m_initialised.

◆ setBillboardSize()

void castor3d::BillboardBase::setBillboardSize ( BillboardSize value)
inline

Références m_billboardSize.

◆ setBillboardType()

void castor3d::BillboardBase::setBillboardType ( BillboardType value)
inline

Références m_billboardType.

◆ setCenterOffset()

void castor3d::BillboardBase::setCenterOffset ( uint32_t value)
inline

Références m_centerOffset.

◆ setCount()

C3D_API void castor3d::BillboardBase::setCount ( uint32_t value)

◆ setDimensions()

void castor3d::BillboardBase::setDimensions ( castor::Point2f const & value)
inline

name Mutateurs.

Références m_dimensions.

◆ setGpuFilled()

void castor3d::BillboardBase::setGpuFilled ( bool value)
inline

Références m_gpuFilled.

◆ setId()

C3D_API void castor3d::BillboardBase::setId ( Pass const & pass,
BillboardRenderNode const * renderNode,
uint32_t id )

Définit le noeud de rendu de l'objet et son ID dans le buffer de modèles.

Paramètres
[in]passLa passe de matériau.
[in]renderNodeLe noeud de rendu.
[in]idL'ID.

◆ setMaterial()

C3D_API void castor3d::BillboardBase::setMaterial ( MaterialObs value)

◆ setNode()

void castor3d::BillboardBase::setNode ( SceneNode & value)
inline

Références m_node.

◆ update()

C3D_API void castor3d::BillboardBase::update ( GpuUpdater & updater)

Met à jour la passe de rendu, au niveau GPU.

Paramètres
[in,out]updaterLes données d'update.

Documentation des données membres

◆ m_billboardSize

BillboardSize castor3d::BillboardBase::m_billboardSize { BillboardSize::eDynamic }
protected

Référencé par getBillboardSize(), et setBillboardSize().

◆ m_billboardType

BillboardType castor3d::BillboardBase::m_billboardType { BillboardType::eCylindrical }
protected

Référencé par getBillboardType(), et setBillboardType().

◆ m_bufferOffsets

ObjectBufferOffset castor3d::BillboardBase::m_bufferOffsets
protected

Référencé par getBufferOffsets().

◆ m_cameraPosition

castor::Point3f castor3d::BillboardBase::m_cameraPosition
protected

◆ m_centerOffset

uint32_t castor3d::BillboardBase::m_centerOffset { 0u }
protected

Référencé par setCenterOffset().

◆ m_count

uint32_t castor3d::BillboardBase::m_count { 0u }
protected

Référencé par getCount().

◆ m_dimensions

castor::Point2f castor3d::BillboardBase::m_dimensions
protected

Référencé par getDimensions(), et setDimensions().

◆ m_geometryBuffers

GeometryBuffers castor3d::BillboardBase::m_geometryBuffers
protected

Référencé par getGeometryBuffers().

◆ m_gpuFilled

bool castor3d::BillboardBase::m_gpuFilled { false }
protected

Référencé par setGpuFilled().

◆ m_ids

castor::UnorderedMap< Pass const *, IdRenderNode > castor3d::BillboardBase::m_ids {}
protected

Référencé par getIds().

◆ m_initialised

bool castor3d::BillboardBase::m_initialised { false }
protected

Référencé par isInitialised().

◆ m_material

MaterialObs castor3d::BillboardBase::m_material {}
protected

Référencé par getMaterial().

◆ m_needUpdate

bool castor3d::BillboardBase::m_needUpdate { true }
protected

◆ m_node

SceneNode* castor3d::BillboardBase::m_node {}
protected

Référencé par getNode(), et setNode().

◆ m_proxyCombine

SubmeshComponentCombine castor3d::BillboardBase::m_proxyCombine
protected

Référencé par getComponentCombineID().

◆ m_quadLayout

ashes::PipelineVertexInputStateCreateInfoPtr castor3d::BillboardBase::m_quadLayout
protected

◆ m_scene

Scene& castor3d::BillboardBase::m_scene
protected

Référencé par getParentScene(), et getParentScene().

◆ m_vertexBuffer

GpuBufferOffsetT< uint8_t > castor3d::BillboardBase::m_vertexBuffer
protected

Référencé par getVertexBuffer(), et getVertexBuffer().

◆ m_vertexLayout

ashes::PipelineVertexInputStateCreateInfoPtr castor3d::BillboardBase::m_vertexLayout
protected

◆ m_vertexStride

uint32_t castor3d::BillboardBase::m_vertexStride
protected

Référencé par getVertexStride().


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