什么是opengl®vbo?(an opengl® vbo?)

在使用Open Graphics Library®(OpenGL®)计算机图形库进行计算机编程时,顶点缓冲区对象(VBO)是一种数据结构,允许构造三维(3D)对象并将其存储在图形卡或图形硬件的内存中。这使得OpenGL®VBO能够非常快速地进行渲染,并且使用的系统资源比使用即时模式绘图的其他技术少得多。除了提高速度和减少图形开销外,OpenGL®VBO也是一种动态数据结构,与OpenGL®显示列表...

在使用Open Graphics Library®(OpenGL®)计算机图形库进行计算机编程时,顶点缓冲区对象(VBO)是一种数据结构,允许构造三维(3D)对象并将其存储在图形卡或图形硬件的内存中。这使得OpenGL®VBO能够非常快速地进行渲染,并且使用的系统资源比使用即时模式绘图的其他技术少得多。除了提高速度和减少图形开销外,OpenGL®VBO也是一种动态数据结构,与OpenGL®显示列表不同,它可以在内存中更改。OpenGL®VBO的概念实际上始于硬件制造商,他们最初以不同的名称将类似类型的功能作为OpenGL®库的扩展,后来被OpenGL®体系结构审查委员会(ARB)标准化。

An OpenGL® VBO is stored on the server side of the renderer and does not need to constantly access the client side for the vertex information.

OpenGL®VBO基本上是其他两种类型的OpenGL®数据结构的组合。它包含顶点数组的基本功能,因为几何体的信息(包括顶点坐标、法线和颜色)都可以存储在结构化数组中,可以传递给OpenGL®进行处理。但是,与顶点数组不同,OpenGL®VBO存储在渲染器的服务器端,不需要经常访问客户端以获取顶点信息。

An OpenGL® vertex buffer is used to create a vertex buffer object (VBO), allowing objects within a three-dimensional (3D) scene to be rendered as part of a display list and not in immediate mode.

通过允许VBO存储在图形内存中,它还具有显示列表的某些属性。主要区别在于OpenGL®VBO可以修改,而显示列表不能修改。此外,VBO不必像显示列表那样复制到图形内存中,因此内存中只需要存在一个数据结构。

最终渲染OpenGL®VBO时,与存储它的图形内存和图形处理单元(GPU)之间的距离非常小,允许非常快速的光栅化,而无需首先通过较慢的系统硬件。但是,在某些情况下,图形卡硬件不支持使用VBOs。这可能会导致编程问题,从而消除使用VBO或与某些图形卡不兼容的程序带来的任何附加好处。

有一些方法可以帮助优化使用OpenGL®VBO时的处理方式。其中之一是向图形卡或OpenGL®提供提示,以帮助确定VBO在内存中的位置。根据提供的提示,VBO可以直接存储在图形卡上的图形内存中,也可以存储在系统的主随机存取存储器(RAM)中(如有必要)。

  • 发表于 2021-12-11 17:42
  • 阅读 ( 132 )
  • 分类:互联网

你可能感兴趣的文章

opengl(opengl)和开放计算语言(opencl)的区别

...编写程序。它们都是用C语言编写的。 覆盖的关键领域 1.什么是OpenGL–定义,功能2.什么是OpenCL–定义,功能3.OpenGL和OpenCL的区别是什么–主要区别的比较 关键术语 OpenGL,OpenCL 什么是opengl(opengl)? OpenGL是一个用于绘制二维和三...

  • 发布于 2021-07-01 12:42
  • 阅读 ( 423 )

什么是opengl®和directx®之间的区别?(the differences between opengl® and directx®?)

Open Graphics Library®(OpenGL®)和DirectX®都是图形渲染程序,但两者之间存在重大差异。游戏程序员通常选择DirectX®,因为它有许多专门用于游戏渲染的功能,而OpenGL®则用于...

  • 发布于 2021-12-08 14:35
  • 阅读 ( 145 )

什么是2d opengl®?(2d opengl®?)

OpenGraphics Library®(OpenGL®)主要是一个编程接口,允许软件应用程序与图形硬件交互,并快速高效地创建三维(3D)场景。使用二维(2D)OpenGL®编程技术,库提供的硬件加...

  • 发布于 2021-12-09 12:26
  • 阅读 ( 128 )

什么是opengl®ati™ 驾驶员(an opengl® ati™ driver?)

开放图形库®(OpenGL®)ATI™ 驱动程序是由ATI开发的软件接口™ 这些技术将成为图形卡硬件和OpenGL®库抽象编程接口(API)之间的桥梁。每个操作系统都有不同的驱动程序,...

  • 发布于 2021-12-11 17:31
  • 阅读 ( 141 )

什么是opengl®位图?(an opengl® bitmap?)

OpenGL®位图可以是两种类型之一,具体取决于使用该术语的上下文。位图的原始含义是一幅图像,其中每个像素位置都存储在一个位中,使其具有一个透明或实心的值。在引...

  • 发布于 2021-12-11 17:32
  • 阅读 ( 104 )

什么是opengl®相机?(an opengl® camera?)

“OpenGL®照相机”是指开放图形库®(OpenGL®)场景中的查看器虚拟位置的名称。它由查看器在场景中的位置定义,然后由查看器查看的位置或方向定义。摄影机在OpenGL®场景...

  • 发布于 2021-12-11 17:33
  • 阅读 ( 101 )

什么是opengl®帧缓冲区?(an opengl® framebuffer?)

...是无用的,除非存在可以绑定效果或纹理的图像;否则,什么也不会出现。使用帧缓冲区时,它会组合其他几个缓冲区,这使得图形资源池比单独使用缓冲区更高效。 ...

  • 发布于 2021-12-11 17:35
  • 阅读 ( 121 )

什么是opengl®插件?(an opengl® plugin?)

OpenGraphics Library®(OpenGL®)插件是一款软件,旨在向一个独立的中央应用程序添加一些基于OpenGL®的功能。对于图形应用程序,OpenGL®插件可以添加通过OpenGL®库处理的新渲...

  • 发布于 2021-12-11 17:37
  • 阅读 ( 119 )

什么是opengl®多边形?(an opengl® polygon?)

Open Graphics Library®(OpenGL®)多边形是在OpenGL®中创建的由两个以上顶点组成的任何对象。本质上,任何不是点或线的对象都被视为多边形。OpenGL®和大多数图形卡通常都有特...

  • 发布于 2021-12-11 17:37
  • 阅读 ( 153 )

什么是opengl®四元模型?(an opengl® quad?)

计算机编程和图形中的OpenGL®四边形或四边形是一种三维(3D)形状,也称为多边形,具有四条边和四个点。表示OpenGL®四边形的单个角点的每个3D点称为顶点,并由三个数字...

  • 发布于 2021-12-11 17:38
  • 阅读 ( 150 )
cuey5332
cuey5332

0 篇文章