Castor3D  0.11.0
Multiplatform 3D engine
Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::RenderTechniquePass
Graphe d'héritage de castor3d::RenderTechniquePass:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::RenderTechniquePass:
Collaboration graph
[légende]

Fonctions membres publiques

C3D_API bool initialise (RenderDevice const &device, castor::Size const &size, LightVolumePassResult const *lpvResult=nullptr, TextureUnit const *vctFirstBounce=nullptr, TextureUnit const *vctSecondaryBounce=nullptr)
 Initialise la passe. Plus de détails...
 
C3D_API bool initialise (RenderDevice const &device, castor::Size const &size, RenderPassTimer &timer, uint32_t index, LightVolumePassResult const *lpvResult=nullptr, TextureUnit const *vctFirstBounce=nullptr, TextureUnit const *vctSecondaryBounce=nullptr)
 Initialise la passe. Plus de détails...
 
virtual C3D_API void accept (RenderTechniqueVisitor &visitor)
 Fonction d'acceptation de visiteur. Plus de détails...
 
C3D_API void update (GpuUpdater &updater)
 Met à jour la passe de rendu, au niveau GPU. Plus de détails...
 
C3D_API void update (CpuUpdater &updater)
 Met à jour la passe de rendu, au niveau CPU. Plus de détails...
 
ashes::Semaphore const & getSemaphore () const
 
- Fonctions membres publiques hérités de castor3d::SceneRenderPass
virtual C3D_API ~SceneRenderPass ()=default
 Destructeur. Plus de détails...
 
C3D_API bool initialise (RenderDevice const &device, castor::Size const &size)
 Initialise la passe. Plus de détails...
 
C3D_API bool initialise (RenderDevice const &device, castor::Size const &size, RenderPassTimer &timer, uint32_t index)
 Initialise la passe. Plus de détails...
 
C3D_API void cleanup (RenderDevice const &device)
 Nettoie la passe. Plus de détails...
 
C3D_API void update (CpuUpdater &updater)
 Met à jour la passe de rendu, au niveau CPU. 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 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 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 PipelineFlags prepareBackPipeline (BlendMode colourBlendMode, BlendMode alphaBlendMode, VkCompareOp alphaFunc, PassFlags const &passFlags, TextureFlagsArray const &textures, uint32_t heightMapIndex, ProgramFlags const &programFlags, SceneFlags const &sceneFlags, VkPrimitiveTopology topology, ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts)
 Prépare le pipeline qui correspond aux indicateurs donnés, pour les noeuds en back face culling. Plus de détails...
 
C3D_API void prepareBackPipeline (PipelineFlags &flags, ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts)
 Prépare le pipeline qui correspond aux indicateurs donnés, pour les noeuds en back face culling. Plus de détails...
 
C3D_API PipelineFlags prepareFrontPipeline (BlendMode colourBlendMode, BlendMode alphaBlendMode, VkCompareOp alphaFunc, PassFlags const &passFlags, TextureFlagsArray const &textures, uint32_t heightMapIndex, ProgramFlags const &programFlags, SceneFlags const &sceneFlags, VkPrimitiveTopology topology, ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts)
 Prépare le pipeline qui correspond aux indicateurs donnés, pour les noeuds en front face culling. Plus de détails...
 
C3D_API void prepareFrontPipeline (PipelineFlags &flags, ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts)
 Prépare le pipeline qui correspond aux indicateurs donnés, pour les noeuds en front face culling. Plus de détails...
 
C3D_API RenderPipelinegetPipelineFront (PipelineFlags flags) const
 Récupère le pipeline qui correspond aux indicateurs donnés, pour les faces avant supprimées. Plus de détails...
 
C3D_API RenderPipelinegetPipelineBack (PipelineFlags flags) const
 Récupère le pipeline qui correspond aux indicateurs donnés, pour les faces arrière supprimées. Plus de détails...
 
