载入中...
搜索中...
未找到
eve::graphics::fog::FogFroxelBridge类 参考

Maps world-space density into a camera froxel volume and integrates it. 更多...

#include <FogFroxelBridge.h>

Public 成员函数

Result< int > inject (AtmosphereVolume &volume, const FogDensityField &field, const FogProfile &profile, const glm::mat4 &invViewProj, bool occupancySkip)
 Inject density-field media into an AtmosphereVolume froxel grid.
 
Result< void > integrate (AtmosphereVolume &volume, const FogDensityField &field, const FogProfile &profile, const glm::mat4 &invViewProj, const glm::vec3 &lightDir, const glm::vec3 &lightColor, float intensity, const BeerLightCache *beerCache)
 Integrate froxels with optional Beer-cache visibility.
 

详细描述

Maps world-space density into a camera froxel volume and integrates it.

Occupancy skipping and temporal history follow the active FogQualityBudget.

在文件 FogFroxelBridge.h 第 24 行定义.

成员函数说明

◆ inject()

Result< int > eve::graphics::fog::FogFroxelBridge::inject ( AtmosphereVolume &  volume,
const FogDensityField &  field,
const FogProfile &  profile,
const glm::mat4 &  invViewProj,
bool  occupancySkip 
)

Inject density-field media into an AtmosphereVolume froxel grid.

参数
invViewProjInverse view-projection used to reconstruct froxel centers.
occupancySkipSkip empty froxels when the quality budget allows it.
返回
Number of froxels that received non-zero media.

在文件 FogFroxelBridge.cpp 第 35 行定义.

引用了 eve::graphics::fog::FogProfile::anisotropy(), eve::Diagnostic::error(), eve::graphics::fog::FogProfile::extinctionAt(), eve::Failed, eve::Result< T >::failure(), invViewProj, eve::graphics::fog::FogProfile::scatteringAt(), eve::Result< T >::success(), volume, world, x, y , 以及 z.

被这些函数引用 eve::graphics::fog::FogSystem::injectToFroxel(), eve::graphics::fog::FogSystem::renderToFroxel() , 以及 eve::graphics::fog::FogSystem::syncToVolumetric().

◆ integrate()

Result< void > eve::graphics::fog::FogFroxelBridge::integrate ( AtmosphereVolume &  volume,
const FogDensityField &  field,
const FogProfile &  profile,
const glm::mat4 &  invViewProj,
const glm::vec3 &  lightDir,
const glm::vec3 &  lightColor,
float  intensity,
const BeerLightCache *  beerCache 
)

该类的文档由以下文件生成: