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

#include <Geometry.hpp>

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

Types publics

using IdRenderNode = castor::Pair< uint32_t, SubmeshRenderNode * >
 
using SubmeshIdRenderNodeMap = castor::UnorderedMap< uint32_t, IdRenderNode >
 

Fonctions membres publiques

C3D_API Geometry (castor::String const &name, Scene &scene, SceneNode &node, MeshResPtr mesh={})
 Constructeur.
 
C3D_API Geometry (castor::String const &name, Scene &scene, MeshResPtr mesh={})
 Constructeur.
 
C3D_API void prepare (uint32_t &nbFaces, uint32_t &nbVertex)
 
C3D_API void setMesh (MeshResPtr mesh)
 Définit le maillage de la géométrie.
 
C3D_API MaterialObs getMaterial (Submesh const &submesh) const
 Récupère le matériau du sous-maillage.
 
C3D_API void setMaterial (Submesh &submesh, MaterialObs material)
 Définit le matériau d'un sous-maillage.
 
C3D_API void initContainers ()
 Initialise les bounding box et sphere depuis boxes des sous-maillages.
 
C3D_API void updateContainers (SubmeshBoundingBoxList const &boxes)
 Calcule les bounding box et sphere depuis boxes des sous-maillages données.
 
C3D_API castor::BoundingBox const & getBoundingBox (Submesh const &submesh) const
 
C3D_API castor::BoundingSphere const & getBoundingSphere (Submesh const &submesh) const
 
C3D_API void setBoundingBox (Submesh const &submesh, castor::BoundingBox const &box)
 Définit la bounding box pour le sous-maillage donné.
 
C3D_API uint32_t getId (Pass const &pass, Submesh const &submesh) const
 Récupère l'ID de l'objet dans le buffer de modèles.
 
C3D_API SubmeshRenderNodegetRenderNode (Pass const &pass, Submesh const &submesh) const
 Récupère le noeud de rendu de l'objet.
 
C3D_API void setId (Pass const &pass, Submesh const &submesh, SubmeshRenderNode *renderNode, uint32_t id) noexcept
 Définit le noeud de rendu de l'objet et son ID dans le buffer de modèles.
 
C3D_API size_t getHash (Pass const &pass, Submesh const &submesh) const noexcept
 
C3D_API castor::Matrix4x4f getGlobalTransform () const
 
castor::UnorderedMap< Pass const *, SubmeshIdRenderNodeMap > const & getIds () const
 
MeshResPtr getMesh () const
 
castor::BoundingBox const & getBoundingBox () const
 
castor::BoundingSphere const & getBoundingSphere () const
 
- Fonctions membres publiques hérités de castor3d::MovableObject
C3D_API MovableObject (castor::String const &name, Scene &scene, MovableType type, SceneNode &node)
 Constructeur.
 
C3D_API MovableObject (castor::String const &name, Scene &scene, MovableType type)
 Constructeur.
 
virtual C3D_API ~MovableObject () noexcept
 Destructeur.
 
C3D_API void detach ()
 Détache l'objet de son parent.
 
virtual C3D_API void attachTo (SceneNode &node)
 Attache l'object à un noeud.
 
C3D_API void markDirty ()
 Ajout l'objet à la liste des objets à mettre à jour de la scène.
 
C3D_API EngineRPtr getEngine () const noexcept
 
SceneNodegetParent () const noexcept
 
MovableType getMovableType () const noexcept
 
- Fonctions membres publiques hérités de castor::OwnedBy< Scene >
Scene * getOwner () const
 L'objet propriétaire.
 
- Fonctions membres publiques hérités de castor::NamedBaseT< T >
 NamedBaseT (T name) noexcept
 Constructeur.
 
T const & getName () const noexcept
 Récupère le nom.
 
void rename (T name) noexcept
 
- 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
 

Membres hérités additionnels

- Fonctions membres protégées hérités de castor::OwnedBy< Scene >
 OwnedBy (Scene &owner)
 Constructeur.
 
- Attributs protégés hérités de castor3d::MovableObject
MovableType m_type
 
SceneNodem_sceneNode {}
 
OnSceneNodeChangedConnection m_notifyIndex
 
- Attributs protégés hérités de castor::NamedBaseT< T >
m_name
 

Documentation des définitions de type membres

◆ IdRenderNode

◆ SubmeshIdRenderNodeMap

Documentation des constructeurs et destructeur

◆ Geometry() [1/2]

C3D_API castor3d::Geometry::Geometry ( castor::String const & name,
Scene & scene,
SceneNode & node,
MeshResPtr mesh = {} )

Constructeur.

