Virtual Texturing (バーチャルテクスチャリング / SVT)は、ゲームグラフィックスのレンダリングや最適化(テクニカルアート)において極めて重要となる技術用語です。極めて巨大な高解像度テクスチャ(数十万ピクセルの広大な地形テクスチャなど)を小さなタイルに細分化し、現在画面に映っているタイルのみを動的にVRAMへ仮想展開して描画する高度なテクスチャ技術。
現実世界での例え:世界地図全体(数ギガバイト)の巨大な絵の具をすべて持ち歩くのではなく、今スマホの画面で拡大表示している『新宿エリアの1区画(数キロバイトのタイル)』の画像だけをサーバーから取り寄せて画面に貼るGoogleマップ方式の表示
アセット全体をメモリにロードするレガシーなアプローチを完全に破壊し、画面の解像度(見えている範囲)に必要な「最小限の切り抜きタイル」だけをVRAMの専用パレット(物理キャッシュテクスチャ)に随時上書き展開していくことで、メモリ消費量を完全に一定の極小サイズに抑えたまま、無限の超高解像度の世界を実現します。
図:Virtual Texturing (バーチャルテクスチャリング / SVT)の基本的な処理フローと仕組みを日本語表記で分かりやすく図解したインフォグラフィック
詳細な仕組みと動作原理
Unityの「Streaming Virtual Texturing (SVT)」機能を有効にし、地形全体のテクスチャを仮想的な巨大1枚絵として扱い、カメラのファインダーに写っているミクロな領域(タイル)のみをオンデマンドでVRAMにストリーミング展開します。