5.

インスペクター(Inspector)

編集

本稿は Unity の Inspector (インスペクター)に関する記事です。Inspector は、Unity Editor における選択中のオブジェクトやアセットの詳細を表示・編集するウィンドウです。シーンに置いたゲームオブジェクトの位置・コンポーネント・パラメータの調整から、スクリプト変数の編集、アセットの設定変更まで、Unity の作業時間の多くを Inspector で過ごします。

Inspector の表示対象

対象表示内容
シーン内の GameObjectTransform・付与されたコンポーネント・スクリプトの公開変数
Project のアセットテクスチャ / FBX / オーディオ等のインポート設定
マテリアル / シェーダシェーダのパラメータ・テクスチャスロット
ScriptableObjectカスタムアセットのフィールド
PrefabPrefab 全体のオーバーライド管理
Build Settings / Player Settings 等プロジェクト全体の設定 (Inspector を流用)

GameObject の Inspector で見えるもの

  • Name / Tag / Layer — 名前・分類用タグ・レンダリング/物理用レイヤ
  • Static フラグ — ライトベイク・オクルージョン・バッチング対象
  • Transform — Position / Rotation / Scale (必須コンポーネント)
  • 付与されている各コンポーネント — Mesh Filter、Renderer、Collider、Rigidbody、Animator、AudioSource 等
  • Add Component — 新しいコンポーネントの追加

スクリプトの公開変数を編集する

C# スクリプトで宣言した public な変数、または [SerializeField] 属性付きの private 変数は、Inspector から値を編集できます。

using UnityEngine;

public class Enemy : MonoBehaviour
{
    public int hp = 100;                  // Inspector に出る
    [SerializeField] private float speed = 3f;  // Inspector に出るがコードからは private
    [Header("ドロップ")] public GameObject lootPrefab; // 見出し付き
    [Range(0, 1)] public float dropRate = 0.2f;    // スライダ表示
}

便利なエディタ属性

属性役割
[SerializeField]private を Inspector で編集可能に
[HideInInspector]public でも Inspector に出さない
[Header("...")]見出し
[Space]区切りの空白
[Tooltip("...")]ホバー説明
[Range(min, max)]スライダ表示
[Min(n)] / [Max(n)]下限・上限
[TextArea]複数行テキスト
[ContextMenu("...")]Inspector の右クリックから呼べるメソッド

表示モードの切替

  • Normal — 通常表示
  • Debugprivate 変数や内部状態まで表示。実行中のデバッグに便利
  • Lock (錠アイコン) — 別オブジェクトを選択しても Inspector を固定。値のコピー・比較に便利
  • Properties... (右クリック) — 別ウィンドウとして Inspector を開く (複数開いて比較可能)
  • One Column / Two Column Layout — Project ウィンドウとあわせた表示切替

Prefab のオーバーライド管理

  • シーン上の Prefab インスタンスを編集すると、変更点が太字 + 青い縦線で表示される
  • 右クリック →「Apply All / Revert All」で Prefab 本体への反映/取消が可能
  • 個々のフィールド単位でも Apply / Revert ができる
  • Prefab Variant を活用するとバリエーション管理が楽になる

ツール側との連携

関連機能用途
Custom EditorEditor を継承してカスタム Inspector を実装
Property Drawer独自型の表示方法を定義
Inspector の右上「i」アセットインポート設定への簡易アクセス
Inspector のコンテキストメニュー値のコピー・ペースト・リセット

よくある操作

  • 右クリック →「Reset」でコンポーネントを初期値に戻す
  • 右クリック →「Copy Component」「Paste Component Values」で別 GameObject に値だけ移植
  • 歯車アイコン → Remove Component で取り外し
  • 名前の頭にあるチェックを外すと、その GameObject/コンポーネントを無効化
  • 右上の「i」アイコン → コンポーネントのリファレンス (公式ドキュメント) を開く

注意点

  • Inspector で書き換えた値はシーン (またはアセット) を保存するまで永続化されない
  • 実行中 (Playモード) に Inspector で値を変えても、停止時にロールバックされる。チューニングしたい値はメモするか、Playモード前のコピーを取る
  • 非公開フィールドは Debug モードで見えるが、本番デバッグ用途では Debug ログのほうが安全
  • Prefab インスタンスの大量編集は競合の原因。必要なら Prefab 本体側で編集

関連

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. プロジェクト(Project)
  2. シーン(Scene)
  3. ヒエラルキー(Hierarchy)
  4. ゲームオブジェクト(Game Object)
  5. インスペクター(Inspector)
  6. アセット(Asset)