切线空间下的法线贴图

法线贴图

http://www.nvidia.com/object/real-time-normal-map-dxt-compression.html

http://www.opengl-tutorial.org/intermediate-tutorials/tutorial-13-normal-mapping/ 

 

高光贴图

http://www.rastertek.com/dx10tut21.html

 

Unity支持

https://docs.unity3d.com/Manual/SL-SurfaceShaders.html

 

struct SurfaceOutput

{

  ...

  fixed3 Normal; // tangent space normal, if written

  ...

}

Unity会对法线进行内部处理,如果在SurfaceOutput中设置了Normal成员,Unity会认为使用了切线空间的法线,随后Unity会对法线进行切线空间变换,把法线变换到视觉空间。如果没有设置Normal,Unity会直接使用顶点法线为Normal赋值。

posted @ 2017-03-16 16:59  lilei9110  阅读(665)  评论(0编辑  收藏  举报