公開日:2023/05/25  更新日:2023/05/25

Unityのコンポーネントとは

 Unityのコンポーネントとは、ゲームオブジェクトの部品である。ゲームオブジェクトだけでは空の容器であるが、コンポーネントを搭載することで様々な機能を得ることができる。
 ゲームオブジェクトについては以下の記事で紹介している。
ゲームオブジェクトとは
 この記事ではコンポーネントの基礎について紹介していく

Unityのコンポーネント目次

Unityに入っているコンポーネント追加
Mesh Filterの変更
Mesh Rendererの変更
Box Colliderについて
アクティブ機能について
目次にもどる

Unityのコンポーネント追加

 コンポーネントがない空のゲームオブジェクトを作り、そこからコンポーネントを追加する手順を説明しようと思う。

 ヒエラルキー欄の下にある下矢印ボタンを押すとメニューが開くので「Create Empty」を選択しよう(メニューのGame Objectからも選べる)。

 ヒエラルキーの欄にGameObjectという名前のゲームオブジェクトが追加されたのが確認できる。また、シーンビュー内にもゲームオブジェクトが表示されているのを見ることができる。

 このGameObjectのインスペクター(Inspector)を確認するとコンポーネントとしてTransformがあるのがわかる。
 これはゲームオブジェクトの位置(Position)、回転(Rotation)、大きさ(Scale)などを指定するものであり、全てのゲームオブジェクトに存在し、削除もできなくなっている。それぞれの値を少し変えて入力して、シーンビュー内でゲームオブジェクトがどう変化するか試してみよう。

 ただ、Transform以外にはコンポーネントがない空の状態なのがわかる。
 ここから「Add Component」を選択しよう。

以下の3つを選択してコンポーネントを追加してみよう。

 「Mesh」→「Mesh Filter」

 「Mesh」→「Mesh Renderer」

 「Physics」→「Box Collider」

 するとシーンビューに以下のような四角形が現れる。

 ここからはそれぞれのコンポーネントを変更していく。

目次にもどる

Mesh Filterの変更

 Mesh Filterのコンポーネントではゲームオブジェクトの形状を読み込むことができる。
 Mesh Filter追加時点では以下のようにNoneと表示されており、何も設定されていない。

 Noneの右に二重円マークがあるので選択しよう。以下のようにゲームオブジェクトの形状の選択肢が表示される。

 今回は「Cube」を選択してみよう。
 するとシーンビューに表示される四角形がピンク色になったのが確認できる。

 ピンク色なのは材質や色が設定できていないことを示している。次の項目で設定していく。

目次にもどる

Mesh Rendererの変更

 Mesh RendererのコンポーネントではMaterials、Lighting、Probes、Additonal Settingsなどの設定が可能。
 今回はMaterialsを変更し、材質や色を設定する。

 ここでも最初はNoneと設定されており、右に二重円マークがあるので選択しよう。以下のようにゲームオブジェクトの形状の選択肢が表示される。

 今回は「Default-Diffuse」を選択してみよう。
 すると材質や色が設定されたことで、シーンビューに表示される四角形の色がピンク色から変化したのがわかる。

目次にもどる

Box Colliderについて

 残ったBox Colliderは衝突(当たり判定)を扱うコンポーネントの一つだ。

 「Add Component」で「Physics」をもう一度確認すればわかるが、Collider系コンポーネントはBox Collider(立方体の当り判定) の他にCapsule Collider(カプセル型の当たり判定)、Sphere Collider(球型の当たり判定)、Mesh Collider(ゲームオブジェクトの形そのままの当たり判定)が存在することがわかる。
 今回は、Mesh Filterによりゲームオブジェクトの形状をCube(立方体)にしたので、それに合わせてBox Colliderのコンポーネントを追加したというわけだ。

 当たり判定は放った弾の命中判定、壁に衝突した時の判定、ある場所まで到達したという判定などゲーム制作する上で極めて重要な要素である。
 一見、ゲームオブジェクトの形状そのままの当たり判定となるMesh Colliderが優秀そうに見えるが、複雑な形状だと処理も重くなる弱点もある。どうしても必要な時以外は他のColliderで代用するといった工夫が必要だ(例えばRPGとかプレイしていても、町にいる登場人物とかは形状そのままの当たり判定ではなく他のColliderで代用している)。
 Collider系コンポーネントについては別記事で詳しく紹介していく。

目次にもどる

アクティブ機能について

 作成したGameObjectのインスペクター欄のすぐ下にチェックボックスがある。

 最初はチェックがついているので、クリックして外してみよう。
 するとシーンビューから作ったゲームオブジェクトが消失する。

 だが、ヒエラルキー欄を見れば作成したGameObjectは薄い色になっているが消えてはおらず、インスペクター欄を見ればコンポーネントも健在であることがわかる。
 チェックを消せば、ゲームオブジェクトとそのコンポーネントを削除しないが、ゲーム上では表示されず処理なども行われない状態にできる。
 動作のテストなどで使うことが多い機能なので覚えておこう。

Unityの基礎まとめへ戻る

page top