在OpenGL(和其他系统)中,点光源的距离衰减因子类似于1/(c+kd+sd^2)
,其中d
距光源的距离为c
,k
并且s
为常数。
我了解对sd^2
现实中预期的物理上精确的“反平方定律”衰减建模的组件。
我猜想常数c
(通常为1)是否可以处理很小的值d
(也许除以零防御?)。
线性kd
组件在模型中起什么作用(k
在OpenGL中默认为零)。什么时候使用其他值k
?我知道这称为“线性衰减”分量,但是它在照明模型中模拟什么行为?在我所知的任何物理光模型中似乎都没有出现。
[编辑]
David Gouveia指出,线性因子可用于帮助使场景“看起来”更接近开发商/艺术家的意图,或更好地控制光线的散失率。在哪种情况下,我的问题变成“线性衰减因子是否具有物理上的对应关系?或者它只是用作帮助控制场景中的光质量的软糖因子?”