在使用Open Graphics Library®(OpenGL®)计算机图形库进行计算机编程时,顶点缓冲区对象(VBO)是一种数据结构,允许构造三维(3D)对象并将其存储在图形卡或图形硬件的内存中。这使得OpenGL®VBO能够非常快速地进行渲染,并且使用的系统资源比使用即时模式绘图的其他技术少得多。除了提高速度和减少图形开销外,OpenGL®VBO也是一种动态数据结构,与OpenGL®显示列表不同,它可以在内存中更改。OpenGL®VBO的概念实际上始于硬件制造商,他们最初以不同的名称将类似类型的功能作为OpenGL®库的扩展,后来被OpenGL®体系结构审查委员会(ARB)标准化。
OpenGL®VBO基本上是其他两种类型的OpenGL®数据结构的组合。它包含顶点数组的基本功能,因为几何体的信息(包括顶点坐标、法线和颜色)都可以存储在结构化数组中,可以传递给OpenGL®进行处理。但是,与顶点数组不同,OpenGL®VBO存储在渲染器的服务器端,不需要经常访问客户端以获取顶点信息。
通过允许VBO存储在图形内存中,它还具有显示列表的某些属性。主要区别在于OpenGL®VBO可以修改,而显示列表不能修改。此外,VBO不必像显示列表那样复制到图形内存中,因此内存中只需要存在一个数据结构。
最终渲染OpenGL®VBO时,与存储它的图形内存和图形处理单元(GPU)之间的距离非常小,允许非常快速的光栅化,而无需首先通过较慢的系统硬件。但是,在某些情况下,图形卡硬件不支持使用VBOs。这可能会导致编程问题,从而消除使用VBO或与某些图形卡不兼容的程序带来的任何附加好处。
有一些方法可以帮助优化使用OpenGL®VBO时的处理方式。其中之一是向图形卡或OpenGL®提供提示,以帮助确定VBO在内存中的位置。根据提供的提示,VBO可以直接存储在图形卡上的图形内存中,也可以存储在系统的主随机存取存储器(RAM)中(如有必要)。
...编写程序。它们都是用C语言编写的。 覆盖的关键领域 1.什么是OpenGL–定义,功能2.什么是OpenCL–定义,功能3.OpenGL和OpenCL的区别是什么–主要区别的比较 关键术语 OpenGL,OpenCL 什么是opengl(opengl)? OpenGL是一个用于绘制二维和三...
Open Graphics Library®(OpenGL®)和DirectX®都是图形渲染程序,但两者之间存在重大差异。游戏程序员通常选择DirectX®,因为它有许多专门用于游戏渲染的功能,而OpenGL®则用于...
OpenGraphics Library®(OpenGL®)主要是一个编程接口,允许软件应用程序与图形硬件交互,并快速高效地创建三维(3D)场景。使用二维(2D)OpenGL®编程技术,库提供的硬件加...
开放图形库®(OpenGL®)ATI™ 驱动程序是由ATI开发的软件接口™ 这些技术将成为图形卡硬件和OpenGL®库抽象编程接口(API)之间的桥梁。每个操作系统都有不同的驱动程序,...
OpenGL®位图可以是两种类型之一,具体取决于使用该术语的上下文。位图的原始含义是一幅图像,其中每个像素位置都存储在一个位中,使其具有一个透明或实心的值。在引...
“OpenGL®照相机”是指开放图形库®(OpenGL®)场景中的查看器虚拟位置的名称。它由查看器在场景中的位置定义,然后由查看器查看的位置或方向定义。摄影机在OpenGL®场景...
...是无用的,除非存在可以绑定效果或纹理的图像;否则,什么也不会出现。使用帧缓冲区时,它会组合其他几个缓冲区,这使得图形资源池比单独使用缓冲区更高效。 ...
OpenGraphics Library®(OpenGL®)插件是一款软件,旨在向一个独立的中央应用程序添加一些基于OpenGL®的功能。对于图形应用程序,OpenGL®插件可以添加通过OpenGL®库处理的新渲...
Open Graphics Library®(OpenGL®)多边形是在OpenGL®中创建的由两个以上顶点组成的任何对象。本质上,任何不是点或线的对象都被视为多边形。OpenGL®和大多数图形卡通常都有特...
计算机编程和图形中的OpenGL®四边形或四边形是一种三维(3D)形状,也称为多边形,具有四条边和四个点。表示OpenGL®四边形的单个角点的每个3D点称为顶点,并由三个数字...