现在位置: 首页 > OpenGL
2015-07-26 06:42 工业·编程 ⁄ 共 5345字 暂无评论
在Qt5中,引入了QOpenGL*系列类,以取代Qt4时代的QGL*系列类。 下面是从Qt5例子中抠出的两种OpenGL程序模板,方便参考。 第一种写法: #ifndef TRIANGLEWINDOW_H  #define TRIANGLEWINDOW_H  #include <QWindow>  #include <QOpenGLFunctions>    class QPainter;  class QOpenGLContext;  class QOpenGLPaintDevice;  class TriangleWindow : public QWindow,...
阅读全文
2015-07-25 06:25 工业·编程 ⁄ 共 417字 暂无评论
OpenGL ES是Unity在现在的Android、ios等类似设备上用来渲染的底层库,是OpenGL的一个子集。 OpenGL ES在渲染能力、功耗设计中都考虑了移动设备的特殊性,所以现在的移动设备都是基于OpenGL ES 1.1或者2.0来渲染。 在Windows(MAC、Linux)上,Unity会根据自己跑的平台来决定用DX还是OpenGL,因为是你来做,也会想着尽量能把最好的硬件都利用上,对吧?! 所以,OpenGL ES跟Unity的关系也就很明了,Unity会根据不同的运行环境,...
阅读全文
2015-07-24 06:16 工业·编程 ⁄ 共 157字 暂无评论
红宝书:OpenGL编程指南 第8版 蓝宝书:OpenGL超级宝典 第5版 蓝宝书以例子为主,每个章节都有大量的示例代码,适合初学者上手实验。 红宝书则书如其名,更像是手册,API大全,例子较少,大部分篇幅是在解释API的参数规格和适用情形、注意事项等等,读起来像读字典,枯燥,不适和作为课文来学习,更适合OGL熟练者查阅。
阅读全文
2015-07-23 06:12 工业·编程 ⁄ 共 1336字 暂无评论
如果读者留意 OpenCV 2.3 之后的版本,那么会发现 cv::ogl namespace,ogl 自然是 OpenGL了。一个三维计算机图形库为何出现在计算机视觉中,传统的 CV 开发者是否需要学习它,这些问题待我一一来回答。 问题一:为何引入 OpenGL? 在 2.3 之前 OpenCV 的渲染部分都是由 CPU 来实现的,不论是画线还是把图片显示到屏幕上。这有两个问题,速度慢,同时没法画三维物体。引入 OpenGL 是为了借助 显卡的力量,显卡比 CPU 更擅长渲染...
阅读全文
2014-11-13 06:47 工业·编程 ⁄ 共 5830字 暂无评论
开发基于OpenGL的应用程序,必须先了解OpenGL的库函数。它采用C语言风格,提供大量的函数来进行图形的处理和显示。OpenGL库函数的命名方式非常有规律。所有OpenGL函数采用了以下格式 <库前缀><根命令><可选的参数个数><可选的参数类型> 库前缀有gl、glu、aux、glut、wgl、glx、agl等等,分别表示该函数属于OpenGL那个开发库等,从函数名后面中还可以看出需要多少个参数以及参数的类型。I代表int型,f代...
阅读全文
2014-11-12 06:45 工业·编程 ⁄ 共 11771字 暂无评论
随着显卡的飞速发展,更快的速度以及越来越多的新功能为硬件所支持,硬件的进步使得图形程序开发人员可以创造出更加绚丽的视觉效果,现在,电影级动画的实时渲染已不再是梦想。我们怎么在OpenGL中利用显卡的新特性呢?答案就是OpenGL扩展。 1、OpenGL扩展(OpenGL Extensions) OpenGL和Direct3D比较起来,最大的一个长处就是其扩展机制。硬件厂商开发出一个新功能,可以针对新功能开发OpenGL扩展,软件开发人员通过这个扩...
阅读全文
2014-11-09 06:09 工业·编程 ⁄ 共 5156字 暂无评论
对于3d 图形程序员,看到了这个标题,可能想到了硝烟弥漫的API大战… 首先声明,这篇文章并不参战,当然也不希望任何人利用本文的观点作为API战争的佐证,本文是要客观的阐述OpenGL 足以实现现代游戏的3d图形表现需要,而不是要贬低其它的API,比如Direct3D,当然本文的读者也不仅限于3d 图形程序员,也可以作为项目制作人选择什么API的一个参考。 如题所言,使用OpenGL制做3D游戏,当然,这不是说一定就直接使用OpenGL API来开...
阅读全文
    有前面5章的基础,接下来我们可以以自己的方式去实现一些经典书籍的示例程序。大多数的示例都存在过度封装的倾向,对于初学者来说,要找到“真正起作用的那行代码”非常困难。先把红宝书,即《opengl programming guide》第8版第3章关于各种绘制方式的例子用第五章封装的oglwindow库和glew库实现一下。         具体的函数声明,参数说明通通省了,如果想了解,直接查红宝...
阅读全文
经过前面4课,我们已经可以完成以下几个工作:         1)创建OpenGL环境         2)创建与OpenGL绑定的窗口         3)处理窗口消息         4)产生空间点         5)发送空间点给GPU         6...
阅读全文
      通过前面3章,我们得到了一个只需要使用微软opengl32.lib和glew32.lib的用于开发OpenGL程序的基本框架。这个框架是基于win32 api的,这样的程序框架好处是它最为简单,只使用尽可能少的第三方库和尽可能少的封装,这样才容易搞明白真正的底层原理。         但一旦开始编写实际有用的程序,我们总是会使用到各种各样的第三方库,对OpenGL来说,需要处理的最...
阅读全文