エフェクト関係の記事を上げていこうかと思います。自分がわかる範囲であれば書いていこうかなと。今回はUE4での、パーティクル自体の歪みについての記事となります。歪みというのは、X軸とY軸を動かす事で、屈折の原理と似たようなものかなと。歪みを使う利点としてテクスチャそのものを変えるような処理であるために、同じテクスチャでも、差分をつくりやすくなるなどの利点があります。歪みを使うには、マテリアルの「TextureSample」のUVの入力ピンに、歪み用のノードを接続します。そのまま繋いでもうまく表示してくれません、理由はUVは座標のことであり、テクスチャ(2D)なので、X軸とY軸の2つのチャンネルの情報なのにテクスチャそのまま繋いでいるので、3チャンネル(RGB)の情報を入れているからです。間に「componentMask」というノードを挟むと、ちゃんと表示されるようになります。このノードの役割は、チャンネル数を削減するノードでありノード名の横の()内に、削減して使うチャンネルを表示しますこの画像の例の場合、テクスチャそのままから持ってきた3チャンネル(RGB)の情報を、2チャンネル(RG)に変えてくれます。このノードはこのような役割の他に、RとGとBチャンネルにそれぞれ別のグレースケールの情報を入れておき、個別に取り出すこともできます。「TextureSample」のノードには、この用に元々個別に出力するピンがあります。このノードから、ComponentMaskにて1チャンネルの情報を取り出すことは不要になるのですがこの様な、ほかのノードで加工した後に、取り出したい場合には有用です、UE4でのマテリアルエディタで色々加工したい場合には、所々で使う機会はあると思います。上の方で歪みを適用した元のテクスチャはどんなのかといいますとこのような、短調な粒子状のテクスチャになっていますただ、このままだと全体に模様が出来てしまい、エフェクトとしては使いにくくなってしまっていますなので、もう一つ同じテクスチャを追加し、「Multiply」で乗算すると、丸い形に切り抜かれます。この状態では、元々あったテクスチャ同士を合わせて、歪みを適用しただけなので、色々な用途に使いやすいか?と言われると正直疑問だと思います。このくらいであれば、テクスチャ自体に加工をしてやれば良いのでは?と、その方がテクスチャの枚数少なくなります。サムネイルに使った画像の様な、差分を作りやすくする様に組んでいきます。この歪み処理とある部分ですこの紫の部分の説明です歪み用のテクスチャを「componentMask」に繋いだあと「Multiply」にて「constant」の定数ノードを掛け算をしています歪ませるのはX軸とY軸を移動させているのですが、その数値を2倍にすることで、移動量を強くしています、この数値を強くしていくと、模様がどんどん変わっていきます。「DynamicParameter」を代わりにつないで、カスケード上で歪みの強度を操作した動きを作る事も出来ますし「ScalarParameter」を使うことで、マテリアルインスタンスやBP上から操作することも可能です。マテリアルインスタンスについては、下の公式ドキュメントを参考にしてください。インスタンス化マテリアルBP上での操作について、カスケードで使っているマテリアルのパラメータを変えることもできるのですが、長くなってしまうのと、記事を見かけなかったので、いずれ記事は書きたいと思います。「TextureCropping」このノードはUのショートカットキーがあるので、それで出しましょう。このノードはタイリング処理を行うためのノードであり、シームレスなテクスチャを使う場合は接続する事が多くなるであろうノードです。ノードの詳細部分にこの様な項目があり、ここでタイリング数を変えることができますシームレスに作ったテクスチャであれば、ここを高い数値にして上げることで、模様が細かくなります。この後ろの「Add」のノードは、こうやってつなぐもの、と覚えておけばOKです今回の例ですと、タイリング処理をする部分と歪みで模様と付ける部分の2種類を適用したかったのでその用な場合は、この「Add」ノードで加算してからUVにつなぐと綺麗につながってくれます。次にこの紫で囲った部分です最初の方のこの部分との違いは間に「Power」ノードが挟まっていることですこれは、マスク用テクスチャとコメントが入れてあるテクスチャでは外の方まで白すぎるのではないか?と判断したのでマテリアルエディタ上で調整しています。このノードの例ですと、このテクスチャを4乗している結果になりますノード自体に数値を入れていますが、Expとあるピンに、定数ノードなどを入れれば、その数値になるのでこちらも【「Multiply」にて「constant」の定数ノードを掛け算をしています】と上の方にある部分同様、「DynamicParameter」や「ScalarParameter」によって、動的に数値を動かすことも可能です。最後のこの部分は、言うまでもないかもしれませんがカスケード上にて、色を変えれるように「ParticleColor」を繋いでいるだけです。今回はここまでとなります、マテリアルでの歪みは、少々面倒な部分もあるかもしれませんが画像全体を動かすという、かなり影響の大きい処理であり、更に動的に数値の変更も可能なのでテクスチャをそのまま使っただけではできない用な、内側が蠢いていたりするようなエフェクトを作れたりもしますので、是非活用してくれればと思います。09:40【UE4】UE4によるパーティクルの歪みTweet広告を非表示にする関連記事2018-12-09【Niagara】Niagaraでの具体的な作例&NPCやNPCIによる、データ一括管理この記事は、AdventCalendar2018の9日目の内容となります。qi...2018-06-11【UE4】オーラっぽいエフェクト今回は、UE4のマテリアル周りの記事です。»プロフィールid:tktknkyo主にエフェクト関係の記事を上げていこうかと思います。torisutamoyasiはてなブログをはじめよう!tktknkyoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。