BLOGブログ

2023.08.02UE5UE/ Material

[UE5]「Switch」ノードと「Custom Stencil」は相性抜群!?

執筆バージョン: Unreal Engine 5.2

UE5.2でマテリアルエディタに「Switch」というノードが追加されました。

処理負荷は高めのノードなので使い所は吟味する必要がありますが、なかなか可能性を感じる便利ノードなので、

今回は”Custom Stencil”と組み合わせた用途について、紹介していきたいと思います

(※「Switch」ノードの基本的な使い方は下記の記事を御覧ください)

[UE5] 新規追加されたマテリアルノード「Switch」


メッシュに”Custom Stencil”を設定する

  1. “Custom Stencil”は初期設定だと無効なので、Project設定の「Custom Depth-Stencil Pass」を「Enable with Stencil」に変更してください
  2. レベル上にスケルタルメッシュを配置し、「Render CustomDepth Pass」をオンに設定し、「CustomDepht Stencil Value」を1以上に設定してください
  3. 今回は、3体のスケルタルメッシュにそれぞれ 1~3 の「Stencil Value」を割り当てました

ポストプロセスマテリアルを作成する

  1. 新規マテリアルを作成し、ポストプロセス用の設定を行ってください
  2. 「Switch」ノードを配置し、0~3 の “Input” を追加してください
  3. 下図のようにノードを組み、ステンシル毎に違う色を設定します
    “Custom Stencil”で取得できる値は元々整数なので、そのまま”Switch Value”に渡すだけでOKです
  4. 作成したポストプロセスマテリアルを、レベル上の PostProcessVolume に設定します

結果
 ”Custom Stencil” 毎に3色に塗り分ける事ができました!

まとめ

  1. “Custom Stencil”も「Switch」ノードも、扱う値が整数なので、値を無加工で使用できてお手軽!
  2. ノードが少なくシンプルな構成なので、後からStencilを増やすのも楽々!
    (「IF」や「Lerp」で同じことをやろうとすると結構面倒)
  3. 処理負荷の高いノードなので、ご利用は計画的に!