OpenGL

第四课,OpenGL的纹理-卡核

第四课,OpenGL的纹理

头文件 #include "stb_image.h" 用于对不同格式图片的读取。 添加纹理坐标数据 纹理坐标为载入纹理的范围位置,即图片的宽高范围都在0~1之间,根据填入的小数来确定纹理...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0720
第十八课,立方体贴图(环境映射)-卡核

第十八课,立方体贴图(环境映射)

使用立方体贴图,还可以给物体反射和折射的属性。 反射 片元着色器 #version 450 core out vec4 FragColor; in vec3 Normal; in vec3 Position; uniform vec3 cameraPos; uniform sampler...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0690
第十一课,OpenGL光照之投光物-卡核

第十一课,OpenGL光照之投光物

1.平行光 平行光,即光线方向为定值。 在点光源中,我们通过 lightDir = normalize(light.position.xyz - FragPos);来确定光线照射角度,而在平行光中lightDir(光照角度...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0690
QT with OpenGL(HDR)-卡核

QT with OpenGL(HDR)

借鉴自 https://www.bilibili.com/read/cv11765941/ 文章目录 为什么引入HDR(High Dynamic Range)如何使用更大范围的帧缓存在Qt中使用帧缓存对象构造FBO纹理附件(多纹理绑定及渲染)数据...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
01130
第三课,OpenGL的着色器-卡核

第三课,OpenGL的着色器

优化首先将着色器的编译链接进行优化//Shader.h #pragma once #include <glad/glad.h> class Shader{ public: //程序ID unsigned int ID; //构造器读取并构建着色器 Shader(const GLchar*...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
21230
第十八课,立方体贴图(加载天空盒)-卡核

第十八课,立方体贴图(加载天空盒)

原理我在这里不再过多叙述,主要从代码的运行方向来解读立方体贴图 添加天空盒顶点 float skyboxVertices[] = { // positions -1.0f, 1.0f, -1.0f, -1.0f, -1.0f, -1.0f, 1.0f, -1.0...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
01460
第十课,OpenGL光照之贴图-卡核

第十课,OpenGL光照之贴图

光照贴图 光照贴图,及使用纹理代替物体颜色,物体的实际颜色由物体材质和光照决定。 漫反射贴图 使用一张覆盖物体的图像,让我们能够逐片段索引其独立的颜色值。 方式 1 将...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0470
第二十四课、二十五课,高级光照(blinn),Gamma矫正-卡核

第二十四课、二十五课,高级光照(blinn),Gamma矫正

高级光照(blinn) 这里主要是矫正了,视口方向和反射方向夹角太小造成的阴影轮廓现象。 但是在我的项目中,只要给blinn光照的shiness乘4,基本与冯氏光照没有区...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0460
第十七课,帧缓存(后期处理)-卡核

第十七课,帧缓存(后期处理)

反向 void main() { FragColor = vec4(vec3(1.0 - texture(screenTexture, TexCoords)), 1.0); } 灰度 均分灰度 void main() { FragColor = texture(screenTexture, TexCoords); floa...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0750
第九课,OpenGL光照之材质-卡核

第九课,OpenGL光照之材质

物体材质 在冯氏模型中,一个物体的材质由:全局光照系数,漫反射光照系数,反射光照系数,反射高光半径系数决定。 分别由:ambient,diffuse࿰...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
0760
第二十三课,抗锯齿(Anti Aliasing)-卡核

第二十三课,抗锯齿(Anti Aliasing)

Anti Aliasing(ˈænti ,ˈeliəsɪŋ )反走样 文章目录 超采样抗锯齿(Super Sample Anti-aliasing, SSAA)多重采样抗锯齿(Multisample Anti-aliasing, MSAA)GLFW中的MSAAO...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
02040
第一课,OpenGL窗口设置-卡核

第一课,OpenGL窗口设置

第一课,opengl窗口设置笔记 1 初始化glfw 设置opengl版本及窗口模式 glfwInit(); glfwWindowHint(); 2 创建窗口 设置为当前线程 window = glfwCreateWindow&#...
Elsa的迷弟的头像-卡核Elsa的迷弟2年前
01430