Z-Write (深度書き込み / ZWrite)は、ゲームグラフィックスのレンダリングや最適化(テクニカルアート)において極めて重要となる技術用語です。オブジェクトを描画した際、そのピクセルのカメラからの距離(深度値)を専用のDepth Bufferに記録し、後続のオブジェクトの前後判定に利用する仕組み。

現実世界での例え:ホテルの空室管理板に『宿泊予定の仮スタンプ(距離)』を押し忘れる処理

Z-Writeは、「ホテルの各部屋(画面ピクセル)に対して、すでに客がチェックインした証拠のピン(深度値)をボードに刺す処理」です。ピンが刺さると、後から来た客(オブジェクト)は「すでに先客がいる」と分かります。しかし、半透明のゴースト(エフェクト)が部屋を使うときは、ピンを刺してはいけません(ZWrite Off)。ゴーストがピンを刺してしまうと、後から来た本物の人間が部屋に入れなくなってしまいます。ゴーストは静かに部屋を通り過ぎる(ブレンドする)だけにする必要があります。

Z-Write (深度書き込み / ZWrite) concept infographic diagram

図:Z-Write (深度書き込み / ZWrite)の基本的な処理フローと仕組みを日本語表記で分かりやすく図解したインフォグラフィック

詳細な仕組みと動作原理

半透明マテリアル(Transparent Queue)のZWriteプロパティを「OFF」に設定し、描画時に自らの距離情報をバッファに書き込まないようにして、重なりを正しくブレンドします。