Castor3D  0.11.0
Multiplatform 3D engine
Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor3d::LightVolumeGIPass
Graphe d'héritage de castor3d::LightVolumeGIPass:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::LightVolumeGIPass:
Collaboration graph
[légende]

Fonctions membres publiques

C3D_API LightVolumeGIPass (Engine &engine, RenderDevice const &device, castor::String const &prefix, LightType lightType, GpInfoUbo const &gpInfo, LpvGridConfigUbo const &lpvGridConfigUbo, OpaquePassResult const &gpResult, LightVolumePassResult const &lpvResult, TextureUnit const &dst, BlendMode blendMode)
 Constructeur. Plus de détails...
 
C3D_API ashes::Semaphore const & compute (ashes::Semaphore const &toWait) const
 Dessine la passe. Plus de détails...
 
C3D_API CommandsSemaphore getCommands (RenderPassTimer const &timer, uint32_t index) const
 
C3D_API void accept (PipelineVisitorBase &visitor)
 Fonction d'acceptation de visiteur. Plus de détails...
 
- Fonctions membres publiques hérités de castor3d::RenderQuad
virtual C3D_API ~RenderQuad ()
 
C3D_API RenderQuad (RenderQuad &&rhs) noexcept
 
C3D_API void cleanup ()
 Nettoie les objets GPU. Plus de détails...
 
C3D_API void createPipeline (VkExtent2D const &size, castor::Position const &position, ashes::PipelineShaderStageCreateInfoArray const &program, ashes::RenderPass const &renderPass, ashes::VkPushConstantRangeArray const &pushRanges=ashes::VkPushConstantRangeArray{}, ashes::PipelineDepthStencilStateCreateInfo dsState=ashes::PipelineDepthStencilStateCreateInfo{ 0u, VK_FALSE, VK_FALSE })
 Crée le pipeline de rendu. Plus de détails...
 
C3D_API void registerPassInputs (ashes::WriteDescriptorSetArray const &writes)
 Crée les entrées pour une passe. Plus de détails...
 
C3D_API void initialisePasses ()
 Crée les descriptor sets pour toute les passes enregistrées. Plus de détails...
 
C3D_API void createPipelineAndPass (VkExtent2D const &size, castor::Position const &position, ashes::PipelineShaderStageCreateInfoArray const &program, ashes::RenderPass const &renderPass, ashes::WriteDescriptorSetArray const &writes, ashes::VkPushConstantRangeArray const &pushRanges=ashes::VkPushConstantRangeArray{}, ashes::PipelineDepthStencilStateCreateInfo dsState=ashes::PipelineDepthStencilStateCreateInfo{ 0u, false, false })
 Crée le pipeline de rendu et initialise le quad pour une passe. Plus de détails...
 
C3D_API void registerPass (ashes::CommandBuffer &commandBuffer, uint32_t descriptorSetIndex) const
 Prépare les commandes de dessin du quad, dans le tampon de commandes donné. Plus de détails...
 
void registerPass (ashes::CommandBuffer &commandBuffer) const
 Prépare les commandes de dessin du quad, dans le tampon de commandes donné. Plus de détails...
 
RenderSystemgetRenderSystem () const
 
RenderDevice const & getDevice () const
 
Sampler const & getSampler () const
 

Membres hérités additionnels

- Fonctions membres publiques statiques hérités de castor3d::RenderQuad
static C3D_API ashes::WriteDescriptorSet makeDescriptorWrite (ashes::ImageView const &view, ashes::Sampler const &sampler, uint32_t dstBinding, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour un sampler et une image combinés. Plus de détails...
 
static C3D_API ashes::WriteDescriptorSet makeDescriptorWrite (ashes::UniformBuffer const &buffer, uint32_t dstBinding, uint32_t elemOffset, uint32_t elemRange, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour un uniform buffer. Plus de détails...
 
template<typename DataT >
static ashes::WriteDescriptorSet makeDescriptorWrite (UniformBufferOffsetT< DataT > const &buffer, uint32_t dstBinding, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour un intervalle d'uniform buffer. Plus de détails...
 
static C3D_API ashes::WriteDescriptorSet makeDescriptorWrite (ashes::BufferBase const &storageBuffer, uint32_t dstBinding, uint32_t byteOffset, uint32_t byteRange, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour un storage buffer. Plus de détails...
 
template<typename DataT >
static ashes::WriteDescriptorSet makeDescriptorWrite (ashes::Buffer< DataT > const &storageBuffer, uint32_t dstBinding, uint32_t elemOffset, uint32_t elemRange, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour un storage buffer. Plus de détails...
 
static C3D_API ashes::WriteDescriptorSet makeDescriptorWrite (ashes::BufferBase const &buffer, ashes::BufferView const &view, uint32_t dstBinding, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour une texel view sur un buffer. Plus de détails...
 
template<typename DataT >
static ashes::WriteDescriptorSet makeDescriptorWrite (ashes::Buffer< DataT > const &buffer, ashes::BufferView const &view, uint32_t dstBinding, uint32_t dstArrayElement=0u)
 Crée un descriptor write pour une texel view sur un buffer. Plus de détails...
 
- Fonctions membres protégées hérités de castor3d::RenderQuad
C3D_API RenderQuad (RenderDevice const &device, castor::String const &name, VkFilter samplerFilter, rq::Config config)
 Constructeur. Plus de détails...
 
- Attributs protégés hérités de castor3d::RenderQuad
RenderSystemm_renderSystem
 
RenderDevice const & m_device
 
SamplerSPtr m_sampler
 
rq::ConfigData m_config
 

Documentation des constructeurs et destructeur

◆ LightVolumeGIPass()

C3D_API castor3d::LightVolumeGIPass::LightVolumeGIPass ( Engine engine,
RenderDevice const &  device,
castor::String const &  prefix,
LightType  lightType,
GpInfoUbo const &  gpInfo,
LpvGridConfigUbo const &  lpvGridConfigUbo,
OpaquePassResult const &  gpResult,
LightVolumePassResult const &  lpvResult,
TextureUnit const &  dst,
BlendMode  blendMode 
)

Constructeur.

Paramètres
[in]engineLe moteur.
[in]deviceLe device GPU.
[in]prefixLe préfixe du nom de la passe.
[in]lightTypeLe type de source lumineuse.
[in]gpInfoL'UBO de configuration du GBuffer.
[in]lpvGridConfigUboL'UBO de configuration de la grille des LPV.
[in]gpResultLe GBuffer.
[in]lpvResultLe résultat du LPV.
[in]dstLe résultat de GI.
[in]blendModeLe mode de mélange.

Documentation des fonctions membres

◆ accept()

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

Fonction d'acceptation de visiteur.

Paramètres
visitorLe ... visiteur.

◆ compute()

C3D_API ashes::Semaphore const& castor3d::LightVolumeGIPass::compute ( ashes::Semaphore const &  toWait) const

Dessine la passe.

Paramètres
[in]toWaitLe sémaphore de la passe de rendu précédente.

◆ getCommands()

C3D_API CommandsSemaphore castor3d::LightVolumeGIPass::getCommands ( RenderPassTimer const &  timer,
uint32_t  index 
) const

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