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

World-space fog ray marcher with Beer–Lambert extinction and HG phase. 更多...

#include <FogRayMarch.h>

Public 成员函数

Result< FogRayResult > integrate (const FogDensityField &field, const FogProfile &profile, const glm::vec3 &origin, const glm::vec3 &direction, const FogVolumeBound &bound, const glm::vec3 &lightDir, const glm::vec3 &lightColor, float lightIntensity, const glm::vec3 &skyAmbient, const glm::vec3 &groundAmbient, int sampleCount, float sceneDepth, const BeerLightCache *beerCache, bool useAnalyticSegments) const
 Integrate one view ray through the density field.
 

静态 Public 成员函数

static std::optional< FogRayInterval > intersectBound (const glm::vec3 &origin, const glm::vec3 &direction, const FogVolumeBound &bound)
 Intersect a ray with a volume bound; returns empty when misses.
 

详细描述

World-space fog ray marcher with Beer–Lambert extinction and HG phase.

Rays intersect sky shell / height layer / OBB first, then sample the density field in world units so camera and actor motion cannot crawl the fog texture.

在文件 FogRayMarch.h 第 38 行定义.

成员函数说明

◆ integrate()

Result< FogRayResult > eve::graphics::fog::FogRayMarch::integrate ( const FogDensityField &  field,
const FogProfile &  profile,
const glm::vec3 &  origin,
const glm::vec3 &  direction,
const FogVolumeBound &  bound,
const glm::vec3 &  lightDir,
const glm::vec3 &  lightColor,
float  lightIntensity,
const glm::vec3 &  skyAmbient,
const glm::vec3 &  groundAmbient,
int  sampleCount,
float  sceneDepth,
const BeerLightCache *  beerCache,
bool  useAnalyticSegments 
) const

◆ intersectBound()


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