Force COMPは、物理ソルバーのシミュレーションに力を加えるために使用します。Bulletは線形/回転力とインパルスフォースをサポートし(Forceの章を参照)、Flexはフォースフィールドをサポートしています(Force Fieldの章を参照)。
アクティブな力を有効にするには、ForceページのActiveトグルパラメータを使用します。
アクティブフォースは、シミュレーションに時間経過とともに適用される力を作り出します。アクティブフォースは、Bullet Solver COMPを参照してグローバルに適用することも、個々のActor COMPを参照してローカルに適用することもできます。アクティブフォースはフレームごとに力を加えるので、1秒かけて加えられる力は、1フレームで加えられる同じ値のインパルス力に相当します。
フォースとトルクのパラメータの単位はニュートン(N)で、kg*m/s^2に相当します。つまり、質量が5kgで初速のないアクターに10Nの力を加えた場合、1秒後のアクターの速度は2m/sとなります。もし、すべてのパラメータが同じで、代わりにインパルスフォースだったとしたら、速度はやはり2m/sになります。しかし、インパルスフォースの速度は瞬間的に変化し、(再度パルスを与えない限り)増加しなくなるのに対し、アクティブフォースでは1秒後も速度は増加し続けます。
質量の中心は、質量のバウンディングボックスの中心と見なされます。デフォルトでは、ボディが拘束されておらず、衝突もしていない場合、Relative Positionパラメータが0以外の値に設定されていない限り、フォースはボディを回転させません。Relative PositionがXで+1に設定されていて、Force がYで+1の場合、ボディはZ軸を中心に反時計回りに回転し、Yで平行移動します。
トルクが Z で +1 に設定されていると、ボディは Z 軸で反時計回りにしか回転せず(正の Z 回転)、平行移動はしません。
特定のボディにフォース/トルクを適用するには、Feedback CHOP(Bullet Solver COMP またはActor COMP の章を参照)とforce[xyz]およびtorque[xyz]チャンネルを使用します。
インパルスフォースは、Impulse Force pulseパラメータによって適用されます。
インパルスフォースパルスは、シミュレーションに1フレームの間適用される力を生成します。現実世界では、インパルスフォースは非常に短い時間で適用される力ですが、Bulletではこれをやや単純化して、瞬時に(1フレームの間)適用されます。インパルスフォースの例としては、ボールを蹴ったり、大砲を撃ったりすることが挙げられます。インパルスフォースによって、影響を受けた体の速度は一瞬で変化し、その瞬間以降は、再び力を加えない限り、その力は影響を受けなくなります。
インパルスフォースを加えた後のボディの結果としての速度は、アクティブな力を正確に1秒間加えた場合、同じ値のアクティブな力と同じになります。例えば、質量5kgの物体に10Nのインパルス力を加えた場合、結果として得られる速度は10N / 5kg * 1sec = 2m/sとなります。
フォースフィールドは、Force FieldページのActiveパラメータで有効になります。フォースフィールドは、Radiusパラメータで定義された半径を持つ球形です。正の力は物体を外側に押し出し、負の力は物体を内側に引き寄せます。
Flex、Bullet Dynamics、Bullet Solver COMP、Actor COMP、Constraint COMP、Bullet Solver CHOP、Nvidia Flex TOP、Nvidia Flex Solver COMPの各章も参照してください。
シミュレーションでのアクティブフォースのオン/オフを切り替えます。
適用されるリニアフォース(ニュートン)を設定します。
- X / forcex
- Y / forcey
- Z / forcez
ボディの中心(注:質量の中心ではなく、物体の物理的な中心)に対して、直線的な力を加える位置です。相対的な位置がゼロでないと、トルクが加わって体が回転することになります。
- X / relposx
- Y / relposy
- Z / relposz
The rotational force in Newtons that will be applied.
適用される回転力(ニュートン)を設定します。
- X / torquex
- Y / torquey
- Z / torquez
上記のパラメータで1フレーム分のシミュレーションにインパルスフォースを与えます。
シミュレーションにおけるフォースフィールドのオン/オフを切り替えます。
フォースフィールドの強さを設定します。正の強さはボディを外側に押し出し、負の強さはボディを内側に引き寄せます。
フォースフィールドの半径を設定します。
中心からの距離に応じて、フォースフィールドの強さに線形のフォールオフを適用します。
COMP共通- Extensions ページの章を参照して下さい。
COMP共通- Common ページの章を参照して下さい。