diff --git a/docs/02 Lighting/06 Multiple lights.md b/docs/02 Lighting/06 Multiple lights.md
index 9dc08c4..c7117b3 100644
--- a/docs/02 Lighting/06 Multiple lights.md
+++ b/docs/02 Lighting/06 Multiple lights.md
@@ -4,9 +4,9 @@
---|---
作者 | JoeyDeVries
翻译 | [Geequlim](http://geequlim.com), Krasjet
-校对 | 暂未校对
+校对 | [AoZhang](https://github.com/SuperAoao)
-我们在前面的教程中已经学习了许多关于OpenGL中光照的知识,其中包括冯氏着色(Phong Shading)、材质(Material)、光照贴图(Lighting Map)以及不同种类的投光物(Light Caster)。在这一节中,我们将结合之前学过的所有知识,创建一个包含六个光源的场景。我们将模拟一个类似太阳的定向光(Directional Light)光源,四个分散在场景中的点光源(Point Light),以及一个手电筒(Flashlight)。
+我们在前面的教程中已经学习了许多关于OpenGL中光照的知识,其中包括冯氏着色(Phong Shading)、材质(Material)、光照贴图(Lighting Map)以及不同种类的投光物(Light Caster)。在这一节中,我们将结合之前学过的所有知识,创建一个包含六个光源的完全照明场景。我们将模拟一个类似太阳的定向光(Directional Light)光源,四个分散在场景中的点光源(Point Light),以及一个手电筒(Flashlight)。
为了在场景中使用多个光源,我们希望将光照计算封装到GLSL函数中。这样做的原因是,每一种光源都需要一种不同的计算方法,而一旦我们想对多个光源进行光照计算时,代码很快就会变得非常复杂。如果我们只在main函数中进行所有的这些计算,代码很快就会变得难以理解。
@@ -168,6 +168,10 @@ void main()
每个光源类型都将它们的贡献加到了最终的输出颜色上,直到所有的光源都处理完了。最终的颜色包含了场景中所有光源的颜色影响所合并的结果。如果你想的话,你也可以实现一个聚光,并将它的效果加到输出颜色中。我们会将CalcSpotLight函数留给读者作为练习。
+!!! Important
+
+ 在这种方法中有很多重复的计算在光类型函数上(例如计算反射向量,漫反射和高光项,以及对材料纹理进行采样),所以这里有优化的空间。
+
设置定向光结构体的uniform应该非常熟悉了,但是你可能会在想我们该如何设置点光源的uniform值,因为点光源的uniform现在是一个PointLight的数组了。这并不是我们以前讨论过的话题。
很幸运的是,这并不是很复杂,设置一个结构体数组的uniform和设置一个结构体的uniform是很相似的,但是这一次在访问uniform位置的时候,我们需要定义对应的数组下标值:
diff --git a/docs/img/02/06/multiple_lights_combined.png b/docs/img/02/06/multiple_lights_combined.png
index 0d28901..855c6cf 100644
Binary files a/docs/img/02/06/multiple_lights_combined.png and b/docs/img/02/06/multiple_lights_combined.png differ