メインコンテンツへスキップ
  1. 記事/

LumenのCardCaptureを差し替える

UnrealEngine UE5.0 Lumen

Lumen による GlobalIllumination(GI)は簡単で便利ですが、ごく稀に色を拾ってほしくない、または別の色を出したいことがあります
今回はメインパスと Lumen パスで別の色を出力する方法について記述します

※Lumen そのものについての説明はしません

UE4 のときのやり方 #

UE4 のときは、 GIReplace というノードを使えば、Lightmass での GI を別の色に置き換えることができました

GIReplace

UE5 では殆どの場合で Lumen と動的ライティングを使ったワークフローになると思うので、今後はあまり使われないかなと思います

Lumen 環境下でのやり方 #

UE5.0.3 時点では、Lumen 用の Replace ノードは存在していません
なので、Custom ノードを使用して HLSL で場合分けする必要があります

Lumen パスのとき、 LUMEN_CARD_CAPTURE というフラグが ON になっています
これを利用し、色を出し分けてみましょう

LumenReplace

Custom ノードのコードはこのようになります

#if LUMEN_CARD_CAPTURE
// Lumen用の出力
return Lumen;
#else
// メインパス用の出力
return Default;
#endif

置き換え結果はこのようになります
LumenScene の Overview によるプレビューです

差し替えなし

差し替え無し

差し替えあり

差し替えあり

参考記事 #

Lumen の技術的詳細
https://docs.unrealengine.com/5.0/ja/lumen-technical-details-in-unreal-engine/

Lumen - Material Pass Replace Node
https://forums.unrealengine.com/t/lumen-material-pass-replace-node/231883

Related

CharacterのCollisionをMeshの形状に合わせて追加する
UnrealEngine UE5.0 Character
CameraでActorを追尾(Tracking)する方法について
UnrealEngine UE5.0 Cinematic
最後に触ったプロジェクトが自動的に開いてしまう場合
UnrealEngine UE5.0 Troubleshoot