ゲームエフェクトデザイナーのブログ | A Real-Time VFX Artist's Blog

About Making Materials on UE, Making Tools with C#, etc

Particle Randomノードについて

UE4.12からマテリアルにParticle Random Valueというノードが追加されました。
ついにパーティクルごとにランダムな値を与えるノードが‥!

‥という訳でテスト用に組んだマテリアルがこちら。
値を視覚化するためにDebugノードに繋いでいます。

f:id:moko_03_25:20160816004220p:plain

で、Cascadeでエミッターに適用して、数字が見易いようビルボードを横長にしたのがこちら。
あれ‥全く効いていない‥?

f:id:moko_03_25:20160816004221p:plain

‥そこでタイプデータをGPUに変えたものがこちら。
0~1の範囲内でランダムな値が入力されている!
GPUパーティクルで効くということが分かります。

f:id:moko_03_25:20160816004222p:plain

さてこのランダム、何に使うか迷うところですが‥
定番ということでUVの開始ランダムに使ってみます。

f:id:moko_03_25:20160816004223p:plain

はい、見事にランダムになりました!
GPUパーティクルではDynamicParameterが利用できませんが、これでUVの初期位置をランダムにすることができます。ただし上記の構成ではUとVに同じ値が入るのでランダムと言えど斜めにスライドするだけの結果になってしまいますが、もう一工夫加えればもうちょっと崩れた感じにできると思います。

f:id:moko_03_25:20160816004224p:plain

以上、参考になれば幸いです。