テクスチャ アセット エディタ は、特定のカラー チャンネルをプレビューしたり、エディタ内で直接カラーを調整したり、圧縮プロパティを変更したりするなど、テクスチャ アセット をプレビューし、そのプロパティを編集する手段を提供します。 テクスチャ アセットはマテリアル エディタと組み合わせて使用されることがよくありますが、スカイ ライトにキューブマップを適用するなど、Unreal Engine の一部のコンポーネントに直接利用することができます。
テクスチャ アセットのタイプ
Unreal Engine にインポートしたり Unreal Engine で作成したりできる、複数のサポートされるテクスチャ ファイル タイプがあります。 これには、標準のイメージ タイプ (.png と .jpg)、キューブマップ (.exr)、IES プロフィール (.ies)、ボリューム テクスチャ、レンダー ターゲットなどがあります。
これらのタイプのファイルはそれぞれ、コンテンツ ブラウザでテクスチャ アセットとしてインポートおよび保存できます。 ファイルを開くと、テクスチャのタイプに応じてテクスチャ固有のオプションを使用し、テクスチャ アセット エディタによってツールバーがカスタマイズされます。
テクスチャ アセット エディタを開く
コンテンツ ブラウザまたは別のアセット (スタティックメッシュなど) の割り当てスロットでのテクスチャ アセットをダブルクリックすると、テクスチャ アセット エディタ でそれが開きます。 または、コンテンツ ブラウザでテクスチャを右クリックし、コンテキスト メニューから [Edit (編集)] を選択すると同じ操作を実行できます。
ThirdPerson テンプレートのキャラクターである Quinn に使用されている 3 つのテクスチャ アセットの例。
テクスチャ アセット エディタのインターフェース
テクスチャ アセットを開くと、テクスチャ アセット エディタ が以下の例のようになります。 このエディタから、テクスチャのプレビューやアセットの調整ができます。
このインターフェースには、次のものが含まれています。
ツールバー
ツールバーは、非破壊的なツールを備え、このテクスチャを調査およびプレビューするよう切り替えることができます。 テクスチャ アセットのタイプ (キューブマップ、ボリューム、テクスチャ) に応じて、ツールバーにはテクスチャに固有のオプションが表示されます。
テクスチャ アセット エディタで開いたキューブマップ テクスチャ。ツールバーのツールの多くが表示されています。
| ツールバー オプション | 説明 |
|---|---|
圧縮 | このテクスチャを圧縮します。 |
再インポート | ソース ファイルからテクスチャを再インポートします。 |
カラーチャンネル (RGBA) | クリックすることで、現在表示されているカラー チャンネルを切り替えます。 グレーで表示されている場合、そのカラー チャンネルはプレビュー ウィンドウに表示されていません。 |
ミップレベルセレクタ | チェック ボックスをオンにして、ミップの選択を有効にします。 ドロップダウンを使用して特定のミップを選択するか、または [+/-] ボタンを使用し、ミップ レベルを切り替えます。 |
露出バイアス | キューブマップ / IES テクスチャで、この設定を使用してソース イメージを明るくしたり暗くしたりします。 |
スライス | 有効にすると、すべての配列要素が同時に部分的に表示される標準ビューではなく、指定したインデックスの配列要素が Texture2DArray または TextureCubeArray によって表示されます。 |
フェース セレクタ | キューブマップ テクスチャでこのチェックボックスをオンにすると、キューブマップ テクスチャを構成する個々のフェースをプレビューできます。 |
3Dビュー | キューブマップ テクスチャでこのチェックボックスをオンにすると、キューブマップ テクスチャを構成する個々のフェースをプレビューできます。 プレビューでマウスの左ボタンをクリックしてドラッグし、ビューを回転します。 |
ズーム | スライダを使用し、テクスチャのプレビュー サイズを調整します。 ドロップダウンを使用して事前定義されたサイズを選択することに加え、全体に合わせたり全体を埋めるように設定のスケーリング オプションを使用できます。 |
表示設定 | このドロップダウンには、次のビューポート オプションが含まれます。
|
フェース セレクタ
キューブマップ、テクスチャ配列、またはボリューム テクスチャであるテクスチャ アセットには、テクスチャを構成する個々のフェースを表示するための Face(フェース)オプションが含まれます。 たとえば、キューブマップを表示し、[Face] チェックボックスをオンにすると、テキスト フィールドに ID 番号を入力することで、経度緯度のアンラップを構成する 6 つの個々のフェースの 1 つを表示できます。
表示されているキューブマップのフェースは、DDS の向きおよび順序に一致し、正の X、負の X、正の Y、負の Y、正の Z、負の Z となります。
3D ビュー
キューブマップ、テクスチャ配列、またはボリューム テクスチャであるテクスチャ アセットには、目的の 3D 表現のテクスチャをプレビューするための、 3D View オプションが含まれます。 プレビュー ウィンドウでマウスの左ボタンをクリックしてドラッグし、ビューを回転することで、3D 表現の向きを変えることができます。
スライス
テクスチャの 2D 配列アセットとテクスチャのキューブ配列アセットには、単一のテクスチャ配列で指定されたテクスチャ アセットのセットが格納されています。 [Details(詳細)] パネルを使用して、テクスチャの 2D 配列アセットとテクスチャのキューブ配列アセットの[Source Textures (ソース テクスチャ)] を指定します。 すべての追加済みスロットにテクスチャ アセットを割り当てると、ビューポート内にスライスされたプレビューが表示されます。
[Slice(スライス)] チェックボックスを使用して、配列を構成する個々のテクスチャ アセットのプレビューを表示します。
ビューポート
ビューポートは、テクスチャ アセットのプレビューを表示します。 RGBA の切り替えボタン、露出バイアス、ズームの数値など、すべてのテクスチャ アセットでほとんどのツールバー オプションが類似しているものの、一部のテクスチャではフェースの選択や 3D ビューなど、追加のオプションを利用できます。
[Details] パネル
[詳細] パネルには、編集できるテクスチャのプロパティや設定が表示されます。
テクスチャ情報
最上部のセクションには、テクスチャのさまざまな方向のサイズや、消費ディスク領域、形式など、テクスチャ固有のデータが表示されます。 このセクションの下では、このテクスチャの調整を行うことができます。 エンコード速度や LOD バイアスのプロパティなど、調整を行った設定の一部はこのテクスチャ情報に反映されます。
| プロパティ | 説明 |
|---|---|
インポート済み | インポートされたソース テクスチャのサイズ。 |
表示 | プレビューウィンドウに現在表示されているテクスチャ サイズ。 |
ゲーム内最大 | ゲーム内で可能なこのテクスチャの最大サイズ。 これは、ソース テクスチャのインポート サイズよりも大きくなることはありませんが、コンフィギュレーションやテクスチャの設定によっては小さくなることがあります。 |
リソースサイズ | 生のテクスチャ データによって使用される、アライメントされていないメモリ量。 |
アルファ チャンネル付き | テクスチャが現在アルファ チャンネルを使用しているかいないかを指定します。 [詳細] パネルにある設定からテクスチャのアルファ チャンネルを無効にできますが、ソース テクスチャではアルファ チャンネルが引き続きサポートされます。 |
検出されたソースアルファ | ソース テクスチャにアルファ チャンネルがあるかないかを指定します。 |
メソッド | 現在のテクスチャがストリーミングを使用しているかどうかを指定します。 |
形式 | このテクスチャに使用されている圧縮設定形式。 |
結合LODバイアス | 使用する最大ミップ レベルに対し、LODバイアス によって設定されるバイアスを表示します。 |
ミップ数 | このテクスチャが使用するミップ レベル数。 解像度が高いテクスチャの方が、解像度が低いテクスチャよりも多くのミップを持ちます。 |
エンコード速度 | [Fast]、[Final]、[Custom] など ([Oodle] パネルの使用時)、このテクスチャに使用されるエンコード速度を表示します。 |
詳細度設定
Level of Detail (詳細度) セクションでは、ミップ設定およびLOD設定を利用できます。 テクスチャのインポート中に、ミップ 0 から始まるミップ マップ チェーンが作成されます。 ミップ マップ チェーンは、複数のレベルのサンプル イメージから構成されており、それぞれの解像度は前のレベルの半分になっています。
| プロパティ | 説明 |
|---|---|
ミップ生成設定 | シャープニングやカーネル サイズなど、ミップマップ生成プロパティを定義するためのアセットごとに固有の設定です。
|
LODバイアス | 使用する最上位のミップ レベルのインデックスへのバイアス。 |
テクスチャグループ | このテクスチャが属するテクスチャ グループ。 |
| 詳細プロパティ | |
枠線を維持 | オンにすると、テクスチャの境界線がミップマップの生成中に保持されます。 |
ダウンスケール | ミップのないテクスチャに対し、ソース テクスチャをダウンスケールする量。
|
ダウンスケール オプション | ダウンスケーリング オプションは、ミップのないテクスチャにダウンスケーリングを使用する場合に利用できます。 以下から選択します。
|
シネマティック レベル数 | スケーラビリティ設定が [Cinematic (シネマティック)] に設定されている場合に使用するミップ レベルの数。 |
ストリーミングしない | 有効にすると、このテクスチャはストリーミングされません。 |
ミップレベルが存在することをグローバルに強制 | ForceMipLevelsToBeResident のグローバルかつシリアル化されたバージョンです。 |
ミップマッピング
ミップマッピングは、ミップのレベルによって高解像度のテクスチャを低解像度のテクスチャにダウンスケーリングするプロセスです。 ミップ レベルごとに、解像度は前のレベルの半分になります。これにより、遠距離のテクスチャの詳細度をさまざまなレベルにすることができ、多くの場合で外観を維持するのに必要となる詳細度が低下します。 このプロセスでは、低解像度のテクスチャを利用し、アーティファクトの発生を低減することで、レンダリングの時間が節約されます。
ミップ マッピングは、ソース テクスチャのサイズに基づいて必要な数だけミップを生成します。 たとえば、テクスチャが 1024 x 1024 の場合、ミップ レベルは 10 になります。 テクスチャが 4096 x 4096 の場合、ミップ レベルは 12 になります。
画像をクリックすると拡大表示されます。
以下のシーンでは、独自のディフューズと法線マップ テクスチャを使用して 2 つのマテリアルが設定されています。 左側のマテリアルにはミップ マップを使用したテクスチャはありません。 右側のマテリアルではミップ マップを使用しています。 ミップ マップを使用している右側のマテリアルと比較すると、左側のマテリアルでは遠距離で望ましくないエイリアシングが発生しています。 ミップ レベルによって解像度を下げることは、こうした遠距離での全体的な外観の向上にもつながります。
左はミップなしのテクスチャによるマテリアル。右側は、ミップを使用したテクスチャのあるマテリアルです。
2 つのマテリアルを拡大すると、異なるミップ マッピングによるエイリアシングの低下を確認できます。
左はミップなしのテクスチャによるマテリアル。右側は、ミップを使用したテクスチャのあるマテリアルです。
ミップ レベル セレクタの横にあるボックスをオンにすると、個々のミップ レベルを表示できます。 有効にした場合は、ドロップダウン メニューからミップ レベルを選択します。
ミップ レベルを選択すると、ビューポートでそのミップに自動的に切り替わり、[Details(詳細)]パネルのテクスチャ情報のセクションでは、選択したミップ レベルのサイズが現在表示されているサイズに反映されます。
圧縮設定
Compression (圧縮) カテゴリでは、テクスチャ、および最終的にはディスク上のサイズに適用される圧縮量に影響する品質に対して、構成可能な設定を利用できます。
| プロパティ | 説明 |
|---|---|
アルファなしで圧縮 | 有効にすると、すべての圧縮テクスチャ出力でアルファ チャンネルが不透明になるように強制します。 出力形式が非圧縮の RGBA の場合には適用されません。 |
エディタで最終エンコーディングを表示 | 有効にすると、このエディタ セッション中にテクスチャを最終品質で圧縮し、デフォルトの高速レベル (非 RDO) ではなく、最終レベル (RDO) のエンコーディングを使用します。 これにより、ゲーム内で使用される RDO エンコーディングを視覚的に確認することができます。 |
エディタで圧縮を遅らせる | 有効の場合、テクスチャ エディタで手動で圧縮あるいは保存されるまでテクスチャの圧縮を延期します。 |
圧縮設定 | テクスチャの作成時に使用する圧縮設定。 ドロップダウンから圧縮方式を選択します。 |
| 詳細プロパティ | |
最大テクスチャサイズ | 生成されたテクスチャの最大解像度。 値を「0」にすると、各プラットフォームの形式の最大サイズになります。 |
非可逆圧縮量 | テクスチャあたりの Oodle テクスチャの RDO ラムダ (圧縮係数) を制御します。 プロジェクトは全体的な RDO 品質レベルを備えていますが、テクスチャごとに品質レベルを調整しなければならない場合があります。 これを使用して RDO をオフにしたり、圧縮比率による品質のトレード オフを増減したりすることができます。 |
OodleテクスチャSDKバージョン | これは、テクスチャのエンコーディングに使用するための Oodle テクスチャ リブのバージョンを選択します。 新しいテクスチャを作成すると、これが現在のバージョンに設定され、以降の更新によってパッチが発生しないようにそのバージョンが維持されます。 なお、エンコーディングの問題を修正するためにテクスチャを変更し、最新バージョンを使用しなければならない場合もあります。 数値フィールドに「latest」を入力すると、更新できます。 このフィールドを空にすると、プロジェクトのレガシーのフォール バックが使用されます。 テクスチャを再インポートすると、最新の SDK バージョンを使用するようにテクスチャが自動的に更新されます。 |
ASTC圧縮品質 | 生成された ATSC テクスチャ (モバイル プラットフォーム テクスチャなど) の圧縮品質。 ドロップダウンを使用して品質を設定します。 |
圧縮キャッシュID | キャッシュ キーを変更することでテクスチャを強制的に再圧縮するために、この任意の ID を変更します |
クックプラットフォームのタイル処理設定 | プラットフォームでサポートされていれば、クック時にテクスチャをタイル処理し、サポートされていなければ、直線状のままにし、GPU に実際にサブミットされるときにタイル処理します |
テクスチャ設定
[Texture (テクスチャ)] カテゴリには、構成可能な設定が用意されており、外観、マテリアルでの使用方法、およびテクスチャ ストリーミングなどの最適化方法に影響を及ぼす可能性があるテクスチャ アセットを処理できます。
| プロパティ | 説明 |
|---|---|
2 の累乗モード | 2 の累乗のサイズにテクスチャをパディングする方法 (必要な場合)。
|
パディングカラー | Power of Two Mode が原因でサイズ変更した場合に、テクスチャのパディングに使用するカラー。 |
sRGB | テクスチャとそのソースを sRGB ガンマ色空間に配置するかどうかを指定します。 これは、8 ビットおよび圧縮形式でのみ使用できます。 アルファ チャンネルをマスクとして個別に使用する場合は、これをオフにします。 |
| 詳細プロパティ | |
X軸タイリング方式 | X 軸に使用するアドレッシング モード。 「wrap」、「clamp」、または「mirror」から選択します。 |
Y軸タイリング方式 | Y 軸に使用するアドレッシング モード。 「wrap」、「clamp」、または「mirror」から選択します。 |
アルファの範囲でミップをスケーリング | Alpha Coverage Threshold 以上のピクセル値を維持するようにミップの RGBA をスケーリングするかどうかを指定します。 これをオンにしない場合、Alpha Coverage Threshold は無視されます。 |
アルファの範囲のしきい値 | アルファ カバレッジを維持する場合に、チャンネルあたりのアルファ値。 「0」では、チャンネルが無効になります。 一般的に適切な値は「0.5」~「0.9」であり、「1.0」にはしないようにします。 |
新しいミップ フィルタを使用 | 有効にすると、通常は同じ結果でありながら、より高速なミップ生成フィルタを使用します。 まれに、新しいフィルタによって、古いフィルタにはなかった彩度のずれが生じる場合があります。 そのような場合は、この機能を無効にします。 |
緑チャンネルを反転 | 有効の場合、テクスチャの緑チャンネルが反転します。 これは、一部の法線マップに便利です。 |
フィルタ | このテクスチャをサンプリングする際のテクスチャ フィルタリング モード。 以下から選択します。
|
ミップロードオプション | テクスチャのミップをロードする方法を次から選択します。
|
ミップ作成後に正規化 | この設定は、法線マップのみに影響します。 より良好でシャープな品質になるように、ミップ生成の後に、法線マップにあるカラーを正規化します。 ミップ マップが法線マップ用に作成されたものである場合、法線はブレンドされることにより、短くなる傾向があります (正規化されない)。 BC5 などのエンコーディングを行うと、コンポーネントが破棄されるため、コンポーネントが破棄される前に正規化する必要があります。 これを行わないと、法線による詳細がミップ マップでは失われることになり、遠距離のミップ レベルでは平坦になったりソフトになったりします。 遠距離でのソフトニングは、コンポジット法線からラフネスへの変換を使用する意図的なソフトニングとは異なります。 この設定は、上位のミップ レベルには影響せず、下位のミップ レベルにのみ影響します。 これをオンにすると、遠距離の法線マップがシャープ (より適切) に表示されるようになります。 |
sRGB で従来のガンマを使用 | 有効にすると、sRGB を処理する場合に、FColor から FLinearColor への変換に pow(color, 1/2.2) など、単純化されたレガシー ガンマ空間を使用します。 |
ソースカラー設定 | ソース エンコーディングおよび色空間のためのテクスチャのカラー マネジメント設定。
|
仮想テクスチャストリーミング | バーチャル テクスチャリングを使用してこのテクスチャをストリーミングする場合は、有効にします。 |
アセットユーザーデータ | このアセットとともに保存されるユーザー データの配列。 |
テクスチャ調整設定
[Adjustment (調整)] カテゴリには、構成可能なプロパティが用意されており、輝度、彩度、色調の調整など、テクスチャ エディタを離れることなく非破壊的な方法でテクスチャを編集できます。
| プロパティ | 説明 |
|---|---|
輝度 | HSV 値をスケーリングすることでテクスチャの輝度を調整します。 これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
輝度カーブ | HSV 値を指定された強さまで上げることで、テクスチャのカーブを調整します。 これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
自然な彩度 | HSV 彩度アルゴリズムを使用し、彩度が高い色をそのままにしながら、ミュートされたカラーの強度を調整します。 これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
Saturation | HSV 彩度をスケーリングすることで、彩度を調整します。 これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
RGBカーブ | RGB 線形色空間を指定の強さまで上げることで、テクスチャの RGB カーブを調整します。 これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
色相 | HSV 色相を度数の値で入力することで、テクスチャの色相を調整します (0 ~ 360)。 これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
最小アルファ | アルファを指定した最小/最大範囲に再マップし、新しいvalue 0 を定義する これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
最大アルファ | アルファを指定した最小/最大範囲に再マップし、新しいvalue 1 を定義する これは、非破壊的な調整であり、ソース アートが利用できる必要があります。 |
クロマキーのテクスチャ | イメージのクロマキーを実行し、[Chroma Key Color (クロマキー カラー)] に一致するピクセルを透明な黒色で置き換えるかどうか。 |
クロマキーのしきい値 | クロマキーを実行する際、テクセルが[Chroma Key Color (クロマキー カラー)]と等しいとみなされるために一致する必要があるコンポーネントのしきい値。 正確な一致を必須とするには、値が 0 以下である必要があります。 |
クロマキーカラー | クロマキーの実行が有効になっている場合に、透明な黒色によって置き換えられるカラー。 |
コンポジット設定
[Compositing (コンポジット)] カテゴリには、このテクスチャでコンポジットを利用し、どのように適用するかを処理するための設定が用意されています。
| プロパティ | 説明 |
|---|---|
コンポジットテクスチャ | 法線マップのバリエーション (ほとんどがミップ マップによるもの) に基づき、ラフネスを変更するために定義できます。 ソース アルファがない場合、ベースのラフネスを定義するには Max Alpha が役立ちます。 法線マップには、このテクスチャと同数以上のミップが含まれている必要があります。 |
| 詳細プロパティ | |
コンポジットテクスチャモード | コンポジット テクスチャの適用方法を定義します。 CTM_RoughnessFromNormalAlpha などです。 |
コンポジット強度 | コンポジット エフェクトの強度を制御します。 デフォルト値は 1 であり、整数値 (1、2、4、8) を大きくするほど、エフェクトが強くなります。 これがスライダーではないのは、テクスチャの更新があまり高速ではないためです。 |
[Oodle] パネル
Oodle パネルでは、このテクスチャに影響する現在の設定についての情報が提供されます。また、[Rate Distortion Optimization (RDO)] エンコーディング オプションがディスク上の圧縮サイズにどのように影響するかを確認することができます。
Oodle テクスチャ エンコーディングの情報
[Oodle] パネルの最上部のセクションには、テクスチャのエンコード方法についての情報が表示されます。 これは、潜在的なアーティファクトを診断する際に、RDO がオンかオフかをチェックするのに適切な場所になります。
| プロパティ | 説明 |
|---|---|
エンコーダ | テクスチャに使用されるエンコーダの名前。 |
エンコード速度 | テクスチャを [Fast] エンコーディング設定と [Final] エンコーディング設定のどちらでエンコーディングするかを指定します。 |
RDOラムダ | このテクスチャに使用される RDO ラムダの値。 RDO ラムダは、Oodle で配信サイズに対してイメージ品質のバランスをどのように取るかを制御します。 これはメモリ使用量ではありません。 |
RDOラムダソース | RDO ラムダ値を決定する場所です。 ラムダ値は、[Project Settings (プロジェクト設定)]、テクスチャの詳細度 (LOD) グループの非可逆圧縮量、またはテクスチャの非可逆圧縮量に由来する場合があります。 |
エフォート | 使用されるエンコード エフォート。これは、より高品質の結果を見つけるために Oodle が費やす CPU 時間を指します。 |
ユニバーサル タイリング | 有効にすると、Oodle はその RDO 計算を調整し、コンソール プラットフォームについてはテクスチャがタイル化されるものとみなします。 非 RDO のエンコードには影響しません。 たとえば、RDOラムダは0であってはいけません。 コンソールで配信しない場合に、これでは効果がなくなります。 |
エンコーディング試行
エンコーディング試行は、さまざまなテクスチャ エンコーディング設定を試し、この特定のテクスチャにどのように影響するかを確認する手段を提供します。
こうした変更は、エディタでの再生時に表示されますが、テクスチャ アセット エディタを閉じると保存または使用されません。 こうした変更を永続的なものにするには、[、プロジェクト設定] で設定を更新する必要があります。 [Effort] や [Universal Tiling] など、一部の設定はテクスチャごとに構成できません。
| プロパティ | 説明 |
|---|---|
Enabled (有効) | チェックされている場合、結果を可視化するための Oodle Rate Distortion Optimization (RDO) 圧縮設定を試すことができます。 |
RDOラムダ | テストでエンコードする Rate Distortion Optimization (RDO) ラムダ。 「0」は RDO を完全に無効にします。 「1」でファイル サイズが最大になり、「100」で最小になります。 |
エフォート | 試行するエンコードエフォート。 エフォートはより良い結果を見つけるために費やされた CPU 時間を表します。 詳細については、Oodle Textureのドキュメントを参照してください。 |
ユニバーサル タイリング | 試行するユニバーサルタイリング。 詳細については、Oodle Textureのドキュメントを参照してください。 |
ディスク上のサイズ
[On-disk Sizes (ディスク上のサイズ)] には、プロジェクトの圧縮設定を取得し、それらをテクスチャのビットの圧縮に使用することで、テクスチャに対する RDO エンコーディングのメリットが表示されます。これは、プロジェクトの実際のパッケージ化の際と 同様の 方法で行われます。
これは、厳密なものではありません。 ただし、Try Encodings (エンコーディングを試行) セクションと組み合わせることで、さまざまな RDO ラムダ値で期待できるメリットのスケールがどのようなものか確認することができます。
| プロパティ | 説明 |
|---|---|
Enabled (有効) | チェックされている場合、テクスチャの Rate Distortion Optimization (RDO) エンコーディングのメリットを見積もるため、プロジェクト パッケージ化と同じ方式でテクスチャ データが圧縮されます。 |
パッケージ化設定 | [Project Settings (プロジェクト設定)] の [Project (プロジェクト)] > [Packaging (パッケージ化)] > [Advanced (詳細)] > [Compressor Effort Level (コンプレッサ エフォート レベル)] で、パッケージ化設定のどのセットを使用するかを指定します。 通常、これは [Distribution] のままにします。 Debug Development、Test Shipping、およびDistributionから選択します。 |
Oodleコンプレッサ | このテクスチャに使用される Oodle データ コンプレッサ。 |
Oodle圧縮レベル | Oodle コンプレッサの圧縮レベル。 これは、[Project Settings] の [Compressor Effort Level] に指定された数値に対応する名前です。 よりサイズが小さい結果を得るために Oodle が費やす時間を表します。 |
圧縮ブロックサイズ | パッケージ化中に Oodle データにパスされるチャンク サイズ。 これは、[プロジェクト設定] の [パッケージ化] > [詳細] > [パッケージ圧縮コマンドライン オプション] で |
非圧縮サイズ | パッケージ化の圧縮がない場合のテクスチャの大きさ。 パッケージ化の圧縮を無効にしている場合は、これがそのサイズです。 |
圧縮後のサイズ (推定) | 圧縮後のテクスチャの推定される大きさ。 RDO ラムダが大きい値になると、これは小さくなります。 |
Platforms (プラットフォーム) パネル
Platforms(プラットフォーム) パネルには、プラットフォームごとに「解決」されるさまざまなテクスチャ プロパティに関する情報が表示されます。 これらのプロパティは、複数の要因の影響を受けることがあり、完全なクックを実行したり、listtextures などのコマンドで実際に実行されているゲームの出力を調査したりしないと、結果の予測が困難になる可能性があります。
プロパティ
Texture Format は、使用される、基礎となるテクスチャ エンコーダおよび要求されるピクセル形式です。
ピクセル形式は、テクスチャ形式によって選択される実際の最終的なピクセル形式です。 場合によっては、テクスチャ ソースがアルファ情報を持っているかどうかを知っておく必要があります。 その場合、[Details (詳細)] パネルに移動して、[Source Alpha Detected (検出されたソース アルファ)] の横にある [Detect (検出)] ボタンをクリックします。
LODBias は、テクスチャに使用される、最終的に解決される詳細度バイアスです。
サイズは、LOD バイアスを適用した後のテクスチャのトップ ミップの最終サイズです。
ミップとは、テクスチャに含まれるミップの数と、そのミップがストリーミング、オプション、インライン化される数のことです。 さらに、プラットフォームがミップ テールをまとめてパックする場合、そのテール内のミップ数が表示されます。
Optional / Streaming / Inline は、エンコードされたテクスチャの合計バイト数です。 これらのいずれかの上にマウス カーソルを合わせると、ミップ チェーン全体の詳細が表示されます。これにより、LODBias が原因でドロップされたミップが表示されます。これには、個別のオプションの IOStore コンテナにあり、ディスクからストリーミングされ、テクスチャのロード (インライン)。
プラットフォームのアライメント要件や、基礎となるピクセル形式のブロック サイズ (あるいはその両方) により、サイズが想定どおりにならない場合があります。 これは、ミップ テール全体がインラインである必要があるため、インライン ミップとパックされたミップ テールで特に顕著です。
追記
以下では、プロジェクトでテクスチャを処理する際に便利な追記事項を紹介します。 これには、プロジェクト内のテクスチャを改善できるベスト プラクティスや最適化が含まれます。
BC6 および BC7 の圧縮
テクスチャに BC6 および BC7 による圧縮を使用する場合は、次のことを考慮してください。
ネイティブではサポートされないモバイル ターゲットに対して最適なマッピングを利用できるため、HDR 圧縮 (BC6) および BC7 を使用することをお勧めします。 たとえば、BC6 は RGBA16F に、BC7 はネイティブでサポートされない ASTC 4x4 にマッピングを行います。
HDR 圧縮 / BC6H は高品質であり、品質が最優先の場合を除き、未圧縮 HDR (RGBA16F) の代わりに使用するべきものです。 HDR 圧縮は、HDR (RGBA16F) よりも GPU メモリが 8 倍小さくなります。
BC7 は BC1 (AutoDXT) よりも品質が高く、RGB (非アルファ) イメージでバイト数を 2 倍使用します。 BC7 は、関連しないマスク イメージが異なるカラー チャンネルに含まれる場合など、BC1 でイメージが適切にエンコーディングされない場合に優れた選択肢となります。
アルファ (RGBA) を使用する BC7 は、BC3 (アルファを使用する AutoDXT、「DXT5」とも呼ばれる) と同じバイト数を使用します。 GPU メモリでのサイズは同じでも、品質はより高くなる場合があります。
現時点では、慣行として既存の BC3 の利用を BC7 に変更することはお勧めしませんが、変更することでメリットが得られる場合には、特定のテクスチャでは 1 つの選択肢となります。
2 の累乗でないミップ マップ
2 の累乗でないテクスチャは、ミップ マップをサポートします。 ただし、テクスチャのストリーミングを行うには、2 の累乗のテクスチャが必要です。 テクスチャの圧縮を利用するには、上位のミップ マップ レベルが 4 の倍数になっている必要があります。 2 の累乗でないテクスチャでは、インポート時に [Mip Gen Settings(ミップ生成設定)] が自動的に [NoMipMap] に設定されます。 2 の累乗でないテクスチャでミップ マップを有効にするには、[Mip Gen Settings(ミップ生成設定)] をドロップダウン リストから別のものに変更する必要があります。
Float32 のインポートおよび GPU テクスチャ形式
UASSET に、32 ビットの浮動小数点数のイメージ データをインポートおよび格納できます。 以前、これはインポート時に自動的に 16 ビットの浮動小数点数に変換されていました。 32 ビットの浮動小数点数のイメージを GPU テクスチャ形式として選択することもできます。 ただし、32 ビットの浮動小数点数は、すべての GPU で利用できるわけではなく、モバイルではポイントサンプルの 32 ビットの浮動小数点数イメージのみがサポートされます。 テクスチャをこれらのターゲットで Nearest フィルタに設定しない場合、テクスチャは 16 ビットの浮動小数点数に変換されます。
ピクセル形式のインポートおよびエクスポートのサポート
テクスチャのインポートおよびエクスポート オプションについては、次のことを考慮してください。
インポートとエクスポートではさまざまなピクセル形式がサポートされ、インポートされたピクセルは、通常ロスなく (変換することなく) UASSET に格納されます。 [Import HDR] では、イメージが 2D テクスチャまたは LatLong キューブマップとしてインポートされます。 エクスポートでは、変換することなくテクスチャ データを格納できる出力が得られます。 よくわからない場合は、DDS エクスポート出力形式を使用してください。これは、すべての Unreal Engine UASSET 形式をネイティブに保存するためです。
JPEG をインポートし、TextureSource に JPEG として格納し、元の JPEG をロスなくエクスポートできます。 同じ JPEG を再度取得できるという点でロスがなく、結果にさらなるロスは生じません。 インポート前からある元々の JPEG 形式のロスは維持されます。
最大 32768 x 32768 (UDIM なし) のテクスチャをバーチャル テクスチャとしてインポートできます。
テクスチャ配列
さまざまな形式およびサイズのソース イメージから、テクスチャ配列を作成できます (すべてが一致している必要はありません)。 サイズに制限はなく、イメージ サイズは配列内の最大のイメージに一致するように引き伸ばされます。
高速および最終エンコード
これは主に、Oodle テクスチャ RDO に影響を及ぼし、パッケージ内のテクスチャをさらに圧縮可能にするものです。
Oodle テクスチャのエンコーディングには、 高速 および 最終 という 2 つのセットのオプションによる速度レベルが含まれています。 多くのプロジェクトでは、[Final] レベルのエンコードは RDO エンコードに設定され、これはクックに使用されます。 [Fast] エンコードは非 RDO です。 エディタでは、[Final] の RDO テクスチャは、共有される DDC やクックなどから利用可能な場合にロードされますが、新規にインポートされるテクスチャは [Fast] の速度の非 RDO オプションを使用してエンコードされます。 [Final] でエンコードされた既存のテクスチャで作業し、それを変更した場合は、[Fast] エンコードに変更されます。 これにより、RDO エンコーディングで表示されなくなるため、視覚的な変化が生じる場合があります。
プロジェクトの [Fast] および [Final] の設定は、[Project Settings] の [Engine (エンジン)] > [Texture Encoding (テクスチャ エンコーディング)] にあります。