開発
開発
プラットフォームを選択

Unreal Engineにおけるトーンマッピング

更新日時: 2024/12/18
Meta Questにおいて、トーンマッピングに関連する従来のパフォーマンスコストを生じさせることなく、Unreal Engineの特定のトーンマッピングエフェクトを使うことができます。Meta Quest統合では、わずか600ミリ秒の追加レンダリング時間でトーンマッピングをレンダリングできます。これは、Unreal EngineのモバイルHDRモードや追加のレンダリングパスではなく、Vulkanサブパスを使っているためです。この機能は、Vulkanを使用するUEのOculus-VRフォークでのみ利用できます。
Example of tonemapping
Vulkanトーンマップサブパスは、次のポストプロセスエフェクトをサポートします。
  • カラーグレーディング(LUTを含む)
  • フィルムトーンマッピング
  • ビネット
Android Vulkan Previewがエディターでサポートされています。

サンプル

グラフィックショーケースのサンプルでは、よく使われる3種類のトーンマッピングエフェクトが紹介されています。
  • フェードイン/フェードアウト
  • 色合い昼夜サイクル
  • カラーグレーディングLUT
  • ビネット
グラフィックショーケースサンプルアプリは次の場所で入手できます。

トーンマッピング用のサブパスを有効にする

トーンマッピング用のVulkanサブパスを有効にするには、r.Mobile.TonemapSubpass=1と設定します。
トーンマッピングが不要な場合にVulkanサブパスを無効にしてパフォーマンスを回復するには、r.Mobile.TonemapSubpass=0と設定します。

トーンマッピングのさまざまなエフェクト

特定のトーンマッピングエフェクトは、後処理ボリュームプロパティとレベルシーケンスで値を変更すれば実装できます。具体的には、次のものに対するVulkanサブパスのサポートが実装されています。
  • レベルシーケンスでのフェードトラック
  • 後処理ボリュームプロパティでのシーン色合い
  • 後処理ボリュームプロパティでのカラーグレーディングLUT
  • 後処理ボリュームプロパティでのビネット

フェードインとフェードアウト

フェードインとフェードアウトは、レベルシーケンスにフェードトラックを追加し、フェードトラック上でキーポイントを定義することにより実装できます。フェード値1.0は完全不透明の黒、0.0は完全透明です。
フェードを実装するには、次のようにします。
  1. メインツールバーから、[Cinematics(シネマティクス)] > [Add Level Sequence(レベルシーケンスを追加)]をクリックします。
  2. シーケンサーで、[+ Track(トラック追加)]をクリックしてから、[Fade Track(フェードトラック)]を選択します。
    Level sequence with a Fade
  3. フェードトラックを選択し、[o]をクリックして、キーフレームを追加します。

色合い

後処理ボリュームを追加し、ボリュームのシーン色合いプロパティを変更することで、色合いやトーンを追加できます。
基本的な色合いを追加するには、次のようにします。
  1. [Post Process Volume (後処理ボリューム)]アクターをレベルに追加します。
  2. [Post Process Volume Settings (後処理ボリュームの設定)]プロパティに移動し、[Enabled (有効)][Infinite Extent (Unbound) (無限(制限なし))]を選択します。
    Post Process Volume settings
  3. [Color Grading|Misc(カラーグレーディング|その他)] > [Scene Color Tint(シーン色合い)]プロパティを、目的の色合いに設定します。
    Post Process Volume scene color tint settings

昼夜サイクル

シーケンサーを使って、後処理ボリュームの色合いを時間と共に変化させることによって、昼夜サイクルをアニメーション化できます。例えば、シーン色合いを、夜間は青、明け方は赤、昼は自然白色と徐々に変化させることができます。
シーン色合いプロパティの変更シーケンスを作成するには、以下のようにします。
  1. メインツールバーから、[Cinematics (シネマティクス)] > [Add Level Sequence (レベルシーケンスを追加)]をクリックします。
  2. シーケンサーで、[+ Track(トラック追加)] > [Actor to Sequencer(アクターをシーケンサーに)]をクリックした後、後処理ボリュームを選択します。後処理ボリュームがシーケンサーに追加されます。
  3. シーケンサーに追加された後処理ボリュームで、[+ Track(トラック追加)] > [Settings(設定)] > [Color Grading|Misc(カラーグレーディング|その他)] > [Scene Color Tint(シーン色合い)]をクリックします。シーン色合いの設定がシーケンサーに追加されます。
  4. [Scene Color Tint (Settings)(シーン色合い(設定))]を展開し、[o]をクリックして、目的の場所にキーフレームを追加します。
    Tonemapping day night sequence

カラーグレーディングLUT

LUTを適用することにより、カラーパレットやカラーグレーディングを変更できます。LUTを自分で作成することも、UnrealマーケットプレイスからLUTを入手することもできます。
カラーグレーディングLUTを適用するには、次のようにします。
  1. LUTテクスチャーをプロジェクトに追加します。
  2. [Post Process Volume (後処理ボリューム)]アクターをレベルに追加します。
  3. [Post Process Volume Settings (後処理ボリュームの設定)]プロパティに移動し、[Enabled (有効)][Infinite Extent (Unbound) (無限(制限なし))]を選択します。
    Post Process Volume settings
  4. [Post Process Volume(後処理ボリューム)] > [Color Grading(カラーグレーディング)]プロパティに移動します。
  5. [Color Grading LUT (カラーグレーディングLUT)]を選択し、適用するLUTテクスチャーをリストから選択します。
    Post Process Volume color grading settings

ビネット

後処理ボリュームのレンズ画像エフェクトのプロパティにより、楕円ビネットを適用することができます。
基本的なビネットを追加するには、次のようにします。
  1. [Post Process Volume(後処理ボリューム)]アクターをレベルに追加します。
  2. [Lens(レンズ)] > [Image Effects(画像エフェクト)]プロパティに移動し、[Vignette Intensity(ビネット強度)]を選択して設定します。
    Post Process Volume vignette settings

トラブルシューティング

エフェクトが表示されない場合、次のことを確認してください。
  • [Post Process Volume Settings(後処理ボリュームの設定)] > [Enabled(有効)]を選択したこと。
  • カメラが後処理ボリュームの範囲内にあること、または[Post Process Volume Settings(後処理ボリュームの設定)] > [Infinite Extent (Unbound)(無限(制限なし))]を選択したこと。
Post Process Volume settings
ナビゲーションロゴ
日本語
© 2026 Meta