Castor3D 0.15.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 = std::pair< uint32_t, BillboardRenderNode const * >
 
using Quad = std::array< BillboardVertex, 4u >
 

Fonctions membres publiques

C3D_API BillboardBase (Scene &scene, SceneNode *node, ashes::PipelineVertexInputStateCreateInfoPtr vertexLayout, uint32_t vertexStride, GpuBufferOffsetT< uint8_t > vertexBuffer={})
 Constructeur.
 
C3D_API ~BillboardBase ()
 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 SubmeshFlags getSubmeshFlags () const
 
C3D_API ProgramFlags getProgramFlags () 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
 
std::unordered_map< 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)
 
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)
 
void setShadowCaster (bool value)
 
void setShadowReceiver (bool value)
 
void setCullable (bool value)
 
bool isVisible () const
 
bool isShadowCaster () const
 
bool isShadowReceiver () const
 
bool isCullable () const
 

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
 
GeometryBuffers m_geometryBuffers
 
bool m_needUpdate { true }
 
bool m_initialised { false }
 
uint32_t m_count { 0u }
 
uint32_t m_centerOffset { 0u }
 
BillboardType m_billboardType { BillboardType::eCylindrical }
 
BillboardSize m_billboardSize { BillboardSize::eDynamic }
 
std::unordered_map< Pass const *, IdRenderNodem_ids {}
 

Documentation des définitions de type membres

◆ IdRenderNode

using castor3d::BillboardBase::IdRenderNode = std::pair< uint32_t, BillboardRenderNode const * >

◆ 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()

C3D_API castor3d::BillboardBase::~BillboardBase ( )

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 castor3d::GeometryBuffers::bufferOffset, et getGeometryBuffers().

Voici le graphe d'appel pour cette fonction :

◆ 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.

Référencé par getBufferOffsets().

Voici le graphe des appelants de cette fonction :

◆ 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()

std::unordered_map< 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

◆ 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.

◆ getSubmeshFlags()

C3D_API SubmeshFlags castor3d::BillboardBase::getSubmeshFlags ( ) const

name Accesseurs.

◆ 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.

◆ 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_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_ids

std::unordered_map< 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_quadLayout

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

◆ m_scene

Scene& castor3d::BillboardBase::m_scene
protected

Référencé par getParentScene().

◆ m_vertexBuffer

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

Référencé par 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 :