C3D_API SkinningRenderNode createSkinningNode (Pass &pass, RenderPipeline &pipeline, Submesh &submesh, Geometry &primitive, AnimatedSkeleton &skeleton)
 Crée un noeud de rendu animé. Plus de détails...
 
C3D_API MorphingRenderNode createMorphingNode (Pass &pass, RenderPipeline &pipeline, Submesh &submesh, Geometry &primitive, AnimatedMesh &mesh)
 Crée un noeud de rendu animé. Plus de détails...
 
C3D_API StaticRenderNode createStaticNode (Pass &pass, RenderPipeline &pipeline, Submesh &submesh, Geometry &primitive)
 Crée un noeud de rendu statique. Plus de détails...
 
C3D_API BillboardRenderNode createBillboardNode (Pass &pass, RenderPipeline &pipeline, BillboardBase &billboard)
 Crée un noeud de rendu statique. Plus de détails...
 
C3D_API void updatePipeline (RenderPipeline &pipeline)
 Met à jour lee pipeline opaque. Plus de détails...
 
C3D_API void initialiseUboDescriptor (ashes::DescriptorSetPool const &descriptorPool, BillboardRenderNode &node)
 Initialise l'ensemble de descripteurs d'UBO pour un noeud de billboard. Plus de détails...
 
C3D_API void initialiseUboDescriptor (ashes::DescriptorSetPool const &descriptorPool, MorphingRenderNode &node)
 Initialise l'ensemble de descripteurs d'UBO pour un noeud de morphing. Plus de détails...
 
C3D_API void initialiseUboDescriptor (ashes::DescriptorSetPool const &descriptorPool, SkinningRenderNode &node)
 Initialise l'ensemble de descripteurs d'UBO pour un noeud de skinning. Plus de détails...
 
C3D_API void initialiseUboDescriptor (ashes::DescriptorSetPool const &descriptorPool, StaticRenderNode &node)
 Initialise l'ensemble de descripteurs d'UBO pour un noeud statique. Plus de détails...
 
C3D_API void initialiseUboDescriptor (ashes::DescriptorSetPool const &descriptorPool, SubmeshSkinninRenderNodesByPassMap &nodes)
 Initialise l'ensemble de descripteurs d'UBO pour des noeuds de skining. Plus de détails...
 
C3D_API void initialiseUboDescriptor (ashes::DescriptorSetPool const &descriptorPool, SubmeshStaticRenderNodesByPassMap &nodes)
 Initialise l'ensemble de descripteurs d'UBO pour des noeuds statiques. Plus de détails...
 
C3D_API void initialiseTextureDescriptor (ashes::DescriptorSetPool const &descriptorPool, BillboardRenderNode &node, ShadowMapLightTypeArray const &shadowMaps)
 Initialise l'ensemble de descripteurs de textures pour un noeud de billboard. Plus de détails...
 
C3D_API void initialiseTextureDescriptor (ashes::DescriptorSetPool const &descriptorPool, MorphingRenderNode &node, ShadowMapLightTypeArray const &shadowMaps)
 Initialise l'ensemble de descripteurs de textures pour un noeud de morphing. Plus de détails...
 
C3D_API void initialiseTextureDescriptor (ashes::DescriptorSetPool const &descriptorPool, SkinningRenderNode &node, ShadowMapLightTypeArray const &shadowMaps)
 Initialise l'ensemble de descripteurs de textures pour un noeud de skinning. Plus de détails...
 
C3D_API void initialiseTextureDescriptor (ashes::DescriptorSetPool const &descriptorPool, StaticRenderNode &node, ShadowMapLightTypeArray const &shadowMaps)
 Initialise l'ensemble de descripteurs de textures pour un noeud statique. Plus de détails...
 
C3D_API void initialiseTextureDescriptor (ashes::DescriptorSetPool const &descriptorPool, SubmeshSkinninRenderNodesByPassMap &nodes, ShadowMapLightTypeArray const &shadowMaps)
 Initialise l'ensemble de descripteurs de textures pour des noeuds de skinning. Plus de détails...
 
