※Unity5の公式マニュアルを参考に解説していきます。
※自分が、スクリプトを見返したい時や、人に教える時のために書かせていただいております。
コンポーネントにアクセス
基本的にC#で解説。
ゲームの開始時点の挙動。
変数rbにオブジェクトの物理挙動のコンポーネントを格納する。
ちなみに、コンポーネントは日本語だと”成分”という意味。
void Start () { Rigidbody rb = GetComponent<Rigidbody>(); }
その変数rbを使って .mass(質量)にアクセスし、10fという値を代入。
void Start () { Rigidbody rb = GetComponent<Rigidbody>(); // Change the mass of the object's Rigidbody. rb.mass = 10f; }
Rigidbodyの質量は、おそらくインスペクター上でも利用できる。
void Start () { Rigidbody rb = GetComponent<Rigidbody>(); // Add a force to the Rigidbody. rb.AddForce(Vector3.up * 10f); }
ボールを使った3Dゲームを作るときには必ず使う。
もちろん、transform.Translateを使っても移動できるのだが、球状のオブジェクトを動かす場合には、.AddForceで力を加えて移動させた方が挙動が自然になる。
物理演算を自動で行ってくれるUnityならではの方法。
ちなみに、Rigidbody自体をアタッチしていないと、nullを返し、ゲームが実行できない。
コメント