
现代OpenGL学习教程
文章平均质量分 74
HELLO_IHAD
博士研究生在读
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二)你好,三角形_QOpenGLShader版
(这篇文章,代码部分感谢RyuZhihao123的技术支持,他的blog如下,一个很有趣的技术bloghttps://my.youkuaiyun.com/mahabharata_)本篇文章,是一项带引号的“翻译”类型文章。Joey De Vries 的现代OpenGL教程是我看过最好的图形学教程,没有之一。奈何原作者是在Visual Studio平台进行开发,针对GUI和OpenGL的结合,没有...原创 2018-04-09 13:25:10 · 4221 阅读 · 3 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十二)立方体贴图(天空盒)
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/06%20Cubemaps/ 关于立方体的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按照原教程顺序,并附加一...原创 2018-11-22 17:43:16 · 1837 阅读 · 4 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十一)帧缓冲
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/05%20Framebuffers/ 关于帧缓冲的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按照原教程顺序,...原创 2018-10-31 18:37:14 · 1816 阅读 · 6 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十九)混合
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/03%20Blending/ 关于混合的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按照原教程顺序,并附加一些...原创 2018-10-24 12:08:35 · 871 阅读 · 2 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十)面剔除
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/04%20Face%20culling/ 关于面剔除的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按照原教程顺...原创 2018-10-29 20:18:50 · 569 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十八)模板测试
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/02%20Stencil%20testing/ 关于模板测试的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,重在记录自身学习之用...原创 2018-10-23 19:56:59 · 747 阅读 · 1 评论 -
BUG::关于Qt下的OpenGL在笔记本不接入电源时出现的 illegal non-ASCII character问题
BUG描述: 笔者的笔记本为联想Y7000p,默认有两个GPU: Nvidia GTX1060 与 HD核显 在不接外接电源的情况下使用Qt5.9的QOpenGLWidget框架写代码时,有一个特别崩溃的bug, 总会显示 illegal non-ASCII character编码错误,表现为着色器的第一行代码的第一个字符不识别,显示为“???”。解决方法:...原创 2018-10-23 14:52:20 · 1810 阅读 · 7 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十七)深度测试
(Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/01%20Depth%20testing/ 关于深度测试的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,重在记录自身学习之用)...原创 2018-10-20 23:16:10 · 901 阅读 · 2 评论 -
关于在Qt的QOpenGLWidget框架中----glClear(GL_COLOR_BUFFER_BIT)函数的一些有趣描述
QOpenGLWidget这个Qt下的OpenGL绘制框架,他有三个protected权限的成员函数:在initializeGL()里做参数的初始化,paintGL()里进行物体的绘制,resizeGL(int w, int h)里进行glViewport()视口的选择。Vries的教程里,使用glfw.h与glad.h对最原始的OpenGL版本进行管理时,在每帧的循环中,使用glCl...原创 2018-10-22 19:15:08 · 10388 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十三)高级数据储存方法
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/07%20Advanced%20Data/关于高级数据储存格式的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按...原创 2018-11-22 23:10:54 · 632 阅读 · 2 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十五)几何着色器
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/09%20Geometry%20Shader/ 关于几何着色器的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按...原创 2018-11-29 17:11:29 · 1046 阅读 · 0 评论 -
[OpenGL]射线拾取RayPicking---(2)拾取三角面
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一。但没有讲关于拾取(Picking)的章节,而这个功能的确很重要,就自己试着写写看了。核心代码“参考”网址如下,别问,问就是抄:https://www.cnblogs.com/graphics/archive/2010/08/09/1795348.htmlPS:博士真难申请!!!!!啊啊啊啊啊啊啊啊啊啊啊啊啊啊...原创 2019-09-20 01:53:17 · 2669 阅读 · 11 评论 -
[OpenGL]射线拾取RayPicking---(1)生成射线
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一。但没有讲关于拾取(Picking)的章节,而这个功能的确很重要,就自己试着写写看了。这节有三个很重要的参考网址,基本可以算照抄了????:1.https://blog.youkuaiyun.com/wind_hzx/article/details/400166192. https://blog.youkuaiyun.com/jeffasd/a...原创 2019-09-12 01:51:39 · 3604 阅读 · 3 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(三十)法线贴图
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/05%20Advanced%20Lighting/04%20Normal%20Mapping/ 关于法线贴图的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按...原创 2018-12-31 20:44:22 · 1359 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十九)阴影映射 ShadowMapping
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/05%20Advanced%20Lighting/03%20Shadows/01%20Shadow%20Mapping/ 关于阴影映射的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台...原创 2018-12-31 20:02:41 · 875 阅读 · 1 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十八)Gamma校正
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/05%20Advanced%20Lighting/01%20Advanced%20Lighting/ 关于Gamma的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺...原创 2018-12-29 18:27:25 · 998 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十七)高级光照Blinn-Phong
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/05%20Advanced%20Lighting/01%20Advanced%20Lighting/ 关于Blinn-Phong的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植...原创 2018-12-29 15:15:20 · 680 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十四)高级GLSL技巧
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/08%20Advanced%20GLSL/关于高级GLSL技巧的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按...原创 2018-11-28 18:10:04 · 1152 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十六)抗锯齿
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/11%20Anti%20Aliasing/ 关于抗锯齿的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按照原教程...原创 2018-11-29 18:29:04 · 969 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十四)多光源
(Vries的原教程地址如下,https://learnopengl-cn.github.io/02%20Lighting/06%20Multiple%20lights/ 关于多光源的参数详情设置请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,重在记录自身学习之用) Qt开发平台:5.8.0编译器:Desktop Qt 5.8.0 MS...原创 2018-05-03 01:30:25 · 857 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十六)实例化
(Vries的原教程地址如下,https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/10%20Instancing/ 关于实例化的详细设置介绍与设置与参数设置请查看这个教程,本篇旨在对Vires基于visual studio平台的编程思想与代码做Qt平台的移植,重在记录自身学习之用)在Vires的教程中,实例化的顺序比较靠后,但这...原创 2018-08-24 15:31:28 · 1671 阅读 · 1 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(六)坐标系统
(Vries的原教程地址如下,https://learnopengl-cn.github.io/01%20Getting%20started/08%20Coordinate%20Systems/关于函数的具体解析及OpenGL中的坐标系统的具体解释请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植)本篇目的是学习OpenGL里的坐标系统,model矩...原创 2018-04-13 18:25:07 · 2476 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(五)变换
本篇目的是在学习着色器中uniform类型变量的传值,和QMatrix4*4矩阵的应用,掌握最基本的translate,scale,rotate矩阵操作。(Vries的原教程地址如下,https://learnopengl-cn.github.io/01%20Getting%20started/07%20Transformations/ 关于函数的具体解析及OpenGL中的矩阵变换思想请看这个...原创 2018-04-13 13:33:46 · 2424 阅读 · 2 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二)你好,三角形_QOpenGLFunctions_3_3_Core版
本篇文章,是一项带引号的“翻译”类型文章。Joey De Vries 的现代OpenGL教程是我看过最好的图形学教程,没有之一。奈何原作者是在Visual Studio平台进行开发,针对GUI和OpenGL的结合,没有多言。在自己实际开发应用中,没有好的GUI确是造成不少困扰,故我欲作为一名搬运工,将Vries大神的代码进行Qt平台的“移植”。预了解代码中关于OpenGL函数的详细解释,请看...原创 2018-04-06 16:18:26 · 6390 阅读 · 6 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二)你好,三角形_QOpenGLExtraFunctions版
本篇文章,是一项带引号的“翻译”类型文章。Joey De Vries 的现代OpenGL教程是我看过最好的图形学教程,没有之一。奈何原作者是在Visual Studio平台进行开发,针对GUI和OpenGL的结合,没有多言。在自己实际开发应用中,没有好的GUI确是造成不少困扰,故我欲作为一名搬运工,将Vries大神的代码进行Qt平台的“移植”。预了解代码中关于OpenGL函数的详细解释,请看...原创 2018-04-06 12:53:03 · 5619 阅读 · 2 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(四)纹理
本篇目的是在Qt中学习使用QOpenGLTexture类绑定纹理,分别生成普通纹理,混合纹理与在shader中使用纹理单元。(Vries的原教程地址如下,https://learnopengl-cn.github.io/01%20Getting%20started/06%20Textures/ 关于函数的具体解析请看这个教程,本篇旨在对Vires思想做Qt平台的移植)一.生成普通纹理将...原创 2018-04-11 23:33:14 · 4216 阅读 · 4 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(一)简介
笔者写的这个教程集,是一项带引号的“翻译”类教程。Joey De Vries 的现代OpenGL教程是我看过最好的图形学教程,没有之一。(这是教程地址https://learnopengl-cn.github.io/01%20Getting%20started/01%20OpenGL/ ,点击打开链接,每篇教程都附有成品源代码,不过需要连接VPN)教程极好,却有一问题,作者是基于vi...原创 2018-04-04 21:11:03 · 6209 阅读 · 10 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(三)着色器
本篇目的是生成彩色三角形,如下图所示。并且按照Vries的方法优化类结构,详细的优化类思想及每条OpenGL函数的解析请看源教程。(这是基于visual studio教程的原地址https://learnopengl-cn.github.io/01%20Getting%20started/04%20Hello%20Triangle/)项目组织结构如下:因为QOpenGLSh...原创 2018-04-10 14:52:25 · 3905 阅读 · 2 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(七)摄像机
本篇目的是学习如何在OpenGL自由观察,即设计一个类似于3dMAX,Blender,或Unity3D中常见的摄像机观察机制。具有可以用键盘前后左右上下的视角控制功能,和鼠标拖移视角的功能。(Vries的原教程地址如下,https://learnopengl-cn.github.io/01%20Getting%20started/09%20Camera/关于OpenGL函数的详细解析及摄像机这...原创 2018-04-14 14:37:13 · 3653 阅读 · 3 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十二)光照贴图
(Vries的原教程地址如下,https://learnopengl-cn.github.io/02%20Lighting/04%20Lighting%20maps/ 关于OpenGL函数的详细解析及OpenGL关于满反射贴图与镜面反射贴图的知识点详情描述请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,重在记录自身学习之用)Qt开发平台:5.8.0编译器...原创 2018-04-30 17:17:57 · 873 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十三)投光物
(Vries的原教程地址如下,https://learnopengl-cn.github.io/02%20Lighting/05%20Light%20casters/ 关于OpenGL函数的详细解析及OpenGL关于平行光,点光源,手电筒的知识点详情描述请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,重在记录自身学习之用)Qt开发平台:5.8.0编译器:...原创 2018-05-01 18:32:38 · 901 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十五)obj模型加载
Vries的原教程里,对于模型载入,使用的是一种非常流行的模型加载库Assimp,可以方便的加载obj,fbx,3ds等常见的模型格式文件,在visual studio2015里,我照原教程进行了Assimp的配置,程序成功运行。在Qt中,把Assimp当作外库进行导入,试了很多种方法也不可以,万般无奈之下,我自写了一个基于Qt平台的简易模型导入程序,仅针对简易obj模型进行解析导入。ht...原创 2018-08-19 15:10:01 · 3257 阅读 · 15 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十一)材质
(Vries的原教程地址如下,https://learnopengl-cn.github.io/02%20Lighting/03%20Materials/ 关于OpenGL函数的详细解析及OpenGL关于光照材质的知识点详情描述请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,重在记录自身学习之用) Qt开发平台:5.8.0编译器:Deskto...原创 2018-04-30 00:54:36 · 945 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(未知)阴影映射
未完成!!!!黑近白远oglmanager.h#ifndef OGLMANAGER_H#define OGLMANAGER_H#include <QOpenGLFunctions_3_3_Core>#include "camera.h"#include "shader.h"#include <QOpenGLTexture>#include "...原创 2018-05-18 22:34:20 · 843 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(十)基础光照
这章内容简要说明Phone式光照模型中的环境光照(ambient), 漫反射(diffuse),镜面反射(specular)如何在OpenGL中的世界实现(Vries的原教程地址如下,https://learnopengl-cn.github.io/02%20Lighting/02%20Basic%20Lighting/#_7 关于OpenGL函数的详细解析及OpenGL关于基础光照的知识点详...原创 2018-04-27 22:26:33 · 1323 阅读 · 3 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(九)颜色
这章内容作为OpenGL的光照体系的一个起点,简单说明如何在OpenGL中应用颜色(Vries的原教程地址如下,https://learnopengl-cn.github.io/02%20Lighting/01%20Colors/ 关于OpenGL函数的详细解析及OpenGL关于颜色这里的知识点详情描述请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,...原创 2018-04-27 19:33:14 · 1576 阅读 · 4 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(未知)法线贴图
未完成!!!!(Vries的原教程地址如下,https://learnopengl-cn.github.io/05%20Advanced%20Lighting/04%20Normal%20Mapping/ 关于法线贴图的详细知识请看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,重在记录自身学习之用) 一.法线贴图 ...原创 2018-05-09 13:19:17 · 642 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(八)简单框架
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,本文以Vries的2D游戏框架为基础,(链接https://learnopengl-cn.github.io/06%20In%20Practice/2D-Game/01%20Breakout/ ),通过改变视口函数与其他一些简单操作,将其扩展为3D OpenGL框架,方便在此框架基础上,简化OpenGL的参数赋值操作。T...原创 2018-04-26 20:36:26 · 2280 阅读 · 19 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(待删除)高级光照
(Vries的原教程地址如下,https://learnopengl-cn.github.io/05%20Advanced%20Lighting/01%20Advanced%20Lighting/ 关于blinn光照详细内容看这个教程,本篇旨在对Vires基于visual studio的编程思想做Qt平台的移植,重在记录自身学习之用) Qt开发平台:5.8.0编译器:Deskto...原创 2018-05-04 14:27:44 · 766 阅读 · 0 评论 -
基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(三十三)PBR
Vries的教程是我看过的最好的可编程管线OpenGL教程,没有之一,其原地址如下,https://learnopengl-cn.github.io/07%20PBR/01%20Theory/ 关于PBR的详细知识了解请看原教程,本篇旨在对Vires基于visual studio平台的编程思想与c++代码做纯Qt平台的移植,代码移植顺序基本按照原教程顺序,并附加一些学习心得,重在记录自身学习之用...原创 2019-10-11 00:59:50 · 1244 阅读 · 1 评论