![]() |
Castor3D 0.13.0
Multiplatform 3D engine
|
#include <RenderTechniquePass.hpp>
Fonctions membres publiques | |
virtual C3D_API void | accept (RenderTechniqueVisitor &visitor) |
Fonction d'acceptation de visiteur. Plus de détails... | |
virtual C3D_API void | update (CpuUpdater &updater) |
Met à jour la passe de rendu, au niveau CPU. Plus de détails... | |
ashes::Semaphore const & | getSemaphore () const |
C3D_API ShaderFlags | getShaderFlags () const override |
Scene const & | getScene () |
![]() | |
C3D_API | ~RenderNodesPass () override |
Destructeur. Plus de détails... | |
virtual C3D_API void | update (CpuUpdater &updater) |
Met à jour la passe de rendu, au niveau CPU. Plus de détails... | |
C3D_API ShaderPtr | getTaskShaderSource (PipelineFlags const &flags) const |
Récupère le source du task shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API ShaderPtr | getMeshShaderSource (PipelineFlags const &flags) const |
Récupère le source du mesh shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API ShaderPtr | getVertexShaderSource (PipelineFlags const &flags) const |
Récupère le source du vertex shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API ShaderPtr | getHullShaderSource (PipelineFlags const &flags) const |
Récupère le source du hull shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API ShaderPtr | getDomainShaderSource (PipelineFlags const &flags) const |
Récupère le source du domain shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API ShaderPtr | getGeometryShaderSource (PipelineFlags const &flags) const |
Récupère le source du geometry shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API ShaderPtr | getPixelShaderSource (PipelineFlags const &flags) const |
Récupère le source du pixel shader qui correspond aux indicateurs donnés. Plus de détails... | |
C3D_API SubmeshFlags | adjustFlags (SubmeshFlags flags) const |
Ajuste les flags donnés pour qu'ils correspondent aux pré-requis de la passe. Plus de détails... | |
C3D_API PassFlags | adjustFlags (PassFlags flags) const |
Ajuste les flags donnés pour qu'ils correspondent aux pré-requis de la passe. Plus de détails... | |
C3D_API ProgramFlags | adjustFlags (ProgramFlags flags) const |
Ajuste les flags donnés pour qu'ils correspondent aux pré-requis de la passe. Plus de détails... | |
C3D_API SceneFlags | adjustFlags (SceneFlags flags) const |
Ajuste les flags donnés pour qu'ils correspondent aux pré-requis de la passe. Plus de détails... | |
C3D_API PipelineFlags | createPipelineFlags (BlendMode colourBlendMode, BlendMode alphaBlendMode, PassFlags passFlags, RenderPassTypeID renderPassTypeID, PassTypeID passTypeID, uint32_t heightTextureIndex, VkCompareOp alphaFunc, VkCompareOp blendAlphaFunc, TextureFlagsArray const &textures, SubmeshFlags const &submeshFlags, ProgramFlags const &programFlags, SceneFlags const &sceneFlags, VkPrimitiveTopology topology, bool isFrontCulled, GpuBufferOffsetT< castor::Point4f > const &morphTargets) |
Crée les indicateurs de pipeline pour la configuration donnée. Plus de détails... | |
C3D_API PipelineFlags | createPipelineFlags (Pass const &pass, TextureFlagsArray const &textures, SubmeshFlags const &submeshFlags, ProgramFlags const &programFlags, SceneFlags const &sceneFlags, VkPrimitiveTopology topology, bool isFrontCulled, GpuBufferOffsetT< castor::Point4f > const &morphTargets) |
Crée les indicateurs de pipeline pour la configuration donnée. Plus de détails... | |
C3D_API RenderPipeline & | prepareBackPipeline (PipelineFlags pipelineFlags, ashes::PipelineVertexInputStateCreateInfoCRefArray const &vertexLayouts, ashes::DescriptorSetLayout const *meshletDescriptorLayout) |
Prépare le pipeline qui correspond aux indicateurs donnés, pour les noeuds en back face culling. Plus de détails... | |
C3D_API RenderPipeline & | prepareFrontPipeline (PipelineFlags pipelineFlags, ashes::PipelineVertexInputStateCreateInfoCRefArray const &vertexLayouts, ashes::DescriptorSetLayout const *meshletDescriptorLayout) |
Prépare le pipeline qui correspond aux indicateurs donnés, pour les noeuds en front face culling. Plus de détails... | |
C3D_API void | initialiseAdditionalDescriptor (RenderPipeline &pipeline, ShadowMapLightTypeArray const &shadowMaps, GpuBufferOffsetT< castor::Point4f > const &morphTargets) |
Initialise l'ensemble de descripteurs additionnels. Plus de détails... | |
C3D_API FilteredTextureFlags | filterTexturesFlags (TextureFlagsArray const &textures) const |
Filtre les indicateurs de textures donnés en utilisant ceux voulus par cette passe. Plus de détails... | |
C3D_API void | setIgnoredNode (SceneNode const &node) |
Définit le noeud ignoré. Plus de détails... | |
virtual C3D_API TextureFlags | getTexturesMask () const |
C3D_API bool | isValidPass (Pass const &pass) const |
C3D_API bool | isValidRenderable (RenderedObject const &object) const |
C3D_API bool | hasNodes () const |
C3D_API bool | isPassEnabled () const |
C3D_API Scene & | getScene () const |
C3D_API SceneNode const * | getIgnoredNode () const |
bool | isOrderIndependent () const |
SceneCuller const & | getCuller () const |
SceneCuller & | getCuller () |
SceneUbo & | getSceneUbo () |
SceneUbo const & | getSceneUbo () const |
MatrixUbo & | getMatrixUbo () const |
uint32_t | getPipelinesCount () const |
bool | isDirty () const |
bool | isMeshShading () const |
bool | forceTwoSided () const |
RenderMode | getRenderMode () const |
castor::String const & | getTypeName () const |
RenderPassTypeID | getTypeID () const |
Fonctions membres protégées | |
C3D_API | RenderTechniquePass (RenderTechnique *parent, crg::FramePass const &pass, crg::GraphContext &context, crg::RunnableGraph &graph, RenderDevice const &device, castor::String const &typeName, castor::String const &category, castor::String const &name, RenderNodesPassDesc const &renderPassDesc, RenderTechniquePassDesc const &techniquePassDesc) |
Constructeur. Plus de détails... | |
C3D_API void | doUpdateUbos (CpuUpdater &updater) override |
Met à jour la passe de rendu, au niveau CPU. Plus de détails... | |
C3D_API ProgramFlags | doAdjustProgramFlags (ProgramFlags flags) const override |
C3D_API SceneFlags | doAdjustSceneFlags (SceneFlags flags) const override |
C3D_API void | doAddShadowBindings (ashes::VkDescriptorSetLayoutBindingArray &bindings, uint32_t &index) const |
C3D_API void | doAddEnvBindings (ashes::VkDescriptorSetLayoutBindingArray &bindings, uint32_t &index) const |
C3D_API void | doAddGIBindings (ashes::VkDescriptorSetLayoutBindingArray &bindings, uint32_t &index) const |
C3D_API void | doAddShadowDescriptor (ashes::WriteDescriptorSetArray &descriptorWrites, ShadowMapLightTypeArray const &shadowMaps, uint32_t &index) const |
C3D_API void | doAddEnvDescriptor (ashes::WriteDescriptorSetArray &descriptorWrites, ShadowMapLightTypeArray const &shadowMaps, uint32_t &index) const |
C3D_API void | doAddGIDescriptor (ashes::WriteDescriptorSetArray &descriptorWrites, ShadowMapLightTypeArray const &shadowMaps, uint32_t &index) const |
![]() | |
C3D_API | RenderNodesPass (crg::FramePass const &pass, crg::GraphContext &context, crg::RunnableGraph &graph, RenderDevice const &device, castor::String const &typeName, castor::String const &category, castor::String const &name, RenderNodesPassDesc const &desc) |
Constructeur. Plus de détails... | |
virtual C3D_API void | doUpdate (RenderQueueArray &queues) |
Met les données spécifiques. Plus de détails... | |
virtual C3D_API void | doUpdateUbos (CpuUpdater &updater) |
Met à jour la passe de rendu, au niveau CPU. Plus de détails... | |
virtual C3D_API void | doFillAdditionalBindings (ashes::VkDescriptorSetLayoutBindingArray &bindings) const =0 |
Remplit les attaches de layout de descripteurs spécifiques à une passe de rendu. Plus de détails... | |
virtual C3D_API bool | doAreValidPassFlags (PassFlags const &passFlags) const |
virtual C3D_API bool | doIsValidPass (Pass const &pass) const |
virtual C3D_API bool | doIsValidRenderable (RenderedObject const &object) const |
virtual C3D_API SubmeshFlags | doAdjustSubmeshFlags (SubmeshFlags flags) const |
virtual C3D_API PassFlags | doAdjustPassFlags (PassFlags flags) const |
virtual C3D_API ProgramFlags | doAdjustProgramFlags (ProgramFlags flags) const |
virtual C3D_API SceneFlags | doAdjustSceneFlags (SceneFlags flags) const |
C3D_API ShaderProgramSPtr | doGetProgram (PipelineFlags const &flags, VkCullModeFlags cullMode=VK_CULL_MODE_NONE) |
Membres hérités additionnels | |
![]() | |
static C3D_API ashes::PipelineColorBlendStateCreateInfo | createBlendState (BlendMode colourBlendMode, BlendMode alphaBlendMode, uint32_t attachesCount) |
Crée un état de mélange correspondant aux modes de mélange donnés. Plus de détails... | |
|
protected |
Constructeur.
[in] | parent | La technique parente. |
[in] | pass | La frame pass parente. |
[in] | context | Le contexte de rendu. |
[in] | graph | Le runnable graph. |
[in] | device | Le device GPU. |
[in] | typeName | Le nom du type de la passe. |
[in] | category | La catégorie de la passe. |
[in] | name | Le nom de la passe. |
[in] | renderPassDesc | Les données de construction de passe de rendu de scène. |
[in] | techniquePassDesc | Les données de construction de passe de rendu de technique. |
|
virtual |
Fonction d'acceptation de visiteur.
visitor | Le ... visiteur. |
Réimplémentée dans castor3d::ForwardRenderTechniquePass, castor3d::OpaquePass, et castor3d::TransparentPass.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
overrideprotectedvirtual |
Réimplémentée à partir de castor3d::RenderNodesPass.
|
overrideprotectedvirtual |
Réimplémentée à partir de castor3d::RenderNodesPass.
|
overrideprotectedvirtual |
Met à jour la passe de rendu, au niveau CPU.
[in,out] | updater | Les données d'update. |
Réimplémentée à partir de castor3d::RenderNodesPass.
|
inline |
name Accesseurs.
Références m_finished.
|
inlineoverridevirtual |
Réimplémentée à partir de castor3d::RenderNodesPass.
Références castor3d::eNone, castor3d::eTangentSpace, castor3d::eVelocity, castor3d::eViewSpace, castor3d::eWorldSpace, et m_hasVelocity.
|
virtual |
Met à jour la passe de rendu, au niveau CPU.
[in,out] | updater | Les données d'update. |
Réimplémentée à partir de castor3d::RenderNodesPass.
|
protected |
|
protected |
|
protected |
Référencé par getSemaphore().
|
protected |
Référencé par getShaderFlags().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Référencé par getScene().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |