Castor3D 0.14.0
Multiplatform 3D engine
Types publics | Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor3d::RenderPipeline

#include <RenderPipeline.hpp>

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

Types publics

enum  Descriptor {
  eTextures , eBuffers , eMeshBuffers , eVertexBuffers ,
  Descriptor_COUNT , Descriptor_MIN = eTextures , Descriptor_MAX = Descriptor_COUNT-1
}
 

Fonctions membres publiques

C3D_API RenderPipeline (RenderNodesPass &owner, RenderSystem &renderSystem, ashes::PipelineDepthStencilStateCreateInfo dsState, ashes::PipelineRasterizationStateCreateInfo rsState, ashes::PipelineColorBlendStateCreateInfo blState, ashes::PipelineMultisampleStateCreateInfo msState, ShaderProgramSPtr program, PipelineFlags const &flags)
 Constructeur. Plus de détails...
 
C3D_API ~RenderPipeline ()
 Destructeur. Plus de détails...
 
C3D_API void initialise (RenderDevice const &device, VkRenderPass renderPass)
 Initialise le pipeline. Plus de détails...
 
C3D_API void cleanup (RenderDevice const &device)
 Nettoie le pipeline. Plus de détails...
 
C3D_API void setVertexLayouts (ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts)
 
void setAdditionalDescriptorSetLayout (ashes::DescriptorSetLayout const &layout)
 
void setAdditionalDescriptorSet (ashes::DescriptorSet const &descriptorSet)
 
void setMeshletDescriptorSetLayout (ashes::DescriptorSetLayout const &layout)
 
void setVertexLayouts (std::vector< ashes::PipelineVertexInputStateCreateInfo > layouts)
 
void setPushConstantRanges (ashes::VkPushConstantRangeArray const &pushConstantRanges)
 
void setViewport (VkViewport const &viewport)
 
void setScissor (VkRect2D const &scissor)
 
ashes::DescriptorSet const & getAdditionalDescriptorSet () const
 
PipelineFlags const & getFlags () const
 
bool hasPipeline () const
 
ashes::GraphicsPipeline const & getPipeline () const
 
ashes::PipelineLayout const & getPipelineLayout () const
 
ashes::DescriptorSetLayout const & getAdditionalDescriptorSetLayout () const
 
bool hasAdditionalDescriptorSetLayout () const
 
ashes::DescriptorSetLayout const & getMeshletDescriptorSetLayout () const
 
bool hasMeshletDescriptorSetLayout () const
 
RenderSystemgetRenderSystem () const
 

Documentation des énumérations membres

◆ Descriptor

Valeurs énumérées
eTextures 
eBuffers 
eMeshBuffers 
eVertexBuffers 
Descriptor_COUNT 
Descriptor_MIN 
Descriptor_MAX 

Documentation des constructeurs et destructeur

◆ RenderPipeline()

C3D_API castor3d::RenderPipeline::RenderPipeline ( RenderNodesPass owner,
RenderSystem renderSystem,
ashes::PipelineDepthStencilStateCreateInfo  dsState,
ashes::PipelineRasterizationStateCreateInfo  rsState,
ashes::PipelineColorBlendStateCreateInfo  blState,
ashes::PipelineMultisampleStateCreateInfo  msState,
ShaderProgramSPtr  program,
PipelineFlags const &  flags 
)
explicit

Constructeur.

Paramètres
[in]ownerLa passe de rendu parente.
[in]renderSystemLe RenderSystem.
[in]dsStateL'état de stencil et profondeur.
[in]rsStateL'état de rastériseur.
[in]blStateL'état de mélange.
[in]msStateL'état de multi-échantillonnage.
[in]programLe programme shader.
[in]flagsLes indicateurs de création.

◆ ~RenderPipeline()

C3D_API castor3d::RenderPipeline::~RenderPipeline ( )

Destructeur.

Documentation des fonctions membres

◆ cleanup()

C3D_API void castor3d::RenderPipeline::cleanup ( RenderDevice const &  device)

Nettoie le pipeline.

Paramètres
[in]deviceLe device GPU.

◆ getAdditionalDescriptorSet()

ashes::DescriptorSet const & castor3d::RenderPipeline::getAdditionalDescriptorSet ( ) const
inline

name Accesseurs.

◆ getAdditionalDescriptorSetLayout()

ashes::DescriptorSetLayout const & castor3d::RenderPipeline::getAdditionalDescriptorSetLayout ( ) const
inline

◆ getFlags()

PipelineFlags const & castor3d::RenderPipeline::getFlags ( ) const
inline

◆ getMeshletDescriptorSetLayout()

ashes::DescriptorSetLayout const & castor3d::RenderPipeline::getMeshletDescriptorSetLayout ( ) const
inline

◆ getPipeline()

ashes::GraphicsPipeline const & castor3d::RenderPipeline::getPipeline ( ) const
inline

Références hasPipeline().

Voici le graphe d'appel pour cette fonction :

◆ getPipelineLayout()

ashes::PipelineLayout const & castor3d::RenderPipeline::getPipelineLayout ( ) const
inline

◆ getRenderSystem()

RenderSystem & castor3d::RenderPipeline::getRenderSystem ( ) const
inline

◆ hasAdditionalDescriptorSetLayout()

bool castor3d::RenderPipeline::hasAdditionalDescriptorSetLayout ( ) const
inline

◆ hasMeshletDescriptorSetLayout()

bool castor3d::RenderPipeline::hasMeshletDescriptorSetLayout ( ) const
inline

◆ hasPipeline()

bool castor3d::RenderPipeline::hasPipeline ( ) const
inline

Référencé par getPipeline().

Voici le graphe des appelants de cette fonction :

◆ initialise()

C3D_API void castor3d::RenderPipeline::initialise ( RenderDevice const &  device,
VkRenderPass  renderPass 
)

Initialise le pipeline.

Paramètres
[in]deviceLe device GPU.
[in]renderPassLa passe de rendu à laquelle ce pipeline est lié.

◆ setAdditionalDescriptorSet()

void castor3d::RenderPipeline::setAdditionalDescriptorSet ( ashes::DescriptorSet const &  descriptorSet)
inline

◆ setAdditionalDescriptorSetLayout()

void castor3d::RenderPipeline::setAdditionalDescriptorSetLayout ( ashes::DescriptorSetLayout const &  layout)
inline

◆ setMeshletDescriptorSetLayout()

void castor3d::RenderPipeline::setMeshletDescriptorSetLayout ( ashes::DescriptorSetLayout const &  layout)
inline

◆ setPushConstantRanges()

void castor3d::RenderPipeline::setPushConstantRanges ( ashes::VkPushConstantRangeArray const &  pushConstantRanges)
inline

◆ setScissor()

void castor3d::RenderPipeline::setScissor ( VkRect2D const &  scissor)
inline

◆ setVertexLayouts() [1/2]

C3D_API void castor3d::RenderPipeline::setVertexLayouts ( ashes::PipelineVertexInputStateCreateInfoCRefArray const &  layouts)

name Mutateurs.

Remarques
Ils doivent être appelés avant l'appel à initialise().

◆ setVertexLayouts() [2/2]

void castor3d::RenderPipeline::setVertexLayouts ( std::vector< ashes::PipelineVertexInputStateCreateInfo >  layouts)
inline

◆ setViewport()

void castor3d::RenderPipeline::setViewport ( VkViewport const &  viewport)
inline

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