C3D_API void initialiseTextureDescriptor (ashes::DescriptorSetPool const &descriptorPool, SubmeshStaticRenderNodesByPassMap &nodes, ShadowMapLightTypeArray const &shadowMaps)
 Initialise l'ensemble de descripteurs de textures pour des noeuds statiques. Plus de détails...
 
C3D_API void updateFlags (PipelineFlags &flags) const
 Modifie les indicateurs donnés pour le faire correspondre au pré-requis de la passe de rendus. Plus de détails...
 
virtual C3D_API TextureFlags getTexturesMask () const
 
bool isOrderIndependent () const
 
SceneCuller const & getCuller () const
 
SceneCullergetCuller ()
 
SceneUbogetSceneUbo ()
 
SceneUbo const & getSceneUbo () const
 
MatrixUbogetMatrixUbo () const
 
ashes::CommandBuffer const & getCommandBuffer () const
 
bool hasNodes () const
 
ashes::RenderPass const & getRenderPass () const
 
RenderPassTimer const & getTimer () const
 
RenderPassTimergetTimer ()
 
uint32_t getPipelinesCount () const
 
uint32_t getInstanceMult () const
 
bool isDirty () const
 
bool forceTwoSided () const
 

Fonctions membres protégées

C3D_API RenderTechniquePass (castor::String const &category, castor::String const &name, MatrixUbo &matrixUbo, SceneCuller &culler, bool environment, SceneNode const *ignored, SsaoConfig const &ssaoConfig, LpvGridConfigUbo const *lpvConfigUbo=nullptr, LayeredLpvGridConfigUbo const *llpvConfigUbo=nullptr, VoxelizerUbo const *vctConfigUbo=nullptr)
 Constructeur pour les noeuds opaques. Plus de détails...
 
C3D_API RenderTechniquePass (castor::String const &category, castor::String const &name, MatrixUbo &matrixUbo, SceneCuller &culler, bool oit, bool environment, SceneNode const *ignored, SsaoConfig const &ssaoConfig, LpvGridConfigUbo const *lpvConfigUbo=nullptr, LayeredLpvGridConfigUbo const *llpvConfigUbo=nullptr, VoxelizerUbo const *vctConfigUbo=nullptr)
 Constructeur pour les noeuds transparents. Plus de détails...
 
virtual C3D_API void doCleanup (RenderDevice const &device) override
 Nettoie la passe. Plus de détails...
 
ashes::VkDescriptorSetLayoutBindingArray doCreateUboBindings (PipelineFlags const &flags) const override
 Crée les attaches de layout de descripteurs communs pour les UBO. Plus de détails...
 
ashes::VkDescriptorSetLayoutBindingArray doCreateTextureBindings (PipelineFlags const &flags) const override
 Crée les attaches de layout de descripteurs communs pour les textures. Plus de détails...
 
ShaderPtr doGetVertexShaderSource (PipelineFlags const &flags) const override
 Récupère le source du vertex shader qui correspond aux indicateurs donnés. Plus de détails...
 
- Fonctions membres protégées hérités de castor3d::SceneRenderPass
C3D_API SceneRenderPass (castor::String const &category, castor::String const &name, Engine &engine, MatrixUbo &matrixUbo, SceneCuller &culler, RenderMode mode, bool oit, bool forceTwoSided, SceneNode const *ignored, uint32_t instanceMult)
 
C3D_API SceneRenderPass (castor::String const &category, castor::String const &name, Engine &engine, MatrixUbo &matrixUbo, SceneCuller &culler, uint32_t instanceMult=1u)
 Constructeur pour les noeuds opaques. Plus de détails...
 
C3D_API SceneRenderPass (castor::String const &category, castor::String const &name, Engine &engine, MatrixUbo &matrixUbo, SceneCuller &culler, bool oit, uint32_t instanceMult=1u)
 Constructeur pour les noeuds transparents. Plus de détails...
 
C3D_API SceneRenderPass (castor::String const &category, castor::String const &name, Engine &engine, MatrixUbo &matrixUbo, SceneCuller &culler, SceneNode const *ignored, uint32_t instanceMult=1u)
 Constructeur pour les noeuds opaques. Plus de détails...
 
C3D_API SceneRenderPass (castor::String const &category, castor::String const &name, Engine &engine, MatrixUbo &matrixUbo, SceneCuller &culler, bool oit, SceneNode const *ignored, uint32_t instanceMult=1u)
 Constructeur pour les noeuds transparents. Plus de détails...
 
C3D_API PassRenderNode doCreatePassRenderNode (Pass &pass, RenderPipeline &pipeline)
 Crée un noeud de rendu. Plus de détails...
 
C3D_API SceneRenderNode doCreateSceneRenderNode (Scene &scene, RenderPipeline &pipeline)
 Crée un noeud de rendu de scène. Plus de détails...
 
C3D_API ShaderProgramSPtr doGetProgram (PipelineFlags const &flags) const
 Récupère le programme shader correspondant aux indicateurs donnés. Plus de détails...
 
C3D_API uint32_t doCopyNodesMatrices (StaticRenderNodePtrArray const &renderNodes, std::vector< InstantiationData > &matrixBuffer) const
 Copie les matrices de noeuds instanciés dans le tampon de matrices donné. Plus de détails...
 
C3D_API uint32_t doCopyNodesMatrices (StaticRenderNodePtrArray const &renderNodes, std::vector< InstantiationData > &matrixBuffer, RenderInfo &info) const
 Copie les matrices de noeuds instanciés dans le tampon de matrices donné. Plus de détails...
 
C3D_API uint32_t doCopyNodesMatrices (SkinningRenderNodePtrArray const &renderNodes, std::vector< InstantiationData > &matrixBuffer) const
 Copie les matrices de noeuds instanciés dans le tampon de matrices donné. Plus de détails...
 
C3D_API uint32_t doCopyNodesMatrices (SkinningRenderNodePtrArray const &renderNodes, std::vector< InstantiationData > &matrixBuffer, RenderInfo &info) const
 Copie les matrices de noeuds instanciés dans le tampon de matrices donné. Plus de détails...
 
C3D_API uint32_t doCopyNodesBones (SkinningRenderNodePtrArray const &renderNodes, ShaderBuffer &bonesBuffer) const
 Copie les matrices de noeuds skinnés instanciés dans le tampon de matrices donné. Plus de détails...
 
C3D_API uint32_t doCopyNodesBones (SkinningRenderNodePtrArray const &renderNodes, ShaderBuffer &bonesBuffer, RenderInfo &info) const
 Copie les matrices de noeuds skinnés instanciés dans le tampon de matrices donné. Plus de détails...
 
C3D_API void doUpdate (SubmeshStaticRenderNodesPtrByPipelineMap &nodes)
 Met à jour des sous maillages instanciés. Plus de détails...
 
C3D_API void doUpdate (SubmeshStaticRenderNodesPtrByPipelineMap &nodes, RenderInfo &info)
 Met à jour des sous maillages instanciés. Plus de détails...
 
C3D_API void doUpdate (StaticRenderNodesPtrByPipelineMap &nodes)
 Met à jour des sous maillages non instanciés. Plus de détails...
 
C3D_API void doUpdate (StaticRenderNodesPtrByPipelineMap &nodes, RenderInfo &info)
 Met à jour des sous maillages non instanciés. Plus de détails...
 
C3D_API void doUpdate (SkinningRenderNodesPtrByPipelineMap &nodes)
 Met à jour des sous maillages non instanciés. Plus de détails...
 
C3D_API void doUpdate (SkinningRenderNodesPtrByPipelineMap &nodes, RenderInfo &info)
 Met à jour des sous maillages non instanciés. Plus de détails...
 
C3D_API void doUpdate (SubmeshSkinningRenderNodesPtrByPipelineMap &nodes)
 Met à jour des sous maillages instanciés. Plus de détails...
 
C3D_API void doUpdate (SubmeshSkinningRenderNodesPtrByPipelineMap &nodes, RenderInfo &info)
 Met à jour des sous maillages instanciés. Plus de détails...
 
C3D_API void doUpdate (MorphingRenderNodesPtrByPipelineMap &nodes)
 Met à jour des sous maillages non instanciés. Plus de détails...
 
C3D_API void doUpdate (MorphingRenderNodesPtrByPipelineMap &nodes, RenderInfo &info)
 Met à jour des sous maillages non instanciés. Plus de détails...
 
C3D_API void doUpdate (BillboardRenderNodesPtrByPipelineMap &nodes)
 Met à jour des billboards. Plus de détails...
 
C3D_API void doUpdate (BillboardRenderNodesPtrByPipelineMap &nodes, RenderInfo &info)
 Met à jour des billboards. Plus de détails...
 
virtual C3D_API void doUpdate (RenderQueueArray &queues)
 Met les données spécifiques. Plus de détails...
 
C3D_API std::map< PipelineFlags, RenderPipelineUPtr > & doGetFrontPipelines ()
 
C3D_API std::map< PipelineFlags, RenderPipelineUPtr > & doGetBackPipelines ()
 
C3D_API std::map< PipelineFlags, RenderPipelineUPtr > const & doGetFrontPipelines () const
 
C3D_API std::map< PipelineFlags, RenderPipelineUPtr > const & doGetBackPipelines () const
 
virtual C3D_API void doPrepareFrontPipeline (ShaderProgramSPtr program, ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts, PipelineFlags const &flags)
 Prépare le pipeline de rendu, en supprimant les faces avant. Plus de détails...
 
virtual C3D_API void doPrepareBackPipeline (ShaderProgramSPtr program, ashes::PipelineVertexInputStateCreateInfoCRefArray const &layouts, PipelineFlags const &flags)
 Prépare le pipeline de rendu, en supprimant les faces arrière. Plus de détails...
 

Attributs protégés

Scene const & m_scene
 
LpvGridConfigUbo const * m_lpvConfigUbo
 
LayeredLpvGridConfigUbo const * m_llpvConfigUbo
 
VoxelizerUbo const * m_vctConfigUbo
 
LightVolumePassResult const * m_lpvResult
 
TextureUnit const * m_vctFirstBounce
 
TextureUnit const * m_vctSecondaryBounce
 
Cameram_camera { nullptr }
 
SceneRenderNode m_sceneNode
 
bool m_environment { false }
 
SsaoConfig m_ssaoConfig
 
ashes::SemaphorePtr m_finished
 
- Attributs protégés hérités de castor3d::SceneRenderPass
RenderSystemm_renderSystem
 
MatrixUbom_matrixUbo
 
SceneCullerm_culler
 
RenderQueue m_renderQueue
 
castor::String m_category
 
RenderMode m_mode { RenderMode::eBoth }
 
bool m_oit { false }
 
bool m_forceTwoSided { false }
 
bool m_isDirty { true }
 
SceneUbo m_sceneUbo
 
ashes::RenderPassPtr m_renderPass
 
RenderPassTimerm_timer { nullptr }
 
uint32_t m_index { 0u }
 
RenderPassTimerSPtr m_ownTimer
 
castor::Size m_size
 
uint32_t const m_instanceMult { 1u }
 
std::map< size_t, UniformBufferOffsetT< ModelInstancesUboConfiguration > > m_modelsInstances
 

Membres hérités additionnels

- Types publics hérités de castor3d::SceneRenderPass
using DistanceSortedNodeMap = std::multimap< double, std::unique_ptr< DistanceRenderNodeBase > >
 
- Fonctions membres publiques statiques hérités de castor3d::SceneRenderPass
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...
 

Documentation des constructeurs et destructeur

◆ RenderTechniquePass() [1/2]

C3D_API castor3d::RenderTechniquePass::RenderTechniquePass ( castor::String const &  category,
castor::String const &  name,
MatrixUbo matrixUbo,
SceneCuller culler,
bool  environment,
SceneNode const *  ignored,
SsaoConfig const &  ssaoConfig,
LpvGridConfigUbo const *  lpvConfigUbo = nullptr,
LayeredLpvGridConfigUbo const *  llpvConfigUbo = nullptr,
VoxelizerUbo const *  vctConfigUbo = nullptr 
)
protected

Constructeur pour les noeuds opaques.

Paramètres
[in]categoryLa catégorie de la passe.
[in]nameLe nom de la passe.
[in]matrixUboL'UBO de matrices de la scène.
[in]cullerLe culler pour cette passe.
[in]environmentPasse utilisée pour le rendu d'une texture d'environnement.
[in]ignoredLes géométries attachées à ce noeud seront ignorées lors du rendu.
[in]ssaoConfigLa configuration du SSAO.
[in]lpvConfigUboLa configuration des LPV, si nécessaire.
[in]llpvConfigUboLa configuration des Layered LPV, si nécessaire.
[in]vctConfigUboLa configuration du VCT, si nécessaire.

◆ RenderTechniquePass() [2/2]

C3D_API castor3d::RenderTechniquePass::RenderTechniquePass ( castor::String const &  category,
castor::String const &  name,
MatrixUbo matrixUbo,
SceneCuller culler,
bool  oit,
bool  environment,
SceneNode const *  ignored,
SsaoConfig const &  ssaoConfig,
LpvGridConfigUbo const *  lpvConfigUbo = nullptr,
LayeredLpvGridConfigUbo const *  llpvConfigUbo = nullptr,
VoxelizerUbo const *  vctConfigUbo = nullptr 
)
protected

Constructeur pour les noeuds transparents.

Paramètres
[in]categoryLa catégorie de la passe.
[in]nameLe nom de la technique.
[in]matrixUboL'UBO de matrices de la scène.
[in]cullerLe culler pour cette passe.
[in]oitLe statut d'OIT.
[in]environmentPasse utilisée pour le rendu d'une texture d'environnement.
[in]ignoredLes géométries attachées à ce noeud seront ignorées lors du rendu.
[in]ssaoConfigLa configuration du SSAO.
[in]lpvConfigUboLa configuration des LPV, si nécessaire.
[in]llpvConfigUboLa configuration des Layered LPV, si nécessaire.
[in]vctConfigUboLa configuration du VCT, si nécessaire.

Documentation des fonctions membres

◆ accept()

virtual C3D_API void castor3d::RenderTechniquePass::accept ( RenderTechniqueVisitor visitor)
virtual

Fonction d'acceptation de visiteur.

Paramètres
visitorLe ... visiteur.

Réimplémentée dans castor3d::ForwardRenderTechniquePass, castor3d::TransparentPass, et castor3d::OpaquePass.

◆ doCleanup()

virtual C3D_API void castor3d::RenderTechniquePass::doCleanup ( RenderDevice const &  device)
overrideprotectedvirtual

Nettoie la passe.

Implémente castor3d::SceneRenderPass.

Réimplémentée dans castor3d::ForwardRenderTechniquePass, et castor3d::DepthPass.

◆ doCreateTextureBindings()

ashes::VkDescriptorSetLayoutBindingArray castor3d::RenderTechniquePass::doCreateTextureBindings ( PipelineFlags const &  flags) const
overrideprotectedvirtual

Crée les attaches de layout de descripteurs communs pour les textures.

Paramètres
[in]flagsLes indicateurs de pipeline.

Implémente castor3d::SceneRenderPass.

◆ doCreateUboBindings()

ashes::VkDescriptorSetLayoutBindingArray castor3d::RenderTechniquePass::doCreateUboBindings ( PipelineFlags const &  flags) const
overrideprotectedvirtual

Crée les attaches de layout de descripteurs communs pour les UBO.

Paramètres
[in]flagsLes indicateurs de pipeline.

Réimplémentée à partir de castor3d::SceneRenderPass.

◆ doGetVertexShaderSource()

ShaderPtr castor3d::RenderTechniquePass::doGetVertexShaderSource ( PipelineFlags const &  flags) const
overrideprotectedvirtual

Récupère le source du vertex shader qui correspond aux indicateurs donnés.

Paramètres
[in]flagsLes indicateurs de pipeline.

Réimplémentée à partir de castor3d::SceneRenderPass.

◆ getSemaphore()

ashes::Semaphore const& castor3d::RenderTechniquePass::getSemaphore ( ) const
inline

name Accesseurs.

Références m_finished.

◆ initialise() [1/2]

C3D_API bool castor3d::RenderTechniquePass::initialise ( RenderDevice const &  device,
castor::Size const &  size,
LightVolumePassResult const *  lpvResult = nullptr,
TextureUnit const *  vctFirstBounce = nullptr,
TextureUnit const *  vctSecondaryBounce = nullptr 
)

Initialise la passe.

Paramètres
[in]deviceLe device actuel.
[in]sizeLes dimensions voulues pour la passe.
[in]lpvResultLe résultat du LPV, si nécessaire.
[in]vctFirstBounceLe résultat du premier rebond de VCT, si nécessaire.
[in]vctSecondaryBounceLe résultat du second rebond de VCT, si nécessaire.
Renvoie
true si tout s'est bien passé.

◆ initialise() [2/2]

C3D_API bool castor3d::RenderTechniquePass::initialise ( RenderDevice const &  device,
castor::Size const &  size,
RenderPassTimer timer,
uint32_t  index,
LightVolumePassResult const *  lpvResult = nullptr,
TextureUnit const *  vctFirstBounce = nullptr,
TextureUnit const *  vctSecondaryBounce = nullptr 
)

Initialise la passe.

Paramètres
[in]deviceLe device GPU.
[in]sizeLes dimensions voulues pour la passe.
[in]timerLe timer parent.
[in]indexL'indice de la passe, dans le parent.
[in]lpvResultLe résultat du LPV, si nécessaire.
[in]vctFirstBounceLe résultat du premier rebond de VCT, si nécessaire.
[in]vctSecondaryBounceLe résultat du second rebond de VCT, si nécessaire.
Renvoie
true si tout s'est bien passé.

◆ update() [1/2]

C3D_API void castor3d::RenderTechniquePass::update ( GpuUpdater updater)

Met à jour la passe de rendu, au niveau GPU.

Paramètres
[in,out]updaterLes données d'update.

◆ update() [2/2]

C3D_API void castor3d::SceneRenderPass::update

Met à jour la passe de rendu, au niveau CPU.

Paramètres
[in,out]updaterLes données d'update.

Documentation des données membres

◆ m_camera

Camera* castor3d::RenderTechniquePass::m_camera { nullptr }
protected

◆ m_environment

bool castor3d::RenderTechniquePass::m_environment { false }
protected

◆ m_finished

ashes::SemaphorePtr castor3d::RenderTechniquePass::m_finished
protected

Référencé par getSemaphore().

◆ m_llpvConfigUbo

LayeredLpvGridConfigUbo const* castor3d::RenderTechniquePass::m_llpvConfigUbo
protected

◆ m_lpvConfigUbo

LpvGridConfigUbo const* castor3d::RenderTechniquePass::m_lpvConfigUbo
protected

◆ m_lpvResult

LightVolumePassResult const* castor3d::RenderTechniquePass::m_lpvResult
protected

◆ m_scene

Scene const& castor3d::RenderTechniquePass::m_scene
protected

◆ m_sceneNode

SceneRenderNode castor3d::RenderTechniquePass::m_sceneNode
protected

◆ m_ssaoConfig

SsaoConfig castor3d::RenderTechniquePass::m_ssaoConfig
protected

◆ m_vctConfigUbo

VoxelizerUbo const* castor3d::RenderTechniquePass::m_vctConfigUbo
protected

◆ m_vctFirstBounce

TextureUnit const* castor3d::RenderTechniquePass::m_vctFirstBounce
protected

◆ m_vctSecondaryBounce

TextureUnit const* castor3d::RenderTechniquePass::m_vctSecondaryBounce
protected

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