3 / 4 Turbulence・Force・Linear Dragを比較する
UpdateのBlockを一つずつ切り替え、Turbulence、Force、Linear Dragの影響を比較します。
Turbulenceでの乱流表現
Turbulence (乱流)は、パーティクルの位置に応じたノイズで速度に干渉するブロックです。
熱にまかれた焚火の火の粉のような、自然ながらも複雑に動くパーティクルの動きを実現できます。
見本では次の値が設定されています。
| 項目 | 値 | 説明 |
|---|---|---|
| Mode | Relative | その場所の流れの速度へのパーティクルの影響モード |
| Noise Type | Cellular | ノイズの種類 |
| Intensity | 1 | 流れの強度 |
| Drag | 1 | 流れへの影響度 |
| Frequency | 10 | ノイズの周波数 |
| Octaves | 8 | ノイズの詳細度 |
Turbulenceは、パーティクルの座標からノイズを生成し、そのノイズで速度に干渉します。
概念的には空間の気圧差が粒子に影響を与えるイメージです。
最初は直感的ではないかもしれませんが、ノイズの空間的な分布と、その影響度で構成されています。
各パラメーターを変更して、パーティクルの動きの違いを観察してみましょう。
ごくわずかな Turbulence が、粒子に自然な揺らぎを与えることが見て取れるはずです。
Forceでの外力表現
TurbulenceとLinear Dragを無効にした状態で、UpdateにForceブロックを追加してください。
Force は力による速度干渉を行います。
重力や風向きなどの外力の表現に使用します。
空き領域を右クリックして検索し、追加したBlockを選んでください。InspectorのModeはAbsolute、Forceの値は(2, 0, 0)です。
AbsoluteのForceは、生存中の粒子の質量に関係なく毎フレーム力を加えます。
質量1のパーティクルにForceを(2, 0, 0)で指定すると、X方向の速度は1秒当たり約2ユニットずつ増えます。
Y方向には力を加えていないため、上向きの速度0.5を保ちながらも右に曲がる様が見て取れるはずです。
Set Velocityで右向きの初速を与えたパーティクルは、外力がなければ右方向に等速で進みます。
Forceで右向きの力を加えた場合、生成後も徐々に右方向に加速していきます。
Forceの有効・無効を切り替え、基準状態と比較しましょう。
Linear Dragでの減速表現
最後に、ForceとTurbulenceを無効にしてLinear Dragの設定を確認しましょう。
Linear Dragは、今ある速度に毎フレーム係数を乗算するブロックです。
空気抵抗やエンジンブレーキのような減衰効果を表現できます。
ここでは Drag Coefficientに 0.8 を設定します。
初速が同じでも、時間が経つほど移動が遅くなり、上へ進む距離が短くなります。
Drag Coefficientが大きいほど、減速も強くなる仕組みです。
粒子群の上端がどう変わるか予想してから、Linear Dragだけを有効にしましょう。
有効・無効を比較し、次に係数だけを0.8 → 1.6 → 0.8へ変えてください。
減速の違いを確認したら、Linear Dragを無効へ戻してください。
三つの処理を組み合わせる
単独の比較を終えたら、Updateの移動用Blockを上からTurbulence → Force → Linear Dragの順に並べてください。
次の順に有効なBlockを増やし、変化を比べてみましょう。
| 条件 | 有効にするBlock | 観察すること |
|---|---|---|
| A | なし | 初速だけで進む基準 |
| B | Turbulence | 局所的な流れの乱れ |
| C | Turbulence、Force | 乱れを保ったまま右へ向かう変化 |
| D | Turbulence、Force、Linear Drag | 右への広がりと減速の釣り合い |
毎回Graphを保存してPlayし直し、パーティクルの挙動の何が変わったかを観察してください。
また、Blockは上から順に影響します。
ブロックの順番を入れ替えて、挙動がどう変化するかも確認してみましょう。
Blockの公式リファレンス
入力項目の詳細は公式リファレンスで確認してください。
Turbulence
Force
Linear Drag
- 初速、外力、減速の機能と影響を理解した