[Unity] コンポーネントとは?

どうも、tatsuです!

今回はUnityのコンポーネントについて説明しようと思います。

コンポーネントとは?

Unityでは、ゲームオブジェクトをシーンに配置することでシーンに物体を表示させることができます。
 
ただ物体を表示しただけではゲームにならないので、物体の動きを制御するスクリプトだったり、音が鳴るようにしたり、エフェクトを表示させたりします。
 
物体に追加するこれらを機能をコンポーネントといいます。
ゲームオブジェクトにコンポーネントをくっつけることで色々な機能を追加することができます。

 
また、ゲームオブジェクトにはオブジェクトの座標や回転を管理するTransformというコンポーネントが必ずついています。
これらのコンポーネントはスクリプト内で以下のようにして取得することができます。

// obj1という名前のゲームオブジェクトを取得する
GameObject object = GameObject.Find("obj1");
// obj1にアタッチされている音コンポーネントを取得する
obj1.GetComponent<AudioSource>();
// obj1にアタッチされている座標コンポーネントを取得する
obj1.GetComponent<Transform>();
// Transformコンポーネントはよく使われるため省略形が存在する
obj1.transform;

// 基本的にはコンポーネントを取得するのと同時に、そのコンポーネントのフィールドにアクセスすることが多い
// 座標コンポーネントのx座標を取得し、コンソールに表示する
Debug.Log(obj1.transform.position.x);

 
このように、ゲームオブジェクトにコンポーネントをアタッチ(くっつける)するという考えを理解しておいてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です