简介
从这篇开始学习光照相关的知识,可以先阅读文档https://learnopengl-cn.github.io/02%20Lighting/01%20Colors/,了解光照的相关概念。
案例分析
光照至少需要一个光源和一个物体才能显示出的效果,那么我们就需要定义光源和物体的顶点位置和颜色,参考我们实现立方体的文章添加立方体并设置颜色,设置光源的颜色是白色,设置物体本来的颜色是橘色,那么光源照射之后的颜色就是两种颜色的叠加,我们直接设置颜色,物体着色器的代码如下:
vertexShaderCode =
"uniform mat4 uMVPMatrix;" +
"attribute vec4 aPosition;" +
"varying vec3 lColor;" +
"varying vec3 oColor;" +
"void main() {" +
" gl_Position = uMVPMatrix * aPosition;" +
" lColor = vec3(1.0, 1.0, 1.0);" +
" oColor = vec3(