Visual Effect Graphのパーティクルを衝突させる

投稿者: | 2020-02-16


Visual Effect Graphのパーティクルを他のオブジェクトと衝突できるようにします。

コライダー付きのPlaneオブジェクトをワールドの原点に置いて、その真上の(0, 5, 0)くらいにVisual Effectを置きます。
このVisual Effectオブジェクトに設定したVFXグラフをダブルクリックで開いて、「Update Particle」コンテキストで右クリックから「Gravity」ブロックを付けます。

シーンではこれでパーティクルが落下しますが、Planeオブジェクトをすり抜けます。

Planeオブジェクトに衝突させるために、さらにUpdateに「Collide with Plane」ブロックを追加します。

「Collide with Plane」ブロックはパーティクル一つ一つに当たり判定をつけるもので、ここで設定する平面にパーティクルが衝突できるようにします。
Planeの設定をするには、Planeの項目の横の三角形をクリックします。

展開された項目で、Planeの位置と表面の向きを設定します。デフォルトでは(0, 0, 0)の位置で真上を向いています。

これはローカル座標なので、「L」のマークをクリックして、「W」に変えることでワールド座標にします。

シーン上のPlaneオブジェクトも同じ座標にあるので、パーティクルがPlaneオブジェクトに衝突しているように見えます。

「Collide with Plane」ブロックを選択すると、シーン上でパーティクルが実際に衝突しているPlaneが見えるようになります。

パーティクルをバウンドさせる

Bounceの値で、パーティクルのバウンドを制御します。

パーティクルの摩擦

NormalのX座標を上げて、Planeを傾けてみます。

Planeに衝突したパーティクルが坂を転がるように滑っていきます。

Frictionを値を上げると、この摩擦力が大きくなります。

球と衝突させる

「Collide with Sphere」ブロックを使うと、衝突するものの形が球状になります。

Radiusは半径なので、同じ場所に置くSphereオブジェクトはサイズをこの2倍にします。

コメントを残す

メールアドレスが公開されることはありません。