OpenGL模式是什么东西啊

发布网友 发布时间:2022-04-19 15:24

我来回答

2个回答

热心网友 时间:2023-07-03 15:47

OpenGL是一个跨语言、跨平台的应用程序编程接口(API),用于绘制二维和三维矢量图形。该接口由近350个不同的函数调用组成,用于从简单的图形位绘制到复杂的三维场景。

OpenGL的有效实现是使用windows、一些UNIX平台和Mac操作系统中的图形加速硬件。这些实现通常由显示设备制造商提供,并且非常依赖于制造商提供的硬件。

扩展资料:

OpenGL规范由OpenGL架构评审委员会(ARB)维护,该委员会成立于1992年。ARB由对创建统一的、普遍可用的API特别感兴趣的公司组成。

根据OpenGL的官方网站,2002年6月ARB的投票成员包括3dlabs、apple computer、ATI technologies、Dell computer、Evans&Sutherland;

惠普、IBM、英特尔、Matrox、NVIDIA、SGI和Sun Microsystems,微软的创始成员之一,于2003年3月退出。

参考资料来源:百度百科-OpenGL

热心网友 时间:2023-07-03 15:48

  OpenGL是近几年发展起来的一个性能卓越的三维图形标准,它是在SGI等多家
  世界闻名的计算机公司的倡导下,以SGI的GL三维图形库为基础制定的一个通
  用共享的开放式三维图形标准。目前,包括Microsoft、SGI、IBM、DEC、SUN、
  HP等大公司都采用了OpenGL做为三维图形标准,许多软件厂商也纷纷以OpenGL
  为基础开发出自己的产品,其中比较著名的产品包括动画制作软件Soft Image
  和3D Studio MAX、仿真软件Open Inventor、VR软件World Tool Kit、CAM软
  件ProEngineer、GIS软ARC/INFO等等。值得一提的是,随着Microsoft公司在
  Windows NT和最新的Windows 95中提供了OpenGL标准及OpenGL三维图形加速卡
  (如北京黎明电子技术公司的AGC-3D系列三维图形加速卡)的推出,OpenGL将
  在微机中有广泛地应用,同时也为广大用户提供了在微机上使用以前只能在高
  性能图形工作站上运行的各种软件的机会。

  OpenGL实际上是一个开放的三维图形软件包,它独立于窗口系统和操作系统,
  以它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以
  与Visual C++紧密接口,便于实现机械手的有关计算和图形算法,可保证算
  法的正确性和可靠性;OpenGL使用简便,效率高。它具有七大功能:

  1) 建模 OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提
  供了复杂的三维物体(球、锥、多面体、茶壶等)以及复杂曲线和曲面
  (如Bezier、Nurbs等曲线或曲面)绘制函数。
  2) 变换 OpenGL图形库的变换包括基本变换和投影变换。基本变换有平移、
  旋转、变比镜像四种变换,投影变换有平行投影(又称正射投影)和透
  视投影两种变换。其变换方法与机器人运动学中的坐标变换方法完全一
  致,有利于减少算法的运行时间,提高三维图形的显示速度。
  3) 颜色模式设置 OpenGL颜色模式有两种,即RGBA模式和颜色索引(Color Index)。
  4) 光照和材质设置 OpenGL光有辐射光(Emitted Light)、环境光
  (Ambient Light)、漫反射光(Diffuse Light)和镜面光(Specular Light)。
  材质是用光反射率来表示。场景(Scene)中物体最终反映到人眼的颜色是光
  的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。
  5) 纹理映射(Texture Mapping) 利用OpenGL纹理映射功能可以十分*真
  地表达物体表面细节。
  6) 位图显示和图象增强 图象功能除了基本的拷贝和像素读写外,还提供
  融合(Blending)、反走样(Antialiasing)和雾(fog)的特殊图象效果处理。
  以上三条可是被仿真物更具真实感,增强图形显示的效果。
  7) 双缓存(Double Buffering)动画 双缓存即前台缓存和后台缓存,简而言
  之,后台缓存计算场景、生成画面,前台缓存显示后台缓存已画好的画面。
  此外,利用OpenGL还能实现深度暗示(Depth Cue)、运动模糊(Motion Blur)等
  特殊效果。从而实现了消隐算法。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com