Owns generated diffuse probes and samples their baked L0 irradiance. 更多...
#include <DiffuseLightProbeRegistry.h>
Public 成员函数 | |
| void | replaceBatch (const std::string &batchId, const std::vector< eve::ProcgenProbeDesc > &probes) |
| Atomically replace the diffuse probes owned by one generated batch. | |
| void | removeBatch (const std::string &batchId) |
| Remove every diffuse probe owned by one generated batch. | |
| Result< DiffuseLightProbeSample > | sample (const glm::vec3 &position, int maxSamples) const |
| Blend up to maxSamples probes whose influence volumes contain position. | |
| Result< DiffuseLightProbeVolumeSample > | selectVolume (const glm::vec3 &position) const |
| Select an object-local proxy volume; fragment shading performs the spatial interpolation. | |
静态 Public 成员函数 | |
| static DiffuseLightProbeRegistry & | instance () |
| Return the process-wide graphics-owned registry. | |
详细描述
Owns generated diffuse probes and samples their baked L0 irradiance.
在文件 DiffuseLightProbeRegistry.h 第 29 行定义.
成员函数说明
◆ instance()
|
static |
Return the process-wide graphics-owned registry.
在文件 DiffuseLightProbeRegistry.cpp 第 65 行定义.
被这些函数引用 eve::graphics::RenderSystem3D::render() , 以及 eve::graphics::RenderSystem3D::renderToCanvas().
◆ removeBatch()
| void eve::graphics::DiffuseLightProbeRegistry::removeBatch | ( | const std::string & | batchId | ) |
Remove every diffuse probe owned by one generated batch.
在文件 DiffuseLightProbeRegistry.cpp 第 75 行定义.
◆ replaceBatch()
| void eve::graphics::DiffuseLightProbeRegistry::replaceBatch | ( | const std::string & | batchId, |
| const std::vector< eve::ProcgenProbeDesc > & | probes | ||
| ) |
Atomically replace the diffuse probes owned by one generated batch.
在文件 DiffuseLightProbeRegistry.cpp 第 70 行定义.
◆ sample()
| Result< DiffuseLightProbeSample > eve::graphics::DiffuseLightProbeRegistry::sample | ( | const glm::vec3 & | position, |
| int | maxSamples | ||
| ) | const |
Blend up to maxSamples probes whose influence volumes contain position.
在文件 DiffuseLightProbeRegistry.cpp 第 77 行定义.
引用了 a, b, eve::graphics::DiffuseLightProbeSample::coefficients, count, eve::Diagnostic::error(), eve::ProcgenProbeDesc::extentX, eve::ProcgenProbeDesc::extentY, eve::ProcgenProbeDesc::extentZ, eve::Result< T >::failure(), eve::ProcgenProbeDesc::hasSphericalHarmonics, eve::ProcgenProbeDesc::irradianceB, eve::ProcgenProbeDesc::irradianceG, eve::ProcgenProbeDesc::irradianceR, eve::NotFound, position, eve::ProcgenProbeDesc::sphericalHarmonics, eve::Result< T >::success(), weight, eve::ProcgenProbeDesc::x, eve::ProcgenProbeDesc::y , 以及 eve::ProcgenProbeDesc::z.
被这些函数引用 eve::graphics::RenderSystem3D::render() , 以及 eve::graphics::RenderSystem3D::renderToCanvas().
◆ selectVolume()
| Result< DiffuseLightProbeVolumeSample > eve::graphics::DiffuseLightProbeRegistry::selectVolume | ( | const glm::vec3 & | position | ) | const |
Select an object-local proxy volume; fragment shading performs the spatial interpolation.
在文件 DiffuseLightProbeRegistry.cpp 第 124 行定义.
引用了 a, b, bounds, cell, center, eve::graphics::DiffuseLightProbeVolumeSample::count, eve::Diagnostic::error(), eve::ProcgenProbeDesc::extentX, eve::ProcgenProbeDesc::extentY, eve::ProcgenProbeDesc::extentZ, found, index, eve::NotFound, position, eve::Result< T >::success(), volume, eve::ProcgenProbeDesc::x, x, eve::ProcgenProbeDesc::y, y, eve::ProcgenProbeDesc::z , 以及 z.
被这些函数引用 eve::graphics::RenderSystem3D::render() , 以及 eve::graphics::RenderSystem3D::renderToCanvas().
该类的文档由以下文件生成:
- src/modules/graphics/DiffuseLightProbeRegistry.h
- src/modules/graphics/DiffuseLightProbeRegistry.cpp