Render Texture (レンダーテクスチャ)は、ゲームグラフィックスのレンダリングや最適化(テクニカルアート)において極めて重要となる技術用語です。カメラの描画結果を通常のテクスチャアセットのようにビデオメモリ上に保持し、ゲーム内の3Dオブジェクトの表面にリアルタイムに描画する技術。
現実世界での例え:防犯カメラのライブ映像を『専用のモニター用ビデオテープ(VRAM領域)』に常時録画し続ける処理
Render Textureの仕組みは、「サブカメラのライブ映像を、テレビ画面に直結した『専用のビデオテープ(テクスチャバッファ)』に毎フレーム上書き録画し続ける仕組み」です。カメラが撮影した映像は、画面(スクリーン)に直接映す代わりに、このビデオテープ(RenderTexture)に送られて保存されます。そのビデオテープを、ゲーム内の3Dテレビや魔法の鏡のマテリアルに「テクスチャ」としてセットすることで、鏡の向こうの世界や監視モニターの映像を3Dシーン内にリアルタイムで自在に投影することができます。
図:Render Texture (レンダーテクスチャ)の基本的な処理フローと仕組みを日本語表記で分かりやすく図解したインフォグラフィック
詳細な仕組みと動作原理
プロジェクト内に「Render Texture」アセットを新規作成し、サブカメラの「Target Texture」プロパティに割り当て、そのレンダーテクスチャをゲーム内の3Dディスプレイマテリアルに貼り付けます。