![]() |
Castor3D
0.11.0
Multiplatform 3D engine
|
Fonctions membres publiques | |
C3D_API | LayeredLightVolumeGIPass (Engine &engine, RenderDevice const &device, castor::String const &prefix, GpInfoUbo const &gpInfo, LayeredLpvGridConfigUbo const &lpvConfigUbo, OpaquePassResult const &gpResult, LightVolumePassResultArray 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... | |
![]() | |
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... | |
RenderSystem * | getRenderSystem () const |
RenderDevice const & | getDevice () const |
Sampler const & | getSampler () const |
Membres hérités additionnels | |
![]() | |
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... | |
![]() | |
C3D_API | RenderQuad (RenderDevice const &device, castor::String const &name, VkFilter samplerFilter, rq::Config config) |
Constructeur. Plus de détails... | |
![]() | |
RenderSystem & | m_renderSystem |
RenderDevice const & | m_device |
SamplerSPtr | m_sampler |
rq::ConfigData | m_config |
C3D_API castor3d::LayeredLightVolumeGIPass::LayeredLightVolumeGIPass | ( | Engine & | engine, |
RenderDevice const & | device, | ||
castor::String const & | prefix, | ||
GpInfoUbo const & | gpInfo, | ||
LayeredLpvGridConfigUbo const & | lpvConfigUbo, | ||
OpaquePassResult const & | gpResult, | ||
LightVolumePassResultArray const & | lpvResult, | ||
TextureUnit const & | dst, | ||
BlendMode | blendMode | ||
) |
Constructeur.
[in] | engine | Le moteur. |
[in] | device | Le device GPU. |
[in] | prefix | Le préfixe du nom de la passe. |
[in] | gpInfo | L'UBO de configuration du GBuffer. |
[in] | lpvConfigUbo | L'UBO de configuration des LPV. |
[in] | gpResult | Le GBuffer. |
[in] | lpvResult | Le résultat du LPV. |
[in] | dst | Le résultat de GI. |
[in] | blendMode | Le mode de mélange. |
C3D_API void castor3d::LayeredLightVolumeGIPass::accept | ( | PipelineVisitorBase & | visitor | ) |
Fonction d'acceptation de visiteur.
visitor | Le ... visiteur. |
C3D_API ashes::Semaphore const& castor3d::LayeredLightVolumeGIPass::compute | ( | ashes::Semaphore const & | toWait | ) | const |
Dessine la passe.
[in] | toWait | Le sémaphore de la passe de rendu précédente. |
C3D_API CommandsSemaphore castor3d::LayeredLightVolumeGIPass::getCommands | ( | RenderPassTimer const & | timer, |
uint32_t | index | ||
) | const |