Castor3D 0.15.0
Multiplatform 3D engine
Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor3d::shader::GlobalIllumination

#include <GlslGlobalIllumination.hpp>

Fonctions membres publiques

C3D_API GlobalIllumination (sdw::ShaderWriter &writer, Utils &utils, bool deferred=false)
 
C3D_API GlobalIllumination (sdw::ShaderWriter &writer, Utils &utils, uint32_t &bindingIndex, uint32_t setIndex, SceneFlags sceneFlags, bool deferred=false)
 
C3D_API GlobalIllumination (sdw::ShaderWriter &writer, Utils &utils, uint32_t vctUboBindingIndex, uint32_t lpvUboBindingIndex, uint32_t llpvUboBindingIndex, uint32_t &vctTexBindingIndex, uint32_t &lpvTexBindingIndex, uint32_t &llpvTexBindingIndex, uint32_t texSetIndex, SceneFlags sceneFlags, bool deferred=false)
 
C3D_API void declare (uint32_t &bindingIndex, uint32_t setIndex, SceneFlags sceneFlags)
 
C3D_API void declare (uint32_t vctUboBindingIndex, uint32_t lpvUboBindingIndex, uint32_t llpvUboBindingIndex, uint32_t &vctTexBindingIndex, uint32_t &lpvTexBindingIndex, uint32_t &llpvTexBindingIndex, uint32_t texSetIndex, SceneFlags sceneFlags)
 
C3D_API void declareVct (uint32_t &uboBindingIndex, uint32_t &texBindingIndex, uint32_t uboSetIndex=0u, uint32_t texSetIndex=0u)
 
C3D_API void declareLpv (uint32_t &uboBindingIndex, uint32_t &texBindingIndex, uint32_t uboSetIndex=0u, uint32_t texSetIndex=0u, bool declUbo=true)
 
C3D_API void declareLayeredLpv (uint32_t &uboBindingIndex, uint32_t &texBindingIndex, uint32_t uboSetIndex=0u, uint32_t texSetIndex=0u, bool declUbo=true)
 
C3D_API sdw::Vec4 computeVCTRadiance (LightSurface const &lightSurface, VoxelData const &voxelData, sdw::Float const &indirectOcclusion)
 
C3D_API sdw::Vec3 computeVCTSpecular (LightSurface const &lightSurface, sdw::Float const &roughness, sdw::Float const &indirectOcclusion, sdw::Float const &indirectBlend, VoxelData const &voxelData)
 
C3D_API sdw::Vec4 computeLPVRadiance (LightSurface surface, LpvGridData lpvGridData)
 
C3D_API sdw::Vec4 computeLLPVRadiance (LightSurface surface, LayeredLpvGridData llpvGridData)
 
C3D_API sdw::Float computeOcclusion (SceneFlags sceneFlags, LightSurface lightSurface)
 
C3D_API sdw::Vec4 computeDiffuse (SceneFlags sceneFlags, LightSurface lightSurface, sdw::Float indirectOcclusion)
 
C3D_API sdw::Vec3 computeAmbient (SceneFlags sceneFlags, sdw::Vec3 const &indirectDiffuse)
 
C3D_API sdw::Vec3 computeSpecular (SceneFlags sceneFlags, LightSurface lightSurface, sdw::Float roughness, sdw::Float indirectOcclusion, sdw::Float indirectBlend, sdw::CombinedImage2DRgba32 brdfMap)
 
sdw::Vec4 traceConeRadiance (sdw::CombinedImage3DRgba32 const &voxels, LightSurface lightSurface, VoxelData const &voxelData)
 

Documentation des constructeurs et destructeur

◆ GlobalIllumination() [1/3]

C3D_API castor3d::shader::GlobalIllumination::GlobalIllumination ( sdw::ShaderWriter &  writer,
Utils utils,
bool  deferred = false 
)
explicit

◆ GlobalIllumination() [2/3]

C3D_API castor3d::shader::GlobalIllumination::GlobalIllumination ( sdw::ShaderWriter &  writer,
Utils utils,
uint32_t &  bindingIndex,
uint32_t  setIndex,
SceneFlags  sceneFlags,
bool  deferred = false 
)
explicit

◆ GlobalIllumination() [3/3]

