Unity中spotlight是如何实现的?疑惑点解析
2021-01-31 本文已影响0人
大其心宏其量扩其识
我们以x分量为例,x * m_CotanHalfSpotAngle/(2 * z) + 0.5其实是把点的tan值除以半张角的tan值(即等于乘以cot值m_CotanHalfSpotAngle),由此得到张角比值,再通过缩放和平移,把张角的判断范围归一到[0, 1],如下图所示:
d36cf0dd029f8addf4c9643884878ddf_720w[1].jpg
数学基础太差,一直不明白这句话什么意思?今天终于想明白一点了,记录下,要是不应该这样理解,非常欢迎指正。

因为:
这里多出的
再缩放加偏移
最终将 -1到1之间的值转换成0到1之间的值