#include <RenderQuad.hpp>
|
virtual C3D_API | ~RenderQuad () noexcept |
|
C3D_API | RenderQuad (RenderQuad &&rhs) noexcept |
|
C3D_API void | cleanup () noexcept |
| Cleans up GPU objects.
|
|
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 }) |
| Creates the rendering pipeline.
|
|
C3D_API void | registerPassInputs (ashes::WriteDescriptorSetArray const &writes, bool invertY=false) |
| Creates the entries for one pass.
|
|
C3D_API void | initialisePass (uint32_t passIndex) |
| Initialises the descriptor sets for the registered pass at given index.
|
|
C3D_API void | initialisePasses () |
| Initialises the descriptor sets for all registered passes.
|
|
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 }) |
| Creates the rendering pipeline and initialises the quad for one pass.
|
|
C3D_API void | registerPass (ashes::CommandBuffer &commandBuffer, uint32_t descriptorSetIndex) const |
| Prpares the commands to render the quad, inside given command buffer.
|
|
void | registerPass (ashes::CommandBuffer &commandBuffer) const |
| Prpares the commands to render the quad, inside given command buffer.
|
|
RenderSystem * | getRenderSystem () const noexcept |
|
RenderDevice const & | getDevice () const noexcept |
|
Sampler const & | getSampler () const noexcept |
|
| NamedBaseT (T name) noexcept |
| Constructor.
|
|
T const & | getName () const noexcept |
| Retrieves the name.
|
|
void | rename (T name) noexcept |
|
◆ RenderQuad() [1/2]
Constructor.
- Parameters
-
[in] | device | The RenderDevice. |
[in] | name | The pass name. |
[in] | samplerFilter | The sampler filter for the source texture. |
[in] | config | The configuration. |
◆ ~RenderQuad()
virtual C3D_API castor3d::RenderQuad::~RenderQuad |
( |
| ) |
|
|
virtualnoexcept |
◆ RenderQuad() [2/2]
◆ cleanup()
C3D_API void castor3d::RenderQuad::cleanup |
( |
| ) |
|
|
noexcept |
◆ 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 } ) |
Creates the rendering pipeline.
- Parameters
-
[in] | size | The render size. |
[in] | position | The render position. |
[in] | program | The shader program. |
[in] | renderPass | The render pass to use. |
[in] | pushRanges | The push constant ranges. |
[in] | dsState | The depth and stencil state. |
◆ 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 } ) |
Creates the rendering pipeline and initialises the quad for one pass.
- Parameters
-
[in] | size | The render size. |
[in] | position | The render position. |
[in] | program | The shader program. |
[in] | renderPass | The render pass to use. |
[in] | writes | The pass descriptor writes. |
[in] | pushRanges | The push constant ranges. |
[in] | dsState | The depth stencil state to use. |
◆ getDevice()
RenderDevice const & castor3d::RenderQuad::getDevice |
( |
| ) |
const |
|
inlinenoexcept |
◆ getRenderSystem()
RenderSystem * castor3d::RenderQuad::getRenderSystem |
( |
| ) |
const |
|
inlinenoexcept |
◆ getSampler()
Sampler const & castor3d::RenderQuad::getSampler |
( |
| ) |
const |
|
inlinenoexcept |
◆ initialisePass()
C3D_API void castor3d::RenderQuad::initialisePass |
( |
uint32_t | passIndex | ) |
|
Initialises the descriptor sets for the registered pass at given index.
◆ initialisePasses()
C3D_API void castor3d::RenderQuad::initialisePasses |
( |
| ) |
|
Initialises the descriptor sets for all registered passes.
◆ registerPass() [1/2]
void castor3d::RenderQuad::registerPass |
( |
ashes::CommandBuffer & | commandBuffer | ) |
const |
|
inline |
Prpares the commands to render the quad, inside given command buffer.
- Parameters
-
[in,out] | commandBuffer | The command buffer. |
References registerPass().
◆ registerPass() [2/2]
C3D_API void castor3d::RenderQuad::registerPass |
( |
ashes::CommandBuffer & | commandBuffer, |
|
|
uint32_t | descriptorSetIndex ) const |
Prpares the commands to render the quad, inside given command buffer.
- Parameters
-
[in,out] | commandBuffer | The command buffer. |
[in] | descriptorSetIndex | The render descriptor set index. |
Referenced by registerPass().
◆ registerPassInputs()
C3D_API void castor3d::RenderQuad::registerPassInputs |
( |
ashes::WriteDescriptorSetArray const & | writes, |
|
|
bool | invertY = false ) |
Creates the entries for one pass.
- Parameters
-
[in] | writes | The pass descriptor writes. |
[in] | invertY | true to Y invert the sampled image. |
◆ RenderQuadBuilderT
template<typename ConfigT , typename BuilderT >
◆ m_config
◆ m_device
◆ m_renderSystem
◆ m_sampler
The documentation for this class was generated from the following file: