Castor3D  0.11.0
Multiplatform 3D engine
Fonctions membres publiques | Liste de tous les membres
Référence de la structure castor3d::MeshLightPass::Program

Classe de base pour les programmes de passe d'éclairage nécessitant un maillage plutôt qu'un quad. Plus de détails...

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

Fonctions membres publiques

 Program (Engine &engine, RenderDevice const &device, castor::String const &name, ShaderModule const &vtx, ShaderModule const &pxl, bool hasShadows, bool hasVoxels, bool generatesIndirect)
 Constructeur. Plus de détails...
 
virtual ~Program ()
 Destructeur. Plus de détails...
 
- Fonctions membres publiques hérités de castor3d::LightPass::Program
 Program (Engine &engine, RenderDevice const &device, castor::String const &name, ShaderModule const &vtx, ShaderModule const &pxl, bool hasShadows, bool hasVoxels, bool generatesIndirect)
 Constructeur. Plus de détails...
 
void initialise (ashes::VertexBufferBase &vbo, ashes::PipelineVertexInputStateCreateInfo const &vertexLayout, ashes::RenderPass const &firstRenderPass, ashes::RenderPass const &blendRenderPass, MatrixUbo &matrixUbo, SceneUbo &sceneUbo, GpInfoUbo const &gpInfoUbo, UniformBufferT< ModelMatrixUboConfiguration > const *modelMatrixUbo, VoxelizerUbo const *voxelUbo)
 Initialise le programme et son pipeline. Plus de détails...
 
void cleanup ()
 Nettoie le programme et son pipeline. Plus de détails...
 
void bind (Light const &light)
 Active une source lumineuse. Plus de détails...
 
void render (ashes::CommandBuffer &commandBuffer, uint32_t count, bool first, uint32_t offset) const
 Dessine la passe d'éclairage. Plus de détails...
 
ashes::DescriptorSetLayout const & getUboDescriptorLayout () const
 
ashes::DescriptorSetLayout const & getTextureDescriptorLayout () const
 
ashes::DescriptorSetPool const & getUboDescriptorPool () const
 
ashes::DescriptorSetPool const & getTextureDescriptorPool () const
 
ashes::PipelineLayout const & getPipelineLayout () const
 

Membres hérités additionnels

- Attributs publics hérités de castor3d::LightPass::Program
Enginem_engine
 
RenderDevice const & m_device
 
ashes::PipelineShaderStageCreateInfoArray m_program
 
ashes::DescriptorSetLayoutPtr m_uboDescriptorLayout
 
ashes::DescriptorSetPoolPtr m_uboDescriptorPool
 
ashes::DescriptorSetLayoutPtr m_textureDescriptorLayout
 
ashes::DescriptorSetPoolPtr m_textureDescriptorPool
 
ashes::PipelineLayoutPtr m_pipelineLayout
 
ashes::GraphicsPipelinePtr m_blendPipeline
 
ashes::GraphicsPipelinePtr m_firstPipeline
 
bool m_shadows
 
bool m_voxels
 
bool m_generatesIndirect
 
- Fonctions membres protégées hérités de castor3d::LightPass::Program
virtual void doRender (ashes::CommandBuffer &commandBuffer, uint32_t count, bool first, uint32_t offset) const
 Dessine la passe d'éclairage. Plus de détails...
 

Description détaillée

Classe de base pour les programmes de passe d'éclairage nécessitant un maillage plutôt qu'un quad.

Documentation des constructeurs et destructeur

◆ Program()

castor3d::MeshLightPass::Program::Program ( Engine engine,
RenderDevice const &  device,
castor::String const &  name,
ShaderModule const &  vtx,
ShaderModule const &  pxl,
bool  hasShadows,
bool  hasVoxels,
bool  generatesIndirect 
)

Constructeur.

Paramètres
[in]engineLe moteur.
[in]deviceLe device GPU.
[in]nameLe nom du programme.
[in]vtxLe source du vertex shader.
[in]pxlLe source du fagment shader.
[in]hasShadowsDit si ce programme utilise une shadow map.
[in]hasVoxelsDit si ce programme utilise le résultat de la voxellisation.
[in]generatesIndirectDit si ce programme genère de l'éclairage indirect.

◆ ~Program()

virtual castor3d::MeshLightPass::Program::~Program ( )
virtual

Destructeur.

Réimplémentée à partir de castor3d::LightPass::Program.

Réimplémentée dans castor3d::PointLightPass::Program, et castor3d::SpotLightPass::Program.


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