高度图转法线贴图算法是经常需要使用到的。下面是在虚幻4中的实现。当然写成HLSL代码也更好。但是为了快速看到效果,我就用材质节点连了一下。
首先这个方法的整体思路是:利用一个像素周围的四个像素保存的高度值来算法线。
下面的一串算法是找到一个像素周围的像素,然后采样获取这些像素里面的高度值,然后获取那几个像素位置的向量方向,然后再乘以我们自己定义的高度值缩放
获取周围高度并且获取高度平面的向量之后,求两个高度平面向量的叉乘就可以获取法向量了
算法挺简单的,虚幻4的材质节点都能实现。