法线贴图
将表面法线方向编码为 RGB 颜色值的纹理,在实时渲染中实现逐像素光照计算,模拟低多边形模型上的几何细节。
法线贴图将表面法线向量编码为 RGB 颜色数据存储。每个像素的 R、G、B 通道对应 X、Y、Z 法线分量。渲染器使用这些逐像素法线进行光照计算,在平面多边形上创造表面细节的错觉。
- 切线空间:最常见的格式,存储相对于表面的法线。平坦区域呈蓝紫色 (RGB: 128, 128, 255)。在变形网格上正确工作
- 对象空间:以局部坐标存储绝对法线。呈彩虹色外观,适用于静态物体,质量略优
- 从高模烘焙:将百万多边形雕刻的法线信息转移到低模游戏网格上,使用 xNormal、Substance Painter 或 Marmoset Toolbag
- 从高度图生成:通过 Sobel 或 Scharr 滤波器计算表面梯度,将灰度高度图转换为法线贴图
将 2048x2048 法线贴图应用于 10 万多边形模型可在 60fps 下模拟数千万多边形的效果。DirectX 和 OpenGL 使用相反的 Y 轴约定 (绿色通道反转),在引擎间转移资产时需要注意。