実行時にメモリの使用量を抑え、変動を少なくするために、大きなテクスチャを作成して使用できる バーチャル テクスチャ (Virtual Texture) をプロジェクトで使用できます。
バーチャル テクスチャリング手法
Unreal Engine 4 (UE4) では、ランタイム バーチャル テクスチャリング (RVT) と ストリーミング バーチャル テクスチャリング (SVT) という 2 種類のバーチャル テクスチャリング手法をサポートしています。
ランタイム バーチャル テクスチャ | ストリーミング バーチャル テクスチャ |
---|---|
|
|
ランタイム バーチャル テクスチャ
ランタイム バーチャル テクスチャリング を使うと、複雑でプロシージャルに生成されたマテリアルやレイヤー化されたマテリアルを効率よくレンダリングできます。そのため、ランドスケープの複雑なマテリアルのレンダリングに最適です。ランドスケープ スプライン、デカール型のメッシュやマテリアル、一般的なランドスケープとオブジェクトのブレンドのレンダリング パフォーマンスやワークフローを改善できます。
詳細については、「レイトレーシングの設定」を参照してください。
Streaming Virtual Texturing
ストリーミングバーチャルテクスチャリング を使用すると、バーチャル テクスチャ ライトマップや UDIM (U-次元) のサポートなど、非常に大きなテクスチャ サイズを扱うときに、テクスチャ メモリのオーバーヘッドを削減できます。ストリーミング バーチャル テクスチャは、ミップ ベースのストリーミング テクスチャと同様に、ディスクからテクスチャをストリーミングする手法の 1 つです。
詳細については、「レイトレーシングの設定」を参照してください。
バーチャル テクスチャ ライトマップ
バーチャル テクスチャ ライトマップのサポートを有効にすると、ストリーミングのパフォーマンスとライトマップのベイクの質を高めることができます。
ライトマップのバーチャルテクスチャのサポートを有効にするには、[Project Settings (プロジェクト設定)] の [Engine (エンジン)] > [Rendering (レンダリング)] に移動し、 [Enable virtual texture lightmaps (バーチャル テクスチャ ライトマップを有効化)] をオンにします。

プロジェクトで使用するバーチャル テクスチャ ライトマップを制御するには、以下のコンソール変数を有効にします。
コンソール変数 | 説明 |
---|---|
r.IncludeNonVirtualTexturedLightmaps |
バーチャル テクスチャではないライトマップを生成/保存するかどうかを制御します。バーチャル テクスチャではないライトマップを含めると、アトラスのサイズが制約されるため、バーチャル テクスチャ ライトマップのメリットの一部が失われます。 |
r.VT.EnableLossyCompressLightmaps |
バーチャル テクスチャ ライトマップの非可逆圧縮を有効にします。非可逆圧縮をライトマップ テクスチャで使用する場合は、通常のカラー テクスチャと比べて品質が劣ります。 |