Version: 2018.4
public void AddForce (Vector2 force, ForceMode2D mode= ForceMode2D.Force);


force力の X および Y 軸方向の成分


Rigidbody に力を適用します

力は X および Y 軸方向の別々の成分として指定され( 2D 物理挙動では Z 軸方向がないことに注意)、オブジェクトは力 = 重さ x 加速度の法則にしたがって、加速が加えられ、重さが大きいほど特定速度まで加速させるのに、より多くの力が必要となります。

See Also: AddForceAtPosition, AddTorque, mass, velocity,, AddForce, ForceMode2D.

// The sprite will fall under its weight.  After a short time the
// sprite will start its upwards travel.  This is because
// of the force on the sprite.

using UnityEngine; using System.Collections;

public class Example : MonoBehaviour { public Texture2D tex;

private Rigidbody2D rb2D; private Sprite mySprite; private SpriteRenderer sr; private float thrust = 10.0f;

void Awake() { sr = gameObject.AddComponent<SpriteRenderer>(); rb2D = gameObject.AddComponent<Rigidbody2D>(); }

void Start() { mySprite = Sprite.Create(tex, new Rect(0.0f, 0.0f, 128.0f, 128.0f), new Vector2(0.5f, 0.5f), 100.0f);

sr.color = new Color(0.9f, 0.9f, 0.5f, 1.0f); sr.sprite = mySprite; transform.position = new Vector3(0.0f, -2.0f, 0.0f); }

void Update() { rb2D.AddForce(transform.up * thrust); } }