環境
UE4.19.0
Rendererの種類について
先ず新規Emitterを作成すると下図のようなエフェクトが生成されます。
これはSprite Rendererでパーティクル作成でよく使用される基本形です。
SubUV Indexを利用することで煙や炎も表現することができます。
NiagaraのRendererの種類は全部で4種類あります。
・Light
使用について未検証のため、詳細が分かり次第追記予定です。
・Mesh
Static Meshをパーティクルに利用できるものです。
SFチックな盾や爆発の破片などに利用され、Spriteの次に利用されると思います。
・Ribbon
リボン形状のもので発生源から終点への軌跡を描きます。
綺麗なリボン上のものから複雑な形状まで表現できます。
・Sprite
パーティクルの基本形で最も利用されるものです。
Rendererの追加方法はEmitter, Systemの最下部にRenderカテゴリがあるため
そこの + ボタンから追加することができます。
"+"ボタンを押下すると下図のようにRenderer Properties一覧が出るので
使用したいRendererを選択しましょう。
Mesh Renderer
試しにMesh Rendererを追加してCubeを設定してみました。
また、設定したMeshのOverride Materialsを有効にすることで
Materialを変更することができます。
簡単にですが、Mesh Particleでシールドを作ってみました。
動きの制御はSpriteの時と同じなので、使いやすいですね。
Niagaraブログ掲載用動画
— まめお@技 (@PaperSlothTech) 2018年4月2日
Mesh Particle pic.twitter.com/awUslivRv9
Ribbon Renderer
Default EmitterにRibbon Rendererを割り当ててみました。
NiagaraPlugin内にDefaultRibbonMaterialがあるので、これを利用するとRibbonの基本的な動きは表現できそうです。
また、RibbonではEmitter自体はSpawn位置を少しばらつかせるだけで下図のようになります。
これにBlueprintで簡単な移動処理を加えるだけで面白い移動の軌跡を表現できます。
Niagaraブログ掲載用動画
— まめお@技 (@PaperSlothTech) 2018年4月2日
Ribbon Particle + Movement BP pic.twitter.com/8jTalN8m9F
NiagaraSystem, Actorについてのプログラマー向け小ネタ
Blueprintとの連携については以前に記事を書きました。
papersloth.hatenablog.com
Niagara Systemについて
Niagara SystemはLevel上に配置が可能ですね。
これは配置した時にNiagara Actorが作成されて、その下にNiagara Componentがアタッチされます。
また、Niagara System自体はUObjectを継承したクラスなので厳密にはNiagara Systemは配置していません。
Niagara Actorについて
Niagara Actorの継承関係を見るとActorを継承して作られていますね。
Niagara Actorを継承してBlueprintを作成すると
・Niagara Component
・Bliiboard Component
・Arrow Component
の3つがアタッチされていますね。
Niagara Actor側のソースコードを見ると分かるのですが
ほとんどEditor側でのみ有効になっています。
Runtimeで有効なのはNiagara Componentぐらい。
そのため、動作的にはActorを継承したBlueprintに
Niagara Componentをアタッチするのに近いですね。