アクターの基本的な衝突回避設定が[衝突回避の初期化](Initialize Collision Avoidance)コンパウンド(「アクターが衝突を回避する方法を設定する」参照)で初期化されると、パーティクル シミュレーションの間にアクターが他のアクターや壁との衝突を予測する方法を決定できます。
アクターが 1 つまたは複数の他のアクターまたは壁を「検知」すると、次の複数の係数が考慮され、[衝突回避のシミュレーション](Simulate Collision Avoidance)コンパウンド内にある[衝突回避](Collision Avoidance)ノードでの計算に従って、衝突が間近に迫っているかどうかを判断します。
ICE ツリーが間近の衝突を検出した後、[衝突回避のシミュレーション](Simulate Collision Avoidance)コンパウンド内でアクタのポイント位置が更新され、続いてその速度と向きが更新されます。
ここで説明するように、シミュレーション ポイント クラウドの[放出シミュレーション](Particle Simulation) ICE ツリーの[衝突回避のシミュレーション](Simulate Collision Avoidance)コンパウンドで[アクター回避](Actor Avoidance)パラメータを使用して、アクターの予測動作を設定できます。
このコンパウンドに適したエディタを開くには、ICE ツールバーから[CrowdFX] [シミュレーション](Simulation) [編集](Edit) [衝突回避のインスペクト](Inspect Collision Avoidance)コマンドを選択します。
アクタの動作を変更する場合に設定できる、[予測係数](Anticipation Factor)と[予測コントラスト](Anticipation Contrast)という 2 つの係数があります。
[衝突回避のシミュレーション](Simulate Collision Avoidance)コンパウンド内の[予測係数](Anticipation Factor)は、衝突までの時間を計算し、差し迫る衝突を避けるためにアクターがどのくらい早めに向きを変え始めるかを決定します。アクタが最初に回転する角度は、[予測コントラスト](Anticipation Contrast)値によります。
係数が高い値の場合は、アクターは、下の図に示すように、衝突が間近に迫っていることを検出すると、すぐに向きを変え始めます(このアクタは非常に慎重です)。
低い値の場合は、アクターは、ここに示すように、衝突の瞬間が近づいたときにようやく向きを変えます(このアクターは危険すれすれです)。
[衝突回避のシミュレーション](Simulate Collision Avoidance)コンパウンド内の[予測コントラスト](Anticipation Contrast)は、アクターが回転する角度と、衝突までの距離とのコントラストを表します。
高いコントラスト値の場合、下の図に示すように、アクターは予想される衝突に近づいたときに鋭く回転します。
低いコントラスト値の場合、ここに示すように、衝突から離れているときに少し回転します。
アクターが回転できる角度の範囲は、[衝突回避の初期化](Initialize Collision Avoidance)コンパウンド内の[低速/ターゲット速度での角速度](Angular Velocity at Slow Speed/Target Speed)パラメータで定義されます。
[衝突回避のシミュレーション](Simulate Collision Avoidance)コンパウンド内の[ブレーキしきい値](Braking Threshold)は、衝突を回避するためにアクターが「ブレーキをかけ」始めるタイミングを決定する係数です。この値は秒数を表します。この値を低くするほど、アクターは衝突が起こる地点にそれだけ近いところで減速し始めます。
たとえば、この値が 0.5 の場合、下の図に示すように、アクターは別のアクタと 0.5 秒以内に衝突するというところでブレーキをかけ始めます。
この値の問題解決を行う場合、ここに示すように、[CollisionAvoidanceTimetoCollision]属性を表示属性として使用すると役立ちます。「属性表示プロパティ エディタ」を参照してください。