Castor3D 0.12.0
Multiplatform 3D engine
Types publics | Fonctions membres publiques | Attributs publics | 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 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. Plus de détails...
 
C3D_API ~BillboardBase ()
 Destructeur. Plus de détails...
 
C3D_API bool initialise (RenderDevice const &device, uint32_t count)
 Initialise les éléments GPU. Plus de détails...
 
C3D_API void cleanup (RenderDevice const &device)
 Nettoie les elements GPU. Plus de détails...
 
C3D_API void sortByDistance (castor::Point3f const &cameraPosition)
 Trie les points des plus éloignés aux plus proches de la caméra. Plus de détails...
 
C3D_API void update (GpuUpdater &updater)
 Met à jour la passe de rendu, au niveau GPU. Plus de détails...
 
C3D_API ProgramFlags getProgramFlags () const
 
C3D_API uint32_t getId (Pass const &pass) const
 
MaterialRPtr getMaterial () const
 
castor::Point2f const & getDimensions () const
 
uint32_t getCount () const
 
bool isInitialised () const
 
GpuBufferOffsetT< uint8_t > const & getVertexBuffer () const
 
GpuBufferOffsetT< uint8_t > & getVertexBuffer ()
 
GeometryBuffers const & getGeometryBuffers () const
 
ObjectBufferOffset const & getBufferOffsets () const
 
Scene const & getParentScene () const
 
ScenegetParentScene ()
 
SceneNodegetNode () const
 
BillboardType getBillboardType () const
 
BillboardSize getBillboardSize () const
 
C3D_API void setId (Pass const &pass, uint32_t id)
 
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 (MaterialRPtr value)
 
C3D_API void setCount (uint32_t value)
 
- Fonctions membres publiques hérités de castor3d::RenderedObject
void setVisible (bool value)
 
void setShadowCaster (bool value)
 
void setShadowReceiver (bool value)
 
void setCulled (bool value)
 
bool isVisible () const
 
bool isShadowCaster () const
 
bool isShadowReceiver () const
 
bool isCulled () const
 

Attributs publics

OnBillboardMaterialChanged onMaterialChanged
 

Attributs protégés

Scenem_scene
 
SceneNodem_node
 
MaterialRPtr 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 *, uint32_t > m_ids {}
 

Documentation des définitions de type membres

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

◆ 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

◆ getMaterial()

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

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

◆ 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

Références m_dimensions.

◆ setId()

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

name Mutateurs.

◆ setMaterial()

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

◆ setNode()

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

Références m_node.

◆ sortByDistance()

C3D_API void castor3d::BillboardBase::sortByDistance ( castor::Point3f const &  cameraPosition)

Trie les points des plus éloignés aux plus proches de la caméra.

Paramètres
[in]cameraPositionLa position de la caméra, relative au billboard.

◆ 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 *, uint32_t > castor3d::BillboardBase::m_ids {}
protected

◆ m_initialised

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

Référencé par isInitialised().

◆ m_material

MaterialRPtr 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

◆ onMaterialChanged

OnBillboardMaterialChanged castor3d::BillboardBase::onMaterialChanged

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