UnrealEngineのNiagaraで何かに当たったパーティクルを消す方法

はじめに

  • UnrealEngineのパーティクルエミッタ「Niagara」でパーティクルが何かに当たったパーティクルを消す方法を紹介
  • 自分なりのやり方なので、他に良い方法があるかも・・・
  • Niagaraの基礎知識があることが前提
  • 表題以上のことは説明なし!
  • バージョンはUE4.25.3

なぜ?

雪や雨をNiagaraで作成した場合、屋根に当たっても消えず建物内でも表示されてしまう問題を改善したくて・・・。

例: ものすごい貫通してる。
ダウンロード.gif

方法

上記表題の処理を実装したいCollisionモジュールがある「Niagara Emitter」 or 「Niagara System」を開く。

無題.png

「パーティクル更新」の右にある十字マークを押して、表示されるリストから「新規または既存のパラメータを直接設定」を選択する。

検索欄に「Set」と入力すると見つけやすいかも。

無題.png


パラメータ設定

設定欄にある十字マークを押して、表示されるリストから「パーティクル Lifetime」を探す。

パーティクルの表示時間を設定するパラメータ。

無題.png


追加されたパラメータ右にある「▽」を押して「Lerp Float」を追加。
~~~~
無題.png

追加された欄のうち、Aの右にある「▽」を押して「Lifetime」を追加。Bは「0.0」のままでOK。

無題.png

「初期 Lifetime」の方じゃないよ!

Alphaの右にある「▽」を押して「Make Custom Float from Bool」を追加。
無題.png

Alphaが追加されると「Bool」「True Float」「False Float」の3つの欄が増える。そのうち、「Bool」の右にある「▽」をおして「HasColllided」を追加。
残りの2つは画像と同じように設定。

無題.png

HasCollidedはコリジョン判定が発生したときにTrueになる。

これで設定終了。

結果

↓のように貫通しなくなる。やったね。
ダウンロード (1).gif

ツイッターでシェア
みんなに共有、忘れないようにメモ

くろれきし@UE4でVRゲ作中

I'm indie game Developer. ITエンジニア2年目です。個人的にUE4で黙々とVRゲー作ってます。時々購入したVRゲームやクイズ等、他のこともつぶやくかも。

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント