opengl for windows nt及其程序设计

opengl for windows nt及其程序设计

ID:12508355

大小:24.34 KB

页数:12页

时间:2018-07-17

opengl for windows nt及其程序设计_第1页
opengl for windows nt及其程序设计_第2页
opengl for windows nt及其程序设计_第3页
opengl for windows nt及其程序设计_第4页
opengl for windows nt及其程序设计_第5页
资源描述:

《opengl for windows nt及其程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、OpenGLforWindowsNT及其程序设计OpenGL是在SGI、Microsoft、DEC、IBM和Intel等多家世界著名计算机公司的倡导下,基于SGI的GL标准,制定的一个通用共享的开放式三维图形标准。前几年,OpenGL虽然是开放式的标准,但是只能在具有UNIX操作系统的各种昂贵的工作站之间通用;尽管工作站上的OpenGL性能优越、编程方便、生成图形精美逼真,但是只有少数人能体会其中乐趣,而令大多数PC机用户望尘莫及。随着计算机技术的发展,工作站与PC机的性能日趋接近。Microsoft公司首先将O

2、penGL图形库链接到WindowsNT中,目前又将OpenGL动态库挂到最新Windows95上,这样,广大PC机用户就可充分享受OpenGL的乐趣了。更令人高兴的是,目前国内外出现了专门对OpenGL进行硬件加速的三维图形加速卡。这样,普通用户只要拥有一台Pentium90以上、16MBRAM、520MB以上硬盘容量的PC机以及一台43cm以上的大屏幕监视器和一块OpenGL三维图形加速卡组成的系统,就能与图形工作站相媲美,但价格却便宜数十倍。本文作者一直从事计算机图形应用开发工作。原来是在SGI工作站上利用

3、OpenGL开发图形程序,后来又首先在国内第一块三维图形加速卡AGC-3D上基于WindowsNT的Visual12/12C++环境下继续进行开发。在开发过程中,同一OpenGL程序几乎不用修改就能在两个平台间来回移植,效果甚好。一、OpenGL特点及功能OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操作系统,能十分方便地在各平台间移植。OpenGL具有七大功能。建模OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体以及复杂曲线和曲面绘制函数。变换OpenGL图形库的变

4、换包括基本变换和投影变换。基本变换有平移、旋转、变比和镜像四种变换,投影变换有平行投影和透视投影两种变换。颜色模式设置OpenGL颜色模式有两种,即RGBA模式和颜色索引。光照和材质设置OpenGL光有辐射光、环境光、漫反射光和镜面光。材质是用光反射率来表示。场景中物体最终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。纹理映射利用OpenGL纹理映射功能可以十分逼真地表达物体表面细节。位图显示和图像增强12/12图像功能除了基本的拷贝和像素读写外,还提供了融合、反走样和雾的特殊图像效果

5、处理。双缓存动画双缓存即前台缓存和后台缓存,简而言之,后台缓存计算场景、生成画面,前台缓存显示后台缓存已画好的画面。此外,利用OpenGL还能实现深度暗示、运动模糊等特殊效果。二、OpenGLforWindowsNT图形库OpenGL图形库一共有100多个函数。其中核心函数有115个,它们是最基本的函数,其前缀是gl;OpenGL实用库的函数功能更高一些,如绘制复杂的曲线曲面、高级坐标变换、多边形分割等,共有43个,前缀为glu;OpenGL辅助库的函数是一些特殊的函数,包括简单的窗口管理、输入事件处理、某些复杂

6、三维物体绘制等函数,共有31个,前缀为aux。此外,还有六个WGL函数非常重要,专用于OpenGL和WindowsNT窗口系统的连接,其前缀为wgl,主要用于创建和选择图形操作描述表以及在窗口内任一位置显示字符位图。这些功能是WindowsNT对OpenGL的唯一补充,见表1所示。表1管理图形操作描述表的WGL函数另外,还有五个Win32函数用来处理像素格式和双缓存。由于它们是对Win32系统的扩展,因此不能应用在其他OpenGL平台上,见表2所示。表2管理像素格式Win32函数12/12三、OpenGLforW

7、indowsNT程序设计OpenGLforWindowsNT的程序设计与OpenGLforUNIX的程序设计有一点小区别,关键就在于如何将OpenGL与不同操作系统下的窗口系统连接起来。如果调用OpenGL辅助库窗口管理函数,则不用考虑这些问题。下面将主要介绍在WindowsNT下OpenGL的程序设计关键。1.图形操作描述表在WindowsNT下窗口程序必须首先处理设备描述表,DC包含许多如何在窗口上显示图形的信息,即指定画笔和刷子的颜色,设置绘图模式、调色板、映射模式以及其他图形属性。同样,OpenGLfor

8、WindowsNT的程序也必须使用DC,这与其他Windows程序类似。但是,OpenGLforWindowsNT必须处理特殊的DC图形操作描述表,这是DC中专为OpenGL使用的一种。一个OpenGL应用图形操作描述表内有OpenGL与WindowsNT窗口系统相关的各种信息。一个OpenGL应用首先必须创建一个图形操作描述表,然后再启动它,最后在所定义的窗口内按常规方

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。