OpenGL小白到精通(中级篇)(视频+源码+课件)

kuaidelasi · · 15 次点击 · 开始浏览    置顶

/s/1qUOHFv1y123BRvfoWpZyWQ 提取码: 7ury 一、OpenGL的概念 OpenGL是渲染2D、3D矢量图形硬件的一种软件接口。本质上说,它是一个3D图形和模型库,具有高度的可移植性,并且具有非常快的渲染速度。OpenGL并不是一种语言,而是更像一个C运行时函数库。它提供了一些预包装的功能,帮助开发人员编写功能强大的三维应用程序。 OpenGL可以在多种操作系统平台上运行,例如各种版本的Windows、UNIX/Linux、Mac OS 和 OS/2等。如今,OpenGL广泛流行于游戏、医学影像、地理信息、气象模拟等领域,是高性能图像和交互性场景处理的工业标准。 OpenGL的高效实现(利用了图形加速硬件)存在于Windows,部分UNIX平台和Mac OS。这些实现一般由显示设备厂商提供,而且非常依赖于该厂商提供的硬件。 二、OpenGL ES与WebGL OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 API 的子集,针对手机、PAD和游戏主机等嵌入式设备而设计 WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 结合在一起,通过增加OpenGL ES 的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。 三、OpenGL发展史 OpenGL是个开放的标准,虽然它由SGI(美国硅图公司)首创,但它的标准并不是控制在SGI的手中,而是由OpenGL体系结构审核委员会(ARB)所掌管。 ARB由SGC、DEC、IBM、Intel和Microsoft等著名公司1992年创立,后来又陆续添加了nVidia、ATI等图形芯片领域的巨擎。 ARB每隔4年开一次会,对OpenGL规范进行维护和改善,并出台计划对OpenGL标准进行升级,使OpenGL一直保持与时代的同步。 2006年,SGIG公司把OpenGL标准的控制从ARB移交给一个新的工作组:Khronos小组(www.khronos.org)。 Khronos是一个由成员提供资金的行业协会,专注于开放媒体标准的创建和维护。 四、OpenGL 工具库 GLUT 包含大约30多个函数,函数名前缀为glut。glut是不依赖于窗口平台的OpenGL工具包,由Mark KLilgrad在SGI编写(现在在Nvidia),目的是隐藏不同窗口平台API的复杂度。函数以glut开头,它们作为aux库功能更强的替代品,提供更为复杂的绘制功能,此函数由glut.dll来负责解释执行。由于glut中的窗口管理函数是不依赖于运行环境的,因此OpenGL中的工具库可以在X-Window, Windows NT, OS/2等系统下运行,特别适合于开发不需要复杂界面的OpenGL示例程序。对于有经验的程序员来说,一般先用glut理顺3D图形代码,然后再集成为完整的应用程序。这部分函数主要包括: 窗口操作函数: 窗口初始化、窗口大小、窗口位置函数等 glutInit()、glutInitDisplayMode()、glutInitWindowSize()、glutInitWindowPosition() 回调函数: 响应刷新消息、键盘消息、鼠标消息、定时器函数 GlutDisplayFunc()、glutPostRedisplay()、glutReshapeFunc()、glutTimerFunc()、glutKeyboardFunc()、glutMouseFunc() 创建复杂的三维物体: 这些和aux库的函数功能相同 五、项目技术分析 GLUT 库文件 本项目提供的 GLUT 库文件包括以下五个关键文件: glut.dll 和 glut32.dll:动态链接库文件,用于在运行时加载 GLUT 库。 glut.lib 和 glut32.lib:静态链接库文件,用于在编译时链接 GLUT 库。 glut.h:头文件,包含了 GLUT 库的所有函数声明和宏定义。 环境配置步骤 下载 GLUT 库: 您可以从官方网站下载 GLUT 库文件,或者直接使用本项目提供的压缩包。 文件放置位置: 将 glut.dll 和 glut32.dll 分别放置在 C:/Windows/System32 和 C:/Windows/SysWOW64 目录下。 将 glut.lib 和 glut32.lib 放置在自定义的库文件夹中,例如 F:\WorkSpace\OpenGL\OpenGLLibrary\Include。 将 glut.h 放置在 F:\WorkSpace\OpenGL\OpenGLLibrary\Include\GL 目录下。 Visual Studio 配置: 打开 Visual Studio 项目,配置项目属性: 在 VC++ 目录 中添加库文件路径。 在 链接器 -> 输入 中添加 glut.lib 和 glut32.lib。 将解决方案配置设置为 Debug x86。 代码引用: 在代码中使用 #include "GL/glut.h" 引用 GLUT 头文件。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

15 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传