VRAM
ポリゴンの各頂点の位置情報や色情報などを配列形式でビデオメモリに格納しておき、レンダリングする際に高速参照できるようにするのが頂点バッファである。
また、レンダリングの際に頂点バッファ(頂点配列)中の特定のインデックスを指定して、プリミティブを構成するためのデータを参照することがしばしば行なわれるが、そのインデックス配列を格納するのがインデックスバッファである。
さらに、ワールド座標空間で定義されたポリゴンを画面座標に変換する際に必要となる変換行列、ポリゴン単位やメッシュオブジェクト単位の材質情報、あるいは光源(ライト)の色や減衰係数といった特性情報を格納するのが定数バッファ(定数レジスタ)である。プログラマブルシェーダーが導入されたDirectX 8以降では、定数バッファ(定数レジスタ)の用途やレイアウトはアプリケーションプログラマーが明示的に制御する。DirectX 9.0cまでは、頂点シェーダーの定数レジスタ数が256あるいはそれ以上、ピクセルシェーダーの定数レジスタ数が最大224と制限されていたが、DirectX 10以降では定数バッファ(定数レジスタ)が14スロット×4096ベクトルに拡張されるなど、制限が大幅に緩和されている。なお、DirectX 11.1以降ではさらに定数バッファのサイズ制限が緩和されている 。
VRAMの主用途はバッファであるため、入力用のバスと出力用のバスを独立させることによってスループットを改善させたものである。半導体素子が持つ能力の割に高速な処理が可能となるが、I/O回路が複雑となるため通常のRAMよりも割高である。
かつてはVRAMといえばデュアルポートRAMが主流だったが、低コストの機種ではデュアルポートRAMを採用しないものも多かった。近年SDRAMなどシングルポートRAMの高速化技術が発展するとデュアルポートRAMの衰退は顕著となり、現在ではGDDR3、GDDR4、GDDR5といった高速シングルポートRAMにとって代わられている。