
opengl
文章平均质量分 84
leon_zeng0
从事激光领域软件开发,三维内雕软件,3d 打印机软件, 运动控制器,通讯,c, c++, verilog,fpga
技术移民加拿大,往返于多伦多和中国之间
喜欢旅游,游泳,徒步,自驾游,独轮平衡车,滑冰,单板滑雪
展开
-
mfc 下的OpenGL
建立一个SDI 的MFC工程,然后按一文设置好include lib 路径利用class wizard 建立几个message:Resize 可以参考下面代码,设置立体图,上面代码只是正面的平面图。glOtho2D 参看。原创 2023-11-05 11:35:55 · 845 阅读 · 0 评论 -
一个简单的opengl 程序
在freeglut 在mfc 下的编译_leon_zeng0的博客-优快云博客后想做一个简单的opengl 程序测试一下,发现也不容易。完成后贴在这里:这个在visual studio 2019 下编译运行。路径设置好才能成功编译,可以参照上文设置环境。原创 2023-11-04 10:26:45 · 228 阅读 · 0 评论 -
freeglut 在mfc 下的编译
介绍opengl 的扩展库 freeglut 的编译原创 2023-01-21 05:41:23 · 741 阅读 · 0 评论 -
现代opengl 设计入门,如何向mfc转移
在前面的入门教程中,从最基本的窗口建立,到三维贴图的交互,但我们的程序构架是 glfw + glad 。我一直在寻找转移的路线。我终于明白glfw 的功能就是窗口,上下文,交互,但没有菜单,对话框。在mfc 中不需要glfw, 但需要glad。本文是在visual studio 2017下实现完成的,然后做了简单修改,在visual studio 2010下也测试通过了。本文参考https:...原创 2019-02-18 10:24:07 · 1470 阅读 · 5 评论 -
现代opengl 设计 3D模型文件导入显示
利用3D模型导入库assimp, 可以读取很多种格式的3D模型文件,现在我们就用opengl 显示出来。而这需要一个桥,就是数据和opengl 显示,前文我们介绍了网格Mesh类,现在介绍model 类。有了这2个类,我们就可以完成了3D模型的显示。本文内容主要参照https://learnopengl.com/ 和https://learnopengl-cn.github.io/学习...原创 2019-04-02 01:27:31 · 6649 阅读 · 3 评论 -
现代opengl 设计 assimp 3D 模型加载库
本文介绍assimp 库的下载和编译,为我们用opengl 显示复杂3D 做准备。前面模型库说明部分引用https://learnopengl-cn.github.io/。到目前为止的所有场景中,我们一直都在滥用我们的箱子朋友,但时间久了甚至是我们最好的朋友也会感到无聊。在日常的图形程序中,通常都会使用非常复杂且好玩的模型,它们比静态的箱子要好看多了。然而,和箱子对象不同,我们不太能够对...原创 2019-03-29 06:11:29 · 2331 阅读 · 0 评论 -
现代opengl 设计,模型导入网格类
本文内容主要参照https://learnopengl.com/ 和https://learnopengl-cn.github.io/学习而来。使用Assimp,我们可以加载不同的模型到程序中,但我们要保存所有数据,需要一个合理的数据结构。本文介绍如此一个类,网格类,保存单个的可绘制实体的必要数据。而整个模型由多个网格组成,或者说网格向量组成我们需要显示的模型。首先我们来回顾一下我...原创 2019-03-29 11:00:16 · 1087 阅读 · 0 评论 -
现代opengl 设计 glDrawArrays与glDrawElements的功能与区别
基本介绍:glDrawArrays 和 glDrawElements 的作用都是从一个数据数组中提取数据渲染基本图元。( render primitives from array data )他们只是用不同的方式来将客户端中的数据传送到服务器的地址空间中,OpenGL支持3种方式来完成这个操作:(1)访问单独的数据元素(随机存储) (2)创建一个单独数组元素的列表(系统存取)(3)线性...原创 2019-04-14 04:30:48 · 12190 阅读 · 0 评论 -
现代opengl 设计 多个着色器的使用
现代opengl 程序中,都有一个着色器,我就想是不是可以有多个着色器呢?这样就催生了本文,2个着色器的例子。一个着色器包含顶点着色器和片段着色器。本文介绍2个着色器的使用例子,一个是纹理贴图,一个只是简单的长方体。下面先看看效果:现在把2个着色器代码展示出来:纹理图的顶点着色器:#version 330 corelayout (location = 0) in vec...原创 2019-04-17 01:19:04 · 4711 阅读 · 0 评论 -
现代opengl 设计入门,变换基础,向量和矩阵运算
直到目前,我们介绍opengl 的工程准备,窗口建立,画第一个三角形,着色器,纹理贴图。所有这些,都寻求问题描述简单,看上去是平面的操作一样。下面我们要进入opengl 的3D,因此需要了解一些必要的数学知识。本文就此做些简单介绍,向量,矩阵及其运算。如果你不能很好理解,至少看一遍吧,以后碰到不懂的地方,可以回过头,再查看本文。介绍完这些数学知识,简介opengl 程序中如何实战运用,GLM(...原创 2019-01-31 11:56:16 · 1178 阅读 · 2 评论 -
现代opengl 设计入门,与mfc 组合
在前面的入门中,都是一个main 函数,没有菜单,没有对话框,如果要的话,我就想到与mfc 的组合。mfc 有菜单,对话框,opengl做图形显示。我先是参考 cv::namedWindow, GLFWwindow以及其他程序嵌入到MFC中的教程1: 运行效果2:下载glfw, 并用cmake 建立编译环境,然后做如下一些小的修改。在前面入门中看到,glfw中窗口的创建, 就是...原创 2019-02-09 21:40:10 · 2111 阅读 · 0 评论 -
现代opengl 设计入门 准备第一个工程
本文主要是现代opengl第一个工程的准备,包括GLFW, GLAD,工程属性设置。本文参照 https://learnopengl.com/ 和 https://learnopengl-cn.github.io/ 学习而来,包含自己的学习体会和图示在内。在visual studio 2010下完成代码测试的。在我们用opengl 画出出色的效果之前,首先要做的就是创建一个OpenGL上...原创 2019-01-25 04:58:26 · 1074 阅读 · 0 评论 -
现代opengl 设计入门,第一个opengl 窗口
在上文中,我们做好了设计第一个opengl 窗口工程的准备,本文主要就是测试验证这个工程,其结果是产生一个oepngl 窗口,为opengl 画图,做好窗口设计。本文参照 https://learnopengl.com/ 和 https://learnopengl-cn.github.io/ 学习而来,包含自己的学习体会和图示在内。在visual studio 2010下完成代码测试的。...原创 2019-01-25 11:20:01 · 695 阅读 · 0 评论 -
现代opengl 设计入门,画图第一个三角形
在上文 现代opengl 设计入门,第一个opengl 窗口 中我们创建了一个现代opengl 的窗口,但里面什么也没有,那么这一节我们就画图第一个三角形。你会了画一个三角形,当然也会画很多图了,但我们简化,就画一个。本文参照 https://learnopengl.com/ 和 https://learnopengl-cn.github.io/ 学习而来,同时包含自己的学习体会和图示在内。...原创 2019-01-26 01:40:51 · 1201 阅读 · 0 评论 -
现代opengl 设计入门,着色器
上节现代opengl 设计入门,画图第一个三角形中我们在opengl 窗口画了一个三角形,其中也用到了着色器。本节主要介绍OpenGL着色器语言(GLSL)以及应用实例。先介绍GLSL语言,可以明白上节里着色器内容,设计一个纯色的三角形。从Uniform 开始,介绍一个随时间变色的三角形。更多属性开始,介绍一个多彩的三角形。最后介绍着色器类,简化我们每次的设计。本文参照 https://lea...原创 2019-01-27 06:00:59 · 922 阅读 · 0 评论 -
现代opengl 设计入门,纹理贴图
上节 现代opengl 设计入门,着色器 介绍了着色器语言GLSL, 可以绘制多彩的三角形。这节介绍更高级的着色,纹理贴图。先做纹理贴图的基本介绍,然后介绍其中几个重要设置:纹理环绕方式,纹理过滤,多级渐远纹理。接着介绍加载与创建纹理,应用纹理。最后是代码调试说明,三个附录文件。本文参照 https://learnopengl.com/ 和 https://learnopengl-cn...原创 2019-01-28 12:04:42 · 9904 阅读 · 2 评论 -
现代opengl 设计入门,坐标系统和立方体的纹理贴图
本文在 现代opengl 设计入门,纹理贴图 一文的基础上,引入opengl坐标系统,实现立方体的纹理贴图。介绍了opengl 的5个空间,3个变换矩阵。如果看这部分介绍比较繁琐,可以直接看看效果图,代码要点说明,利用提供的代码编译运行程序。本文参照 https://learnopengl.com/ 和 https://learnopengl-cn.github.io/ 学习而来,同时包含自...原创 2019-02-03 14:04:49 · 1725 阅读 · 0 评论 -
现代opengl 设计入门,opencv 纹理贴图
在 现代opengl 设计入门,纹理贴图 一文中介绍了用 stb_image.h 导入图片来实现openGL 的纹理贴图,而本文介绍另外一种方式opencv。 OpenCV是Intel®开源计算机视觉库,图像处理功能很强大。如果你熟悉opencv,或者正在使用,在做openGL 贴图的时候,肯定想如何组合。如果你对opencv 不熟悉,那你还是用stb_image.h 导入图片比较简单。ope...原创 2019-01-29 06:13:31 · 1598 阅读 · 0 评论 -
现代opengl 设计入门,摄像头
前面的教程 现代opengl 设计入门,坐标系统和立方体的纹理贴图 中讨论了观察矩阵view以及如何使用观察矩阵移动场景。OpenGL本身没有摄像机(Camera)的概念,但我们完全可以类比摄像头,来构造我们的view 变换矩阵。摄像或拍照时,我们变换摄像头的位置,对准目标,但可以左右偏摆一点,上下一点,还可以改变焦距改变取景的范围,进而控制我们的成像。本节将讨论如何在OpenGL中配置一个摄...原创 2019-02-06 04:40:20 · 1389 阅读 · 0 评论 -
现代 opengl 的驱动安装
以前一直用早期版本的opengl , 最近想更新我的opengl 知识。发现现在流行现代opengl,也就是opengl 3.3 以后的版本。听说最新版本是4.5, 但理念变化是3.3 版本。我看了教学的网站有 https://learnopengl.com/ 和 http://www.opengl-tutorial.org/在这些网站里都强调要安装最新版本的图形卡驱动程序,切记切记,但怎...原创 2019-01-24 12:51:02 · 7941 阅读 · 1 评论