第九课,OpenGL光照之材质
物体材质 在冯氏模型中,一个物体的材质由:全局光照系数,漫反射光照系数,反射光照系数,反射高光半径系数决定。 分别由:ambient,diffuse...
第十课,OpenGL光照之贴图
光照贴图 光照贴图,及使用纹理代替物体颜色,物体的实际颜色由物体材质和光照决定。 漫反射贴图 使用一张覆盖物体的图像,让我们能够逐片段索引其独立的颜色值。 方式 1 将...
第十一课,OpenGL光照之投光物
1.平行光 平行光,即光线方向为定值。 在点光源中,我们通过 lightDir = normalize(light.position.xyz - FragPos);来确定光线照射角度,而在平行光中lightDir(光照角度...
第十二课,assimp模型加载(配置篇)
下载Assimp并使用cmake配置 OpenGL-Assimp库的下载、编译及使用 本人亲测,在自己电脑上不需要DirectX的安装。估计和电脑版本有关,读者自己斟酌是否需要。 cMake及VS编译要尤其注...
第十二课,assimp模型加载(数据加载篇)
大佬讲解入口 OpenGL学习脚印:模型加载初步-加载obj模型(load obj model) ,作者:The fool OpenGL学习脚印-AssImp模型加载 ,作者:The fool 本人主要通过程序流程理...
第十二课,assimp模型加载(绘制篇)
首先创建模型渲染管线 Shader ourShader("1.model_loading.vs", "1.model_loading.fs"); vertexShader #version 330 core layout (location = 0) in vec3 aPos; layou...
第十七课,帧缓存(创建和使用方法)
OpenGL允许我们定义我们自己的帧缓冲,也就是说我们能够定义我们自己的颜色缓冲,甚至是深度缓冲和模板缓冲。 创建一个帧缓冲 1.创建一个帧缓冲对象(Framebuffer Object, FBO) 创建...
第十七课,帧缓存(后期处理)
反向 void main() { FragColor = vec4(vec3(1.0 - texture(screenTexture, TexCoords)), 1.0); } 灰度 均分灰度 void main() { FragColor = texture(screenTexture, TexCoords); floa...