force | ワールド座標における力のベクトル |
position | ワールド座標における位置 |
特定の位置から力を適用します。結果、これはトルクを適用しオブジェクトに力を加えます
リアルな効果を実現するために position
は rigidbody 表面の範囲内にほぼ収まっているべきです。
これは、爆発を表現する際には最も一般的に使用されます。爆発を適用するときには、一度だけではなく、複数回適用するのが一番いいです。
position
が Rigidbody の中心から離れている際は適用される回転運動が非現実的に大きなものになることに注意してください。
力は、アクティブのリジッドボディにのみ適用することができます。ゲームオブジェクトが非アクティブの場合、AddForceAtPosition は効果がありません。
リジッドボディはデフォルトでスリープ状態から起き上がります。力のサイズが 0 の場合、リジッドボディはスリープのままです。
See Also: AddForce, AddRelativeForce, AddTorque.
function ApplyForce (body : Rigidbody) { var direction : Vector3 = body.transform.position - transform.position; body.AddForceAtPosition(direction.normalized, transform.position); }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { void ApplyForce(Rigidbody body) { Vector3 direction = body.transform.position - transform.position; body.AddForceAtPosition(direction.normalized, transform.position); } }