Zバッファ
初代PlayStation (PS1) や3DO、セガサターンにはZバッファが搭載されていなかった。そのため、ポリゴン単位で前後関係を判定するZソート法が使用されていた。この方法はZバッファよりも省メモリであるというメリットがあるが、一方で交差するポリゴンを正しく描画できない、ソートのための処理時間を必要とする、などのデメリットもある。
なお、NINTENDO64にはZバッファが搭載されていた。以降、PlayStation 2やドリームキャストなどの後継機種では、Zバッファが搭載されることが標準的になっていった。
まず、画面(レンダーターゲット)内において、あるピクセルに物体(の一部)を描画する際に、物体表面の深度(奥行き)を保存しておく。ここでは例えば視点から最も手前の深度値をゼロと定め、奥に進むにつれて深度値が大きくなるものと定める(このルールは処理系によって異なる)。次に同じピクセルに物体を描画することになった場合、前回保存した深度の値と今回描画する物体の深度の値の大きさを比較する(この比較のことを、Zテストあるいは深度テストと呼ぶこともある)。もし今回の深度の方が大きければ、つまり奥にあれば、手前の描画済み物体に隠されて見えないので、新たにピクセルへ描画処理を行なわずに済むことになる。このため、手前に存在する物体から描画して、最後に奥に存在する物体を描画するようにすれば、計算時間を節約することができる。
Zバッファの基本的な原理はこのようなものであるが、このとき画面全体の深度をまとめて保存しておくメモリ領域もまたZバッファと呼ばれる。Zバッファは一般に2次元テクスチャの一形態として扱われる。
Zバッファという名前は、Z-coordinate(3次元空間の次元軸を表すXYZのうち、通例奥行きを表すことが多いZ軸の座標値)を保存するバッファ(一時領域)であるところから来ている。Zバッファは通例浮動小数点数を格納できるフォーマットであり、リアルタイムコンピュータグラフィックスでは16ビット、24ビット、32ビットなどがよく使われる。