【UE5】デカールマテリアルの使い方
プログラマーの尾関です。今回は壁に銃弾や血痕が付着する演出を作りたいときに役立つデカールマテリアルの使い方をまとめてみました。
なお今回の記事は以下の動画を参考にさせていただきました。
デカールマテリアルの作成方法
マテリアルを作成し以下のように設定します。

- Material Domain: Deferred Decal
- Blend Mode: Translucent
ノードは「Texture Sample」を以下のように接続します。

デカールをレベルに配置する
デカールマテリアルはそのままレベルに配置できます。

デカールマテリアルをレベルに配置すると「DecalActor」が自動で生成されます。

キャラクターがデカールの影響を受けないようにする
デカールは他のメッシュにも影響を与えます。

これを無効にするには、無効にしたいメッシュ設定から “Receives Decals” を OFF にするとデカールの影響を受けなくなります。


これで、デカールの影響を受けなくなりました。
デカールのパラメータ
デカールにはいくつかパラメータが用意されています。

フェードで消える
“Fade Duration” に 0 より大きい値が設定されていると、フェードで消えます。
例えば Fade Duration に “3.0” が設定されていると、3秒で消えます。

パッと消えてしまうのはマテリアル設定の問題で、以下のようにDecal Lifetime Opacity を掛け合わせる必要があります。

パラメータは以下のように設定しました。

- Fade Start Delay: 2.0 (フェードアウト開始まで 2秒遅らせる)
- Fade Duration: 3.0 (3秒かけてフェードアウトする)
- Fade in Duration: 0.1 (フェードインを 0.1秒で終わらせる)
フェードインの値が未設定だと1秒ほどのフェードインが行われるので、”Fade in Duration” を “0.1秒” としました。

描画プライオリティの設定
例えば以下のようにデカールが同じ奥行きにある場合に、どちらの描画を優先したい場合は “Sort Order” が大きいほうが前面に表示されます。

例えば生成数に合わせて、Sort Orderを大きくしていくと、後で生成されたデカールが常に前面に表示されるようになります。
デカールの発射
「Qキー」で前方にデカールを発射するBPです。
Spawn Decal at Location を使うと Decal Actor を生成できます。

参考
この記事を書くにあたって以下の動画を参考にさせていただきました。