#include <RenderQuad.hpp>
|
virtual C3D_API | ~RenderQuad () |
|
C3D_API | RenderQuad (RenderQuad &&rhs) noexcept |
|
C3D_API void | cleanup () |
| Nettoie les objets GPU.
|
|
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.
|
|
C3D_API void | registerPassInputs (ashes::WriteDescriptorSetArray const &writes, bool invertY=false) |
| Crée les entrées pour une passe.
|
|
C3D_API void | initialisePass (uint32_t passIndex) |
| Crée les descriptor sets pour la passe enregistrée à l'indice donné.
|
|
C3D_API void | initialisePasses () |
| Crée les descriptor sets pour toute les passes enregistrées.
|
|
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.
|
|
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é.
|
|
void | registerPass (ashes::CommandBuffer &commandBuffer) const |
| Prépare les commandes de dessin du quad, dans le tampon de commandes donné.
|
|
RenderSystem * | getRenderSystem () const |
|
RenderDevice const & | getDevice () const |
|
Sampler const & | getSampler () const |
|
◆ RenderQuad() [1/2]
Constructeur.
- Paramètres
-
[in] | device | Le RenderDevice. |
[in] | name | Le nom de la passe. |
[in] | samplerFilter | Le filtre d'échantillonnage pour la texture source. |
[in] | config | La configuration. |
◆ ~RenderQuad()
virtual C3D_API castor3d::RenderQuad::~RenderQuad |
( |
| ) |
|
|
virtual |
◆ RenderQuad() [2/2]
◆ cleanup()
C3D_API void castor3d::RenderQuad::cleanup |
( |
| ) |
|
◆ createPipeline()
C3D_API void castor3d::RenderQuad::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.
- Paramètres
-
[in] | size | Les dimensions de rendu. |
[in] | position | La position du rendu. |
[in] | program | Le programme shader. |
[in] | renderPass | La passe de rendu à utiliser. |
[in] | pushRanges | Les intervalles de push constants. |
[in] | dsState | L'état de profondeur et stencil. |
◆ createPipelineAndPass()
C3D_API void castor3d::RenderQuad::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.
- Paramètres
-
[in] | size | Les dimensions de rendu. |
[in] | position | La position du rendu. |
[in] | program | Le programme shader. |
[in] | renderPass | La passe de rendu à utiliser. |
[in] | writes | Les descriptor writes de la passe. |
[in] | pushRanges | Les intervalles de push constants. |
[in] | dsState | L'état de profondeur et stencil à utiliser. |
◆ getDevice()
RenderDevice const & castor3d::RenderQuad::getDevice |
( |
| ) |
const |
|
inline |
◆ getRenderSystem()
RenderSystem * castor3d::RenderQuad::getRenderSystem |
( |
| ) |
const |
|
inline |
◆ getSampler()
Sampler const & castor3d::RenderQuad::getSampler |
( |
| ) |
const |
|
inline |
◆ initialisePass()
C3D_API void castor3d::RenderQuad::initialisePass |
( |
uint32_t |
passIndex | ) |
|
Crée les descriptor sets pour la passe enregistrée à l'indice donné.
◆ initialisePasses()
C3D_API void castor3d::RenderQuad::initialisePasses |
( |
| ) |
|
Crée les descriptor sets pour toute les passes enregistrées.
◆ registerPass() [1/2]
void castor3d::RenderQuad::registerPass |
( |
ashes::CommandBuffer & |
commandBuffer | ) |
const |
|
inline |
Prépare les commandes de dessin du quad, dans le tampon de commandes donné.
- Paramètres
-
[in,out] | commandBuffer | Le tampon de commandes. |
Références registerPass().
◆ registerPass() [2/2]
C3D_API void castor3d::RenderQuad::registerPass |
( |
ashes::CommandBuffer & |
commandBuffer, |
|
|
uint32_t |
descriptorSetIndex |
|
) |
| const |
Prépare les commandes de dessin du quad, dans le tampon de commandes donné.
- Paramètres
-
[in,out] | commandBuffer | Le tampon de commandes. |
[in] | descriptorSetIndex | L'indice du descriptor set. |
Référencé par registerPass().
◆ registerPassInputs()
C3D_API void castor3d::RenderQuad::registerPassInputs |
( |
ashes::WriteDescriptorSetArray const & |
writes, |
|
|
bool |
invertY = false |
|
) |
| |
Crée les entrées pour une passe.
- Paramètres
-
[in] | writes | Les descriptor writes de la passe. |
[in] | invertY | true pour inverser le Y de l'image échantillonnée. |
◆ RenderQuadBuilderT
template<typename ConfigT , typename BuilderT >
◆ m_config
◆ m_device
◆ m_renderSystem
◆ m_sampler
La documentation de cette classe a été générée à partir du fichier suivant :