OpenGraphics Library®(OpenGL®)主要是一个编程接口,允许软件应用程序与图形硬件交互,并快速高效地创建三维(3D)场景。使用二维(2D)OpenGL®编程技术,库提供的硬件加速可以提高性能,有时还可以简化不一定采用3D模型或转换的软件编程。使用2D OpenGL®最常用的方法是绘制带有图像纹理的四边形或矩形,从而有效地利用图像在3D空间中创建对象。一旦建立,这些四边形可以通过严格的2D方法进行操作,或者通过3D矩阵进行转换以获得特殊效果,否则仅使用2D光栅图形很难实现。当仅将3D库用于2D图形时,使用3D库会带来一些复杂情况,包括超精度,这会使隔离单像素位置变得复杂,以及对可能并不真正需要3D库的程序要求一些3D硬件支持。
许多硬件和软件开发人员提供驱动程序和自定义抽象编程接口(API),使其特定产品与OpenGL®库完全兼容。开放标准的广泛接受为程序员提供了一种直接访问各种系统硬件的方法。使用2D OpenGL®时提供的硬件加速可以使程序比其他方式运行更平稳。使用OpenGL®管道进行图形处理与使用传统2D编程方法(通常不采用OpenGL®那样的状态机模型)有很大不同,这一事实平衡了这种速度。
大多数2D OpenGL®程序使用与纹理图像比例相同的平面矩形来描绘图形。它的优点是渲染速度非常快,并且简化了编程,因此它使用了一些与基于光栅的缓冲图形相同的逻辑。使用OpenGL®可以更有效地执行某些效果,例如缩放图像、旋转图像或反转图像。
某些因素可能会导致2D OpenGL®程序比其他2D程序更复杂。其中一个因素是显示器上像素的精度。OpenGL®不像光栅图形那样将虚拟坐标系的一部分等同于屏幕上的一个像素,因此有时需要将浮点数用于屏幕坐标,以防止显示中出现间隙或奇怪的像素位置。
另一个问题是OpenGL®需要使用图形卡来提高渲染速度。如果应用程序使用OpenGL®显示界面或系统窗口,则没有图形加速功能的设备可能会损失最终用户认为非常基本的图形性能。OpenGL也不提供任何显示文本的本地支持,这意味着显示大面积的文本可能需要大量的自定义代码。
...编写程序。它们都是用C语言编写的。 覆盖的关键领域 1.什么是OpenGL–定义,功能2.什么是OpenCL–定义,功能3.OpenGL和OpenCL的区别是什么–主要区别的比较 关键术语 OpenGL,OpenCL 什么是opengl(opengl)? OpenGL是一个用于绘制二维和三...
...动程序,它非常模仿macosx-Dock的光滑外观。Cairo Dock可以与OpenGL一起工作,也可以与Ubuntu中的斯巴达Ubuntu Classic或Unity 2D接口相比,在功能上有了惊人的视觉改进。不过,它不仅看起来很光滑;dock允许定制行为、外观、插件和主题...
...机的高级或低级方面也很重要,这取决于程序员想要创建什么。 ...
OpenGL®计算机图形是通过使用OpenGL®软件而不是其他类型的计算机图形图像(CGI)程序显示的图像。这些都是通过使用计算机编码来显示的,就像计算机软件的开发一样。然...
在OpenGraphics Library®(OpenGL®)中,线是OpenGL®能够绘制的基本基本形状之一,它们构成了有时用于渲染三角形的构建块之一。OpenGL®线条只是两个顶点之间的直线连接图形。...
OpenGL®深度缓冲区是三维(3D)图形程序员最容易误解、最复杂、最有用的工具之一。有几种方法可以优化缓冲区,从而提高程序的帧速率,包括正确设置近剪裁平面和远剪...
Open Graphics Library®(OpenGL®)和DirectX®都是图形渲染程序,但两者之间存在重大差异。游戏程序员通常选择DirectX®,因为它有许多专门用于游戏渲染的功能,而OpenGL®则用于...
OpenGL®位图可以是两种类型之一,具体取决于使用该术语的上下文。位图的原始含义是一幅图像,其中每个像素位置都存储在一个位中,使其具有一个透明或实心的值。在引...
OpenGraphics Library®(OpenGL®)插件是一款软件,旨在向一个独立的中央应用程序添加一些基于OpenGL®的功能。对于图形应用程序,OpenGL®插件可以添加通过OpenGL®库处理的新渲...
Open Graphics Library®(OpenGL®)多边形是在OpenGL®中创建的由两个以上顶点组成的任何对象。本质上,任何不是点或线的对象都被视为多边形。OpenGL®和大多数图形卡通常都有特...