Castor3D
0.11.0
Multiplatform 3D engine
|
Programme de passe de lumière omnidirectionnelle. Plus de détails...
Fonctions membres publiques | |
Program (Engine &engine, RenderDevice const &device, PointLightPass &lightPass, ShaderModule const &vtx, ShaderModule const &pxl, bool hasShadows=false, bool hasVoxels=false, bool generatesIndirect=false) | |
Constructeur. Plus de détails... | |
virtual | ~Program () |
Destructeur. Plus de détails... | |
Fonctions membres publiques hérités de 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. 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 | |
Engine & | m_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... | |
Programme de passe de lumière omnidirectionnelle.
castor3d::PointLightPass::Program::Program | ( | Engine & | engine, |
RenderDevice const & | device, | ||
PointLightPass & | lightPass, | ||
ShaderModule const & | vtx, | ||
ShaderModule const & | pxl, | ||
bool | hasShadows = false , |
||
bool | hasVoxels = false , |
||
bool | generatesIndirect = false |
||
) |
Constructeur.
[in] | engine | Le moteur. |
[in] | device | Le device GPU. |
[in] | lightPass | La passe d'éclairage. |
[in] | vtx | Le source du vertex shader. |
[in] | pxl | Le source du fagment shader. |
[in] | hasShadows | Dit si ce programme utilise une shadow map. |
[in] | hasVoxels | Dit si ce programme utilise le résultat de la voxellisation. |
[in] | generatesIndirect | Dit si ce programme genère de l'éclairage indirect. |
|
virtual |
Destructeur.
Réimplémentée à partir de castor3d::MeshLightPass::Program.