出于学术目的,我已经调整了 PBRT,以便它写出有关交叉点的数据和一般路径相关数据(我使用了路径表面积分器)。
然而,在某个交点处获得光谱的 RGB 值存在一些困难。很明显,我必须ToRGB(float* rgb)
在交叉路口生成的 Spectrum 类上使用,但是之后观察到的数据有点奇怪。RGB 值位于 0-1 范围之间是有意义的。这种情况似乎经常发生,但有时我也会看到三胞胎,例如
(1.851088, 0.882869, 0.772866)
经过仔细检查,我的大约 400.000 个交叉点的 RGB 最大值是 3.77 2.00 和 1.76。下限似乎是正确的,因为它们接近于零。所以问题是 PBRT 使用的范围是多少,以便我可以将其转换为 0.0 - 1.0。
谢谢