diff --git a/05 Advanced Lighting/08 Deferred Shading.md b/05 Advanced Lighting/08 Deferred Shading.md new file mode 100644 index 0000000..8651a2b --- /dev/null +++ b/05 Advanced Lighting/08 Deferred Shading.md @@ -0,0 +1,11 @@ +# 延迟渲染(Deferred Shading) + +原文 | [Deferred Shading](http://learnopengl.com/#!Advanced-Lighting/Deferred-Shading) + ---|--- +作者 | JoeyDeVries +翻译 | Meow J +校对 | 未校对 + +我们现在一直使用的光照方式叫做正向渲染(Forward Rendering)或者正向着色法(Forward Shading),它是我们渲染物体的一种非常直接的方式,在场景中我们根据所有光源照亮一个物体,之后再渲染下一个物体,以此类推。它非常容易理解,也很容易实现,但是同时它对程序性能的影响也很大,因为对于每一个需要渲染的物体,程序都要对每一个光源每一个需要渲染的片段进行迭代,这是**非常**多的!因为大部分片段着色器的输出都会被之后的输出覆盖,正向渲染还会在场景中因为高深的复杂度(多个物体重合在一个像素上)浪费大量的片段着色器运行时间。 + +**WIP** \ No newline at end of file diff --git a/05 Advanced Lighting/09 SSAO.md b/05 Advanced Lighting/09 SSAO.md new file mode 100644 index 0000000..7bdfe27 --- /dev/null +++ b/05 Advanced Lighting/09 SSAO.md @@ -0,0 +1,9 @@ +# SSAO + +原文 | [SSAO](http://learnopengl.com/#!Advanced-Lighting/SSAO) + ---|--- +作者 | JoeyDeVries +翻译 | Meow J +校对 | 未校对 + +我们已经在前面的基础教程中简单介绍到了这部分内容:环境光照(Ambient Lighting)。环境光照是我们加入场景总体光照中的一个固定光照常量,它被用来模拟光的**散射(Scattering)**。在现实中,光线会以任意方向散射,它的强度是会一直改变的,所以间接被照到的那部分场景也应该有变化的强度,而不是一成不变的环境光。其中一种间接光照的模拟叫做**环境光遮蔽(Ambient Occlusion)**,它的原理是通过将褶皱、孔洞和非常靠近的表面变暗的方法近似模拟出间接光照。这些区域很大程度上是被周围的几何体遮蔽的,所以光线会很难流失,所以这些地方会看起来更暗一些。站起来看一看你房间的拐角或者是褶皱,你会发现这些地方会看起来有一点暗。 \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 72fc9ef..792df40 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -46,6 +46,8 @@ pages: - 视差贴图: '05 Advanced Lighting/05 Parallax Mapping.md' - HDR: '05 Advanced Lighting/06 HDR.md' - 泛光: '05 Advanced Lighting/07 Bloom.md' + - 延迟渲染: '05 Advanced Lighting/08 Deferred Shading.md' + - SSAO: '05 Advanced Lighting/09 SSAO.md' site_name: LearnOpenGL-CN