我试图了解如何使用glsl的折射功能进行光线追踪。让我们说我有一个折射率为1.5的物体。如果我想生成折射光线,请调用refract(rayDir, surfNorm, 1.0/1.5)
正确吗?
但是,我想知道如何处理产生的透射光线到达物体的另一侧并离开时。此函数调用的eta
值是多少?是1.5 / 1.0吗?
答案 0 :(得分:2)
refract()
的第三个参数记录为"折射率eta"的比率。所以你的建议对我有意义。从材料A到材料B的比率为eta
,从材料B到材料A的比率为1.0 / eta
。