Castor3D 0.15.0
Multiplatform 3D engine
|
#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) |
|
explicit |
|
explicit |
|
explicit |
C3D_API sdw::Vec3 castor3d::shader::GlobalIllumination::computeAmbient | ( | SceneFlags | sceneFlags, |
sdw::Vec3 const & | indirectDiffuse | ||
) |
C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeDiffuse | ( | SceneFlags | sceneFlags, |
LightSurface | lightSurface, | ||
sdw::Float | indirectOcclusion | ||
) |
C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeLLPVRadiance | ( | LightSurface | surface, |
LayeredLpvGridData | llpvGridData | ||
) |
C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeLPVRadiance | ( | LightSurface | surface, |
LpvGridData | lpvGridData | ||
) |
C3D_API sdw::Float castor3d::shader::GlobalIllumination::computeOcclusion | ( | SceneFlags | sceneFlags, |
LightSurface | lightSurface | ||
) |
C3D_API sdw::Vec3 castor3d::shader::GlobalIllumination::computeSpecular | ( | SceneFlags | sceneFlags, |
LightSurface | lightSurface, | ||
sdw::Float | roughness, | ||
sdw::Float | indirectOcclusion, | ||
sdw::Float | indirectBlend, | ||
sdw::CombinedImage2DRgba32 | brdfMap | ||
) |
C3D_API sdw::Vec4 castor3d::shader::GlobalIllumination::computeVCTRadiance | ( | LightSurface const & | lightSurface, |
VoxelData const & | voxelData, | ||
sdw::Float const & | indirectOcclusion | ||
) |
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 | ||
) |
C3D_API void castor3d::shader::GlobalIllumination::declare | ( | uint32_t & | bindingIndex, |
uint32_t | setIndex, | ||
SceneFlags | sceneFlags | ||
) |
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 | ||
) |
C3D_API void castor3d::shader::GlobalIllumination::declareLayeredLpv | ( | uint32_t & | uboBindingIndex, |
uint32_t & | texBindingIndex, | ||
uint32_t | uboSetIndex = 0u , |
||
uint32_t | texSetIndex = 0u , |
||
bool | declUbo = true |
||
) |
C3D_API void castor3d::shader::GlobalIllumination::declareLpv | ( | uint32_t & | uboBindingIndex, |
uint32_t & | texBindingIndex, | ||
uint32_t | uboSetIndex = 0u , |
||
uint32_t | texSetIndex = 0u , |
||
bool | declUbo = true |
||
) |
C3D_API void castor3d::shader::GlobalIllumination::declareVct | ( | uint32_t & | uboBindingIndex, |
uint32_t & | texBindingIndex, | ||
uint32_t | uboSetIndex = 0u , |
||
uint32_t | texSetIndex = 0u |
||
) |
sdw::Vec4 castor3d::shader::GlobalIllumination::traceConeRadiance | ( | sdw::CombinedImage3DRgba32 const & | voxels, |
LightSurface | lightSurface, | ||
VoxelData const & | voxelData | ||
) |