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

#include <ShadowMap.hpp>

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

Classes

struct  PassData
 
struct  Passes
 

Types publics

using PassDataPtr = std::unique_ptr< PassData >
 

Fonctions membres publiques

C3D_API ShadowMap (crg::ResourceHandler &handler, RenderDevice const &device, Scene &scene, LightType lightType, VkImageCreateFlags createFlags, castor::Size const &size, uint32_t layerCount, uint32_t count)
 Constructeur. Plus de détails...
 
virtual C3D_API ~ShadowMap ()=default
 Destructeur. Plus de détails...
 
C3D_API void accept (PipelineVisitorBase &visitor)
 Fonction d'acceptation de visiteur. Plus de détails...
 
C3D_API void update (CpuUpdater &updater)
 Met à jour la passe de rendu, au niveau CPU. Plus de détails...
 
virtual C3D_API void update (GpuUpdater &updater)=0
 Met à jour la passe de rendu, au niveau GPU. Plus de détails...
 
C3D_API crg::SemaphoreWaitArray render (crg::SemaphoreWaitArray const &toWait, ashes::Queue const &queue, uint32_t index)
 Dessine la texture d'ombres. Plus de détails...
 
C3D_API ashes::VkClearValueArray const & getClearValues () const
 
C3D_API ashes::Sampler const & getSampler (SmTexture texture, uint32_t index=0u) const
 
virtual C3D_API crg::ImageViewId getView (SmTexture texture, uint32_t index=0u) const
 
virtual C3D_API crg::ImageViewIdArray getViews (SmTexture texture, uint32_t index=0u) const
 
ShadowMapResult const & getShadowPassResult () const
 
ShadowMapResultgetShadowPassResult ()
 
ScenegetScene () const
 
uint32_t getCount () const
 

Attributs protégés

RenderDevice const & m_device
 
crg::ResourceHandler & m_handler
 
Scenem_scene
 
castor::String m_name
 
LightType m_lightType
 
ShadowMapResult m_result
 
uint32_t m_count
 
std::set< std::reference_wrapper< GeometryBuffers > > m_geometryBuffers
 
std::array< Passes, 4u > m_passes
 
uint32_t m_passesIndex {}
 

Documentation des définitions de type membres

◆ PassDataPtr

using castor3d::ShadowMap::PassDataPtr = std::unique_ptr< PassData >

Documentation des constructeurs et destructeur

◆ ShadowMap()

C3D_API castor3d::ShadowMap::ShadowMap ( crg::ResourceHandler &  handler,
RenderDevice const &  device,
Scene scene,
LightType  lightType,
VkImageCreateFlags  createFlags,
castor::Size const &  size,
uint32_t  layerCount,
uint32_t  count 
)

Constructeur.

Paramètres
[in]handlerLe gestionnaire de ressources du render graph.
[in]deviceLe device GPU.
[in]sceneLa scène.
[in]lightTypeLe type de source lumineuse.
[in]createFlagsLes flags de créqation de l'image résultat.
[in]sizeLes dimensions de l'image résultat.
[in]layerCountLe nombres de layers de l'image résultat.
[in]countLe nombre de passes.

◆ ~ShadowMap()

virtual C3D_API castor3d::ShadowMap::~ShadowMap ( )
virtualdefault

Destructeur.

Documentation des fonctions membres

◆ accept()

C3D_API void castor3d::ShadowMap::accept ( PipelineVisitorBase visitor)

Fonction d'acceptation de visiteur.

Paramètres
visitorLe visiteur.

◆ getClearValues()

C3D_API ashes::VkClearValueArray const & castor3d::ShadowMap::getClearValues ( ) const

name Accesseurs.

◆ getCount()

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

Références m_count.

◆ getSampler()

C3D_API ashes::Sampler const & castor3d::ShadowMap::getSampler ( SmTexture  texture,
uint32_t  index = 0u 
) const

◆ getScene()

Scene & castor3d::ShadowMap::getScene ( ) const
inline

Références m_scene.

◆ getShadowPassResult() [1/2]

ShadowMapResult & castor3d::ShadowMap::getShadowPassResult ( )
inline

Références m_result.

◆ getShadowPassResult() [2/2]

ShadowMapResult const & castor3d::ShadowMap::getShadowPassResult ( ) const
inline

Références m_result.

◆ getView()

virtual C3D_API crg::ImageViewId castor3d::ShadowMap::getView ( SmTexture  texture,
uint32_t  index = 0u 
) const
virtual

◆ getViews()

virtual C3D_API crg::ImageViewIdArray castor3d::ShadowMap::getViews ( SmTexture  texture,
uint32_t  index = 0u 
) const
virtual

◆ render()

C3D_API crg::SemaphoreWaitArray castor3d::ShadowMap::render ( crg::SemaphoreWaitArray const &  toWait,
ashes::Queue const &  queue,
uint32_t  index 
)

Dessine la texture d'ombres.

Paramètres
[in]toWaitLes sémaphores à attendre.
[in]queueThe queue recevant les commandes de dessin.
[in]indexL'index de la layer à dessiner.
Renvoie
Les sémaphores signalés par ce dessin.

◆ update() [1/2]

C3D_API void castor3d::ShadowMap::update ( CpuUpdater updater)

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

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

◆ update() [2/2]

virtual C3D_API void castor3d::ShadowMap::update ( GpuUpdater updater)
pure virtual

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

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

Implémenté dans castor3d::ShadowMapDirectional, castor3d::ShadowMapPoint, et castor3d::ShadowMapSpot.

Documentation des données membres

◆ m_count

uint32_t castor3d::ShadowMap::m_count
protected

Référencé par getCount().

◆ m_device

RenderDevice const& castor3d::ShadowMap::m_device
protected

◆ m_geometryBuffers

std::set< std::reference_wrapper< GeometryBuffers > > castor3d::ShadowMap::m_geometryBuffers
protected

◆ m_handler

crg::ResourceHandler& castor3d::ShadowMap::m_handler
protected

◆ m_lightType

LightType castor3d::ShadowMap::m_lightType
protected

◆ m_name

castor::String castor3d::ShadowMap::m_name
protected

◆ m_passes

std::array< Passes, 4u > castor3d::ShadowMap::m_passes
protected

◆ m_passesIndex

uint32_t castor3d::ShadowMap::m_passesIndex {}
protected

◆ m_result

ShadowMapResult castor3d::ShadowMap::m_result
protected

◆ m_scene

Scene& castor3d::ShadowMap::m_scene
protected

Référencé par getScene().


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