タイトル: ゲームオブジェクト(Game Object)
これはUnityのゲームオブジェクト(Game Object)に関する記事です。
■ゲームオブジェクトとは?
ゲームオブジェクトとはキャラクターや地形、オーディオといったシーンを構成する1つ1つの要素です。Unityではシーン上に存在するすべてのものがGameObjectとして表現され、Hierarchyウィンドウにツリーで並びます。
GameObjectの中身
GameObject自体はほぼ「空の入れ物」です。実際の振る舞いはコンポーネントとして付与します。最低でも Transform コンポーネントは必ず付属します。
| 項目 | 内容 |
|---|---|
| Name | 表示名(Hierarchy / コードからの検索に使う) |
| Tag | 分類用ラベル(FindWithTag等) |
| Layer | レイヤー(衝突制御、カメラ描画フィルタ) |
| Static | 静的扱い(ライトベイク・バッチング対象) |
| Transform | 位置・回転・スケール(必須) |
| その他コンポーネント | Renderer / Collider / Rigidbody / 独自スクリプト など |
代表的なGameObjectの種類
- 3Dプリミティブ(Cube、Sphere、Capsule、Cylinder、Plane)
- 2Dスプライト
- Camera — 視点
- Light — Directional / Point / Spot
- UI(Canvas配下のButton、Text、Image等)
- Empty GameObject — グルーピング用の空オブジェクト
- キャラクター・地形 — アセット由来のモデル
GameObjectの作り方
- Hierarchyビューで右クリック
- または上部メニュー GameObject から目的の種類を選択
- 選択後、Sceneに配置されInspectorで詳細を編集
親子関係(Parent-Child)
GameObjectはツリー状に親子関係を持てます。Hierarchyで子をドラッグして親に重ねることで作成。
- 親を動かすと子も連動(Transformの継承)
- 子のTransformは親基準(local)と世界基準(world)の2つ
- Empty GameObjectを使って論理グループを作るのが定石(例:
--- Enemies ---)
スクリプトからGameObjectを操作
|
// 自分自身のGameObject |
Prefabとの関係
- Hierarchy上のGameObjectをProjectビューにドラッグするとPrefabになる
- Prefabを編集すると、シーンに配置された全インスタンスに変更が伝播
- 個別オーバーライド可能(Inspectorで太字=オーバーライド済み)
関連
- 親カテゴリ: 用語集 (Unity)
- Unity本体: Unity
- オブジェクト追加: オブジェクト
- コンポーネント: コンポーネント
- Hierarchy: ヒエラルキーウィンドウ