Castor3D  0.11.0
Multiplatform 3D engine
Classes | Types publics | Fonctions membres publiques | Attributs publics | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::BillboardBase
Graphe d'héritage de castor3d::BillboardBase:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::BillboardBase:
Collaboration graph
[légende]

Classes

struct  Vertex
 

Types publics

using Quad = std::array< Vertex, 4u >
 

Fonctions membres publiques

C3D_API BillboardBase (Scene &scene, SceneNode *node, ashes::PipelineVertexInputStateCreateInfoPtr vertexLayout, uint32_t vertexStride, ashes::VertexBufferBasePtr vertexBuffer=nullptr)
 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...
 
MaterialSPtr getMaterial () const
 
castor::Point2f const & getDimensions () const
 
uint32_t getCount () const
 
bool isInitialised () const
 
ashes::VertexBufferBase const & getVertexBuffer () const
 
ashes::VertexBufferBase & getVertexBuffer ()
 
GeometryBuffers const & getGeometryBuffers () const
 
Scene const & getParentScene () const
 
ScenegetParentScene ()
 
SceneNodegetNode () const
 
BillboardType getBillboardType () const
 
BillboardSize getBillboardSize () const
 
C3D_API ProgramFlags getProgramFlags () 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 (MaterialSPtr value)
 
C3D_API void setCount (uint32_t value)
 
- Fonctions membres publiques hérités de castor3d::RenderedObject
bool isVisible () const
 
void setVisible (bool value)
 Définit le statut de visibilité. Plus de détails...
 
bool isShadowCaster () const
 
void setShadowCaster (bool value)
 Définit le statut de projection d'ombres. Plus de détails...
 
bool isShadowReceiver () const
 
void setShadowReceiver (bool value)
 Définit le statut de réception d'ombres. Plus de détails...
 

Attributs publics

OnBillboardMaterialChanged onMaterialChanged
 

Attributs protégés

Scenem_scene
 
SceneNodem_node
 
MaterialWPtr m_material
 
castor::Point2f m_dimensions
 
castor::Point3f m_cameraPosition
 
ashes::VertexBufferBasePtr m_vertexBuffer
 
ashes::PipelineVertexInputStateCreateInfoPtr m_vertexLayout
 
uint32_t m_vertexStride
 
ashes::VertexBufferPtr< Quadm_quadBuffer
 
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 }
 

Documentation des définitions de type membres

◆ Quad

using castor3d::BillboardBase::Quad = std::array< Vertex, 4u >

Documentation des constructeurs et destructeur

◆ BillboardBase()

C3D_API castor3d::BillboardBase::BillboardBase ( Scene scene,
SceneNode node,
ashes::PipelineVertexInputStateCreateInfoPtr  vertexLayout,
uint32_t  vertexStride,
ashes::VertexBufferBasePtr  vertexBuffer = nullptr 
)

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.

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

◆ getMaterial()

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

name Accesseurs.

Références m_material.

◆ getNode()

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

Références m_node.

◆ getParentScene() [1/2]

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

Références m_scene.

◆ getParentScene() [2/2]

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

Références m_scene.

◆ getProgramFlags()

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

◆ getVertexBuffer() [1/2]

ashes::VertexBufferBase const& castor3d::BillboardBase::getVertexBuffer ( ) const
inline

Références m_vertexBuffer.

◆ getVertexBuffer() [2/2]

ashes::VertexBufferBase& castor3d::BillboardBase::getVertexBuffer ( )
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

name Mutateurs.

Références m_dimensions.

◆ setMaterial()

C3D_API void castor3d::BillboardBase::setMaterial ( MaterialSPtr  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_initialised

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

Référencé par isInitialised().

◆ m_material

MaterialWPtr 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_quadBuffer

ashes::VertexBufferPtr< Quad > castor3d::BillboardBase::m_quadBuffer
protected

◆ m_quadLayout

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

◆ m_scene

Scene& castor3d::BillboardBase::m_scene
protected

Référencé par getParentScene().

◆ m_vertexBuffer

ashes::VertexBufferBasePtr 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 :