最近再学习一些unity shader的一些东西,看到法线贴图那里突然不是很理解,经过查找资料,现在也是恍然大悟,也是深深敬佩发明切线空间法线贴图那个大神!
话不多说,直接说一下,关于法线贴图,主要有两种,一种是基于模型空间的法线信息存储,一种就是基于切线空间的信息存储。我们这里着重来说一下第二种。
什么是切线空间?
切线空间就是,基于模型上的一个顶点建立的坐标空间,它的X轴是这个顶点在模型中的切线分量,Z轴是改点在模型上的法线,Y轴就是这个顶点的副切线,因为坐标空间XYZ三个面都是互相垂直的嘛,所以这个副切线我们是可以求出来的(以为同样是与一个平面垂直的单位向量是有两方向的,在Unity中模型会提供一个副切线的方向的数据)。
来上一个图,让我们更好的理解这个所谓的切线空间。