force | 力矢量(世界坐标)。 |
position | 位置(世界坐标)。 |
mode | 要施加的力的类型。 |
在 position
处施加 /force/。这将向对象施加扭矩和力。
为了获得逼真的效果,position
应大致位于刚体表面范围内。
该函数最常用于实现爆炸效果。实现爆炸效果时,最好在数帧(而非一帧)中施加力。
注意,当 position
远离刚体中心时,施加的扭矩将大到失真。
力只能应用于处于活动状态的刚体。如果 GameObject 处于非活动状态,则 AddForceAtPosition 没有效果。
默认将唤醒刚体。如果力大小为零,则不会唤醒刚体。
For more information on how ForceMode affects velocity, see Rigidbody.AddForce
另请参阅:AddForce、AddRelativeForce、AddTorque。
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); } }