OpenGL®缓冲区是计算机内存中用于存储信息序列的区域,因此无需每次重新计算数据即可快速轻松地访问这些区域。尽管与普通计算机编程一样,OpenGL®缓冲区基本上只是分配的计算机内存的连续块,OpenGL®本身实际上通过定义...
OpenGL®缓冲区是计算机内存中用于存储信息序列的区域,因此无需每次重新计算数据即可快速轻松地访问这些区域。尽管与普通计算机编程一样,OpenGL®缓冲区基本上只是分配的计算机内存的连续块,OpenGL®本身实际上通过定义缓冲区中保存的信息类型来构造程序中的缓冲区,以便可以使用某些优化,像素缓冲区和顶点缓冲区仅举几个例子。OpenGL®下的缓冲区的一个重要特点是,它们可以存储在对缓冲区内的信息进行访问的内存区域中。OpenGL®缓冲区的预期使用量有助于确定缓冲区的实际存储位置,通过将缓冲区声明为静态、动态或流定义的用法。OpenGL®通常用于呈现三维图形对象。使用OpenGL®缓冲区的一个优点是,它们能够位于访问速度非常快的内存中。重要类型的缓冲区(如帧缓冲区)实际上可以被放置直接进入正在使用的图形卡的内存中。这意味着信息可以直接从缓冲区传递到图形处理单元(GPU),而不必从一个物理硬件板传送到另一个物理硬件板。移动原始信息,如帧缓冲区内的预渲染屏幕,在不进行任何处理的情况下,到另一个内存位置是一种称为blitting的技术,它是在内存中移动信息的最快方法之一,虽然每一个都只是一个内存块,但其中最常用的一个称为帧缓冲区。帧缓冲区保存向显示设备显示当前帧所需的信息帧缓冲区内的信息与用于控制显示器显示内容的内存的排序方式相同。这意味着,如果帧缓冲区位于显卡上,则图像几乎可以立即以blit形式传送到屏幕上,虽然首先将场景渲染到缓冲区确实需要时间。其他类型的OpenGL缓冲区(如顶点缓冲区)可以保存整个信息序列。这些类型的缓冲区用于保存可能需要每秒多次访问或更改的连续信息块。此外,OpenGL缓冲区本身通常可以作为参数传递给函数,这些函数可以利用缓冲区的有序状态并快速执行计算
-
发表于 2020-08-07 22:31
- 阅读 ( 940 )
- 分类:电脑网络