我可以通过对周围像素进行采样将现有的高度贴图转换为法线贴图,就像在这个问题中从高度贴图生成法线贴图?除了我在 CPU 上做。
我有一个球体,我想在对象空间中进行法线贴图。如何将上述法线贴图应用于我的球体顶点的法线?
我可以通过对周围像素进行采样将现有的高度贴图转换为法线贴图,就像在这个问题中从高度贴图生成法线贴图?除了我在 CPU 上做。
我有一个球体,我想在对象空间中进行法线贴图。如何将上述法线贴图应用于我的球体顶点的法线?
法线贴图不修改顶点法线。它们用于小于顶点的细节。
在您的片段着色器中,在片段的纹理坐标处查找法线并用它修改片段的法线。
如前所述,法线贴图是按像素完成的,因此将其应用于球体的顶点是行不通的。
在您的片段着色器中,您必须提供/计算切线和双切线以及网格法线向量。
然后,您可以使用法线、切线和双切线向量的 3x3 矩阵,以及从法线贴图中读取的法线向量来计算新的法线向量。
这里有一个关于这个主题的很棒的教程:http: //ogldev.atspace.co.uk/www/tutorial26/tutorial26.html