diff --git a/docs/04 Advanced OpenGL/06 Cubemaps.md b/docs/04 Advanced OpenGL/06 Cubemaps.md index dcda8d2..8627b42 100644 --- a/docs/04 Advanced OpenGL/06 Cubemaps.md +++ b/docs/04 Advanced OpenGL/06 Cubemaps.md @@ -329,7 +329,7 @@ glDrawArrays(GL_TRIANGLES, 0, 36); 当反射应用到一整个物体上(像是箱子)时,这个物体看起来就像是钢或者铬这样的高反射性材质。如果我们加载[模型加载](../03 Model Loading/03 Model.md)小节中的纳米装模型,我们会得到一种整个套装都是使用铬做成的效果: -![](../img/04/06/cubemaps_reflection_nanosuit.png) +![](../img/04/06/cubemaps_reflection_backpack.png) 这看起来非常棒,但在现实中大部分的模型都不具有完全反射性。我们可以引入反射贴图(Reflection Map),来给模型更多的细节。与漫反射和镜面光贴图一样,反射贴图也是可以采样的纹理图像,它决定这片段的反射性。通过使用反射贴图,我们可以知道模型的哪些部分该以什么强度显示反射。在本节的练习中,将由你来为我们之前创建的模型加载器中引入反射贴图,显著提升纳米装模型的细节。 @@ -371,7 +371,7 @@ void main() 通过改变折射率,你可以创建完全不同的视觉效果。编译程序并运行,但结果并不是很有趣,因为我们只使用了一个简单的箱子,它不太能显示折射的效果,现在看起来只是有点像一个放大镜。对纳米装使用相同的着色器却能够展现出了我们期待的效果:一个类玻璃的物体。 -![](../img/04/06/cubemaps_refraction.png) +![](../img/04/06/cubemaps_refraction_backpack.png) 你可以想象出有了光照、反射、折射和顶点移动的正确组合,你可以创建出非常漂亮的水。注意,如果要想获得物理上精确的结果,我们还需要在光线离开物体的时候再次折射,现在我们使用的只是单面折射(Single-side Refraction),但它对大部分场合都是没问题的。 diff --git a/docs/img/04/06/cubemaps_reflection_backpack.png b/docs/img/04/06/cubemaps_reflection_backpack.png new file mode 100644 index 0000000..a2ad367 Binary files /dev/null and b/docs/img/04/06/cubemaps_reflection_backpack.png differ diff --git a/docs/img/04/06/cubemaps_refraction_backpack.png b/docs/img/04/06/cubemaps_refraction_backpack.png new file mode 100644 index 0000000..7d7518b Binary files /dev/null and b/docs/img/04/06/cubemaps_refraction_backpack.png differ