- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OpenGL备考资料
OpenGL的基本框架
OpenGL简介
OpenGL(Open Graphics Library,开放图形库),是一个三维的计算机图形和模型库,它源于SGI公司为其图形工作站开发的IRIS GL,在跨平台移植过程中发展成为OpenGL。。目前最新版规范是1999年5月通过的1.2.1。
OpenGL作为一个性能优越的图形应用程序设计界面(API),它独立于硬件和窗口系统,在运行各种操作系统的各种计算机上都可用,并能在网络环境下以客户/服务器模式工作,是专业图形处理、科学计算等高端应用领域的标准图形库。OpenGL在军事、广播电视、CAD/CAM/CAE、娱乐、艺术造型、医疗影像、虚拟世界等领域都有着广泛的应用。它具有以下功能。1. 模型绘制2. 模型观察3. 颜色模式的指定
4. 光照应用5. 图象效果增强OpenGL提供了一系列的增强三维景观的图象效果的函数,这些函数通过反走样、混合和雾化来增强图象的效果。反走样用于改善图象中线段图形的锯齿而更平滑,混合用于处理模型的半透明效果,雾使得影像从视点到远处逐渐褪色,更接近于真实。6. 位图和图象处理7. 纹理映射8. 实时动画为了获得平滑的动画效果,需要先在内存中生成下一幅图象,然后把已经生成的图象从内存拷贝到屏幕上,这就是OpenGL的双存技术(double buffer)。OpenGL提供了双缓存技术的一系列函数。9. 交互技术
帧缓存是图形显示设备的内存,这样图像就显示在屏幕上了。
1.2.3 OpenGL状态机
OpenGL是一种直接模式的API,每条命令根据当前的渲染状态都会产生某种立即效果。渲染状态是各种标记,他们指出哪些特性是打开的,哪些是关闭的,以及应该如何应用他们。在OpenGL中,使用glEnable函数和glDisable函数来启用和禁用渲染特征。
OpenGL的操作步骤
在OpenGL中进行的图形操作直至在计算机屏幕上渲染绘制出三维图形景观的基本步骤如下:
1. 根据基本图形单元建立景物模型,得到景物模型的数学描述(OpenGL中把点、线、多边形、图像和位图都作为基本图形单元);
2. 把景物模型放在三维空间中的合适的位置,并且设置视点(Viewpoint)以观察所感兴趣的景观;
3. 计算模型中所有物体的色彩,同时确定光照条件、纹理粘贴方式等;
4. 把景物模型的数学描述及其色彩信息转换至计算机屏幕上的像素,这个过程也就是光栅化(rasterization)。
OpenGL的组成
OpenGL不是一种编程语言,而是一种API(应用程序编程接口),它实际上是一种图形与硬件的接口,包括了多个图形函数。OpenGL主要由以下函数库组成。
1. OpenGL核心库
OpenGL核心库中包含了最基本的命令函数,它们都是以gl”为前缀可以在任何OpenGL的工作平台上应用。这函数用于建立各种各样的几何模型,产生光照效果进行反走样以及进行纹理映射,以及进行投影变换等等。
2. OpenGL实用程序库
OpenGL的实用程序库以glu”为前缀,在任何OpenGL平台都可以应用。这函数通过核心函数纹理映射、坐标变换、网格化、曲线曲面以及二次物体(圆柱、球体等)绘制等。
3. OpenGL编程辅助库OpenGL的辅助库以aux”为前缀,但不能在所有的OpenGL平台上使用OpenGL的辅助库的函数主要用于窗口管理、输入输出处理以及绘制一些简单的三维形体。
4. OpenGL实用程序工具包
OpenGL实用程序工具包(OpenGL utility toolkit,GLUT)其中的函数主要窗口系统的初始化,窗口管理,菜单管理,字体以及的绘制等。
5. Windows专用库Windows专用库函数有6个,每个函数以wgl开头,用于连接OpenGL和Windows NT,这些函数用于在Windows NT环境下的OpenGL窗口能够进行渲染着色,在窗口内绘制位图字体以及把文本放在窗口的某一位置等这些函数把Windows和OpenGL揉合在一起。…),gl表示这个函数来自库gl.h,color是该函数的根段,表示该函数用于颜色设定,3f表示这个函数采用了三个浮点数参数。这种把参数数目和参数类型加入OpenGL函数结尾的约定使人们更容易记住参数列表而无需查找它。
用OpenGL绘制图形
由于OpenGL是一种API,OpenGL库遵循C调用约定,这意味着在C语言中编写的程序可以很容易地调用API中的函数,本书的示例程序均以C语言编写。下面的程序利用GLUT库,在窗口的中心位置绘制一个矩形,其输出如图1.4所示。
程序清单1.1:在窗口内绘制一个矩形
#include gl/glut.h
void RenderScene(void)// 函数RenderScene
您可能关注的文档
最近下载
- 食品供应合同(米、面、油).doc VIP
- 高考历史海洋专题.pdf VIP
- (高清版)DB1331∕T 080-2024 雄安新区零碳建筑技术标准.pdf VIP
- 2021年10月自考02209机械制造装备设计试题及答案含解析.pdf VIP
- 总机厂、JZ-16-1000凿井绞车说明书.pdf VIP
- 【加班】-员工加班申请表.docx VIP
- 2025四川绵阳市江油鸿飞投资(集团)有限公司招聘40人考试备考试题及答案解析.docx VIP
- 2025-2026秋学生国旗下演讲稿(20周):第十六周时光长河中的暖阳--冬至.docx
- 24《寓言四则》24《寓言则》四则》.ppt VIP
- 蔬菜缺素症总汇.ppt VIP
原创力文档


文档评论(0)