在法线贴图中,除纹理颜色外,使用的纹理还具有纹理法线,就像下面的片段着色器代码一样:
#version 420 core
out vec4 color;
// Color and normal maps
layout ( binding = 0) uniform sampler2D tex_color;
layout ( binding = 1) uniform sampler2D tex_normal;
但我不明白的是,什么类型的图像具有正常的纹理'? 我还搜索了一些用于计算纹理法线的解决方案,使用它的RGB颜色:
Red maps from (0-255) to X (-1.0 - 1.0)
Green maps from (0-255) to Y (-1.0 - 1.0)
Blue maps from (0-255) to Z (0.0 - 1.0)
答案 0 :(得分:3)
法线贴图通常是一个独立的图像 - 它不是嵌入在另一个图像中的东西。如您所发现的描述所示,给定点处的法线是从该点处的法线贴图图像的RGB值确定的。以下是Wikipedia article on normal mapping:
中的一个示例
您发布的着色器代码需要两个单独的纹理,第一个是材质的颜色,第二个是法线贴图。