Paramètres
[in]nameNom de la géométrie.
[in]sceneLa scène parente.
[in]nodeLe scene node auquel la géométrie est attachée.
[in]meshLe maillage.

◆ Geometry() [2/2]

C3D_API castor3d::Geometry::Geometry ( castor::String const & name,
Scene & scene,
MeshResPtr mesh = {} )

Constructeur.

Paramètres
[in]nameNom de la géométrie.
[in]sceneLa scène parente.
[in]meshLe maillage.

Documentation des fonctions membres

◆ getBoundingBox() [1/2]

castor::BoundingBox const & castor3d::Geometry::getBoundingBox ( ) const
inline

◆ getBoundingBox() [2/2]

C3D_API castor::BoundingBox const & castor3d::Geometry::getBoundingBox ( Submesh const & submesh) const
Paramètres
[in]submeshLe sous-maillage.
Renvoie
La boîte de collision pour le sous-maillage donné.

◆ getBoundingSphere() [1/2]

castor::BoundingSphere const & castor3d::Geometry::getBoundingSphere ( ) const
inline

◆ getBoundingSphere() [2/2]

C3D_API castor::BoundingSphere const & castor3d::Geometry::getBoundingSphere ( Submesh const & submesh) const
Paramètres
[in]submeshLe sous-maillage.
Renvoie
La sphère de collision pour le sous-maillage donné.

◆ getGlobalTransform()

C3D_API castor::Matrix4x4f castor3d::Geometry::getGlobalTransform ( ) const
Renvoie
La transformation glbale de l'objet, depuis son scene node et son squelette.

◆ getHash()

C3D_API size_t castor3d::Geometry::getHash ( Pass const & pass,
Submesh const & submesh ) const
noexcept
Paramètres
[in]passLa passe de matériau.
[in]submeshLe sous-maillage.
Renvoie
Le hash l'objet.

◆ getId()

C3D_API uint32_t castor3d::Geometry::getId ( Pass const & pass,
Submesh const & submesh ) const

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

Paramètres
[in]passLa passe de matériau.
[in]submeshLe sous-maillage.

◆ getIds()

castor::UnorderedMap< Pass const *, SubmeshIdRenderNodeMap > const & castor3d::Geometry::getIds ( ) const
inline

name Accesseurs.

◆ getMaterial()

C3D_API MaterialObs castor3d::Geometry::getMaterial ( Submesh const & submesh) const

Récupère le matériau du sous-maillage.

Paramètres
[in]submeshLe sous-maillage.
Renvoie
Le matériau.

◆ getMesh()

MeshResPtr castor3d::Geometry::getMesh ( ) const
inline

◆ getRenderNode()

C3D_API SubmeshRenderNode * castor3d::Geometry::getRenderNode ( Pass const & pass,
Submesh const & submesh ) const

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

Paramètres
[in]passLa passe de matériau.
[in]submeshLe sous-maillage.

◆ initContainers()

C3D_API void castor3d::Geometry::initContainers ( )

Initialise les bounding box et sphere depuis boxes des sous-maillages.

◆ prepare()

C3D_API void castor3d::Geometry::prepare ( uint32_t & nbFaces,
uint32_t & nbVertex )

brief Crée les buffers du mesh

Paramètres
[out]nbFacesReçoit le nombre de faces du mesh
[out]nbVertexReçoit le nombre de vertex du mesh

◆ setBoundingBox()

C3D_API void castor3d::Geometry::setBoundingBox ( Submesh const & submesh,
castor::BoundingBox const & box )

Définit la bounding box pour le sous-maillage donné.

Paramètres
[in]submeshLe sous-maillage.
[in]boxLa bounding box.

◆ setId()

C3D_API void castor3d::Geometry::setId ( Pass const & pass,
Submesh const & submesh,
SubmeshRenderNode * renderNode,
uint32_t id )
noexcept

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]submeshLe sous-maillage.
[in]renderNodeLe noeud de rendu.
[in]idL'ID.

◆ setMaterial()

C3D_API void castor3d::Geometry::setMaterial ( Submesh & submesh,
MaterialObs material )

Définit le matériau d'un sous-maillage.

Paramètres
[in]submeshLe sous-maillage.
[in]materialLe matériau.

◆ setMesh()

C3D_API void castor3d::Geometry::setMesh ( MeshResPtr mesh)

Définit le maillage de la géométrie.

Paramètres
[in]meshLe maillage.

◆ updateContainers()

C3D_API void castor3d::Geometry::updateContainers ( SubmeshBoundingBoxList const & boxes)

Calcule les bounding box et sphere depuis boxes des sous-maillages données.


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