C3D_API castor3d::shader::GlobalIllumination::GlobalIllumination ( sdw::ShaderWriter &  writer,
Utils utils,
uint32_t  vctUboBindingIndex,
uint32_t  lpvUboBindingIndex,
uint32_t  llpvUboBindingIndex,
uint32_t &  vctTexBindingIndex,
uint32_t &  lpvTexBindingIndex,
uint32_t &  llpvTexBindingIndex,
uint32_t  texSetIndex,
SceneFlags  sceneFlags,
bool  deferred = false 
)
explicit

Documentation des fonctions membres

◆ computeAmbient()

C3D_API sdw::Vec3 castor3d::shader::GlobalIllumination::computeAmbient ( SceneFlags  sceneFlags,
sdw::Vec3 const &  indirectDiffuse 
)

◆ computeDiffuse()

C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeDiffuse ( SceneFlags  sceneFlags,
LightSurface  lightSurface,
sdw::Float  indirectOcclusion 
)

◆ computeLLPVRadiance()

C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeLLPVRadiance ( LightSurface  surface,
LayeredLpvGridData  llpvGridData 
)

◆ computeLPVRadiance()

C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeLPVRadiance ( LightSurface  surface,
LpvGridData  lpvGridData 
)

◆ computeOcclusion()

C3D_API sdw::Float castor3d::shader::GlobalIllumination::computeOcclusion ( SceneFlags  sceneFlags,
LightSurface  lightSurface 
)

◆ computeSpecular()

C3D_API sdw::Vec3 castor3d::shader::GlobalIllumination::computeSpecular ( SceneFlags  sceneFlags,
LightSurface  lightSurface,
sdw::Float  roughness,
sdw::Float  indirectOcclusion,
sdw::Float  indirectBlend,
sdw::CombinedImage2DRgba32  brdfMap 
)

◆ computeVCTRadiance()

C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeVCTRadiance ( LightSurface const &  lightSurface,
VoxelData const &  voxelData,
sdw::Float const &  indirectOcclusion 
)

◆ computeVCTSpecular()

C3D_API sdw::Vec3 castor3d::shader::GlobalIllumination::computeVCTSpecular ( LightSurface const &  lightSurface,
sdw::Float const &  roughness,
sdw::Float const &  indirectOcclusion,
sdw::Float const &  indirectBlend,
VoxelData const &  voxelData 
)

◆ declare() [1/2]

C3D_API void castor3d::shader::GlobalIllumination::declare ( uint32_t &  bindingIndex,
uint32_t  setIndex,
SceneFlags  sceneFlags 
)

◆ declare() [2/2]

C3D_API void castor3d::shader::GlobalIllumination::declare ( uint32_t  vctUboBindingIndex,
uint32_t  lpvUboBindingIndex,
uint32_t  llpvUboBindingIndex,
uint32_t &  vctTexBindingIndex,
uint32_t &  lpvTexBindingIndex,
uint32_t &  llpvTexBindingIndex,
uint32_t  texSetIndex,
SceneFlags  sceneFlags 
)

◆ declareLayeredLpv()

C3D_API void castor3d::shader::GlobalIllumination::declareLayeredLpv ( uint32_t &  uboBindingIndex,
uint32_t &  texBindingIndex,
uint32_t  uboSetIndex = 0u,
uint32_t  texSetIndex = 0u,
bool  declUbo = true 
)

◆ declareLpv()

C3D_API void castor3d::shader::GlobalIllumination::declareLpv ( uint32_t &  uboBindingIndex,
uint32_t &  texBindingIndex,
uint32_t  uboSetIndex = 0u,
uint32_t  texSetIndex = 0u,
bool  declUbo = true 
)

◆ declareVct()

C3D_API void castor3d::shader::GlobalIllumination::declareVct ( uint32_t &  uboBindingIndex,
uint32_t &  texBindingIndex,
uint32_t  uboSetIndex = 0u,
uint32_t  texSetIndex = 0u 
)

◆ traceConeRadiance()

sdw::Vec4 castor3d::shader::GlobalIllumination::traceConeRadiance ( sdw::CombinedImage3DRgba32 const &  voxels,
LightSurface  lightSurface,
VoxelData const &  voxelData 
)

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