UE v5.1.1を使用しています。
HDRモニターを使用してエディターのビューをHDR状態にしました。
そのHDR状態の見た目をムービーレンダーキューを使用してレンダリング
したいのですが、レンダリング結果に輝度が反映されず輝度がクロップされて
いるように感じました。
HDRのビューの見た目をそのままムービーレンダーキューでレンダリングする
方法をご教授いただけますでしょうか?
、、長文になってしまったのですが、
exrで出力してAfterEffectsCC2023に読み込んで
AEビューの見た目をUEビューのHDR状態に合わせたいです。
以下設定手順です。
・・・
HDRモニター,win10,UEv5.1.1使用
01:win10のディスプレイ設定でHDR有効に。
↓
02:UEプロジェクトファイルのConfigフォルダ内にある
DefaultEngine.iniの
[/Script/Engine.RendererSettings]
の部分にr.AllowHDR=1を追記
↓
03:UE5.1.1のSlateRHIRenderer.cppの
EPixelFormat FSlateRHIRenderer部分を↓に書き換え
・・・
EPixelFormat FSlateRHIRenderer::GetSlateRecommendedColorFormat()
{
#if PLATFORM_WINDOWS
if (IsHDREnabled())
{
return GRHIHDRDisplayOutputFormat;
}
#endif
return bIsStandaloneStereoOnlyDevice ? PF_R8G8B8A8 : PF_B8G8R8A8;
}
・・・
↓
04:UE5.1.1起動後、コンソール設定
・ r.AllowHDR=1になっていることを確認
・プロジェクト設定⇒プラットフォームのwindowsをクリック、
・デフォルトのRHI:DirectX 12
・SM5 と SM6 にチェック
※その他はデフォルトのまま再起動
↓
05:UE再起動後コンソールで↓を設定
r.HDR.EnableHDROutput 1
r.HDR.Display.OutputDevice 5
これでビューの見た目はHDRになりました!
念のため r.HDR.UI.CompositeMode 0 を設定
↓
06:プロジェクト設定⇒レンダリングで↓を設定
・作業する色空間:ACES AP1/ACEScg
・ダイナミックグローバルイルミネーションメソッド:Lumen
・反射メソッド:Lumen
・カスタム深度ステンシルパス:Enabled with Stencil
・ポストプロセスアルファチャンネルサポート:Allow through tonemapper
・ブルーム、AO、AO静的割合、自動露出 ←をオフ
上記設定後再起動
07:レベル作成し、SkyLight、SkyAtomospher、VolumetricCloud、ExponentialHeightFog、
DirectionalLight1つ(ムーバブル)配置。
シーケンサーを使用してカットシーン作成(カメラ有り,PostProcessVolume)
カメラ・・・フォーカス:DoNotOverride ・ Exposure:Manual
PostProcessVolume・・・フォーカス:DoNotOverride ・ Exposure:Manual
ブルーム:ON、グローバルイルミネーション:Lumen
カラーグレーディング:デフォルトのまま(設定なし)
ポストプロセスボリューム設定:Enable、InfiniteExtentにチェック
・・・・・
08:ムービーレンダーキューのエクスポート設定
・exrシーケンス・・Compression:None
・ディファードレンダリング:デフォルトのまま
・アンチエイリアス:SpatialSample:1 TemporalSample:8 OverrrideAntiAliasingにチェック
Aliasing Method:TemporalSuperResolution
・・・
・カラー出力
DisableToneCurveにチェック
↑とは別パターンで↓の方法も試しました
OCIOConfigrationのIsEnableにチェック
コンフィギュレーションソース:NewOpenColorConfigration ※作成したコンフィギュレーションファイル
変換元色空間:ACES-ACEScg
ターゲットモード:色空間
変換先色空間:ACES-ACES2064-1
・・・
コンソール変数(念のために追加しました)
r.AllowHDR 1 r.HDR.EnableHDROutput 1 r.HDR.Display.OutputDevice 5
r.HDR.Display.ColorGamut 4 r.HDR.Display.MaxLuminance 1000
※r.HDR.Display.OutputDeviceを3にしてもダメでした
・・・
上記設定の他 ゲームオーバーライドを追加してもダメでした。
以上の設定でレンダリングしてAfterEffects CC2023.3で
ACESカラースペース設定で読み込んで配置したところ
ガンマ1.0なので一応ルメトリスコープの数値上は
輝度10000近くいっています。
しかし、
モニターカラーマネジメントACES sRGBを充ててAEビューを見たところ
UEの見た目と違っています。カラースペース(色味)はUE上の見た目を再現
出来ています。輝度だけがクロップされているというかSDRラットをあてて
SDRモニター用にしたような見た目といったほうが良いのかもしれません。
一番明るい部分の輝度が滑されている感じです。
、、長文本当に申し訳ございません。
何か足りない設定、あるいはそもそもそういうものなのでしょうか?
(exrのブラックポイント、ホワイトポイントの数値を調整して
UEビューの見た目を再現するしか現状手段がないのでしょうか、、)