Zオーダー

概要 
Zバッファ法では描画される画面のピクセルごとに、オブジェクトの深度情報を比較して優先順位を付けるのに対し、Zオーダー法では描画する対象である3D空間におけるオブジェクトごとに、オブジェクトの深度情報を比較して優先順位を付け、オブジェクトが重なり合った場合には最も優先順位の高いオブジェクトがピクセルとして描画される。オブジェクト内の任意の一点（ポリゴンの重心あるいはオブジェクトの境界ボックスや境界球の中心など）の深度をもって、オブジェクト全体の深度とみなし、その比較によって描画の優先順位の順序付けを行う。

基本的には、2D平面に配置された2次元のオブジェクト同士の前後判定に使われる。例えば、GUIのウィンドウシステムではウィンドウマネージャによって、ウィンドウ同士の前後判定がZオーダー法で行われており、それによって画面に描画する順番を決めている。

Zバッファ法よりも必要リソースが少なくて済むので、3D空間における3Dオブジェクト同士の前後判定でも使われることがあるが、複雑な形のオブジェクト同士の前後判定、あるいはオブジェクトの食い合いなどがまともに描けず、後ろにあるオブジェクトが前に描画されることがあるため、普通はZバッファ法が使われる。しかし、Zバッファ法だけでは半透明のオブジェクトが重なる場合に対処できないため、視点からの距離をもとにあらかじめおおまかにZソートしておいてから、不透明物体のみを視点から近い順に描画した後、半透明物体のみを視点から遠い順に描画する混合手法が採用されることがあるZ ソート描画法。

2Dのオブジェクト同士の前後判定でも、Zオーダー法では互いに重なり合ったオブジェクトを正確に描画することができないため、オブジェクトを分割してそれぞれにインデックスを割り振ってレンダリングするなどの手法を取る必要がある。通例、2DグラフィックスAPIでZバッファを直接サポートすることはまれだが、Microsoft Windows 8以降に実装されているDirect2D 1.1では、エフェクト機能によりDirect3Dを経由してZバッファを間接的に利用することで、複雑に重なり合った三角形を正しくレンダリングすることができるDirectX の構成要素 - Direct2D 効果を使用して Z の限界を突破する MSDNマガジン。

3DベースのゲームでもカードゲームではZオーダー法が使われることがある。

 脚注 

 関連項目 
 画家のアルゴリズム
 Zバッファ
 3次元コンピュータグラフィックス
 Direct3D
 OpenGL
 canvas要素

Zおおたあ