Version: 5.6
画面遷移の作成
IMGUI の基本

Immediate Mode GUI (IMGUI)

Immediate Mode の GUI システム (IMGUIと呼ぶ) は、ゲームオブジェクトベースで作られた、Unity のメイン UI システムのための完全に分離した機能です。 IMGUI はコードドリヴンな GUI システムであり、プログラマのためのツールとなる事が意図されています。使用するための何らかのスクリプトから OnGUI 機能を呼ぶ事で、実行されます。例えば、このようなコードです。

    void OnGUI() {
            if (GUILayout.Button("Press Me"))
                Debug.Log("Hello!");
        }

上記のコードは、以下のようなボタンになります。

前述のコードで作成されたボタン
前述のコードで作成されたボタン

Immediate Mode GUI システムは、一般に以下の用途で使用されます。

  • ゲーム内のデバッグ表示とツールの作成
  • スクリプトコンポーネント用のカスタムインスペクターの作成
  • Unity そのものを拡張する新しいエディターウインドウとツールの作成

IMGUI システムは通常、プレイヤーが操作する普通のゲーム内ユーザーインターフェイスに使う事は意図されていません。それらにはゲームオブジェクトベースで考えられた Unity のメイン UI system を使ってください。そちらの方が UI 要素の編集と位置決めにゲームオブジェクトベースでアプローチでき、 UI のレイアウトと視覚デザインをするのにはより便利なツールです。

“Immediate Mode” は IMGUI が作成して描画する方法を指します。 IMGUI の要素を作成するためには、 OnGUI という名前の特別なファンクションでコードを書く必要があります。インターフェイスを表示するためのコードはフレーム毎に実行され、画面に描画されます。 OnGUI コードが付加されたオブジェクトか、描画された視覚的な要素と関連する、階層内の他のタイプのオブジェクト以外に、永続的なゲームオブジェクトは存在しません。

IMGUI により、機能を備えた多様な GUI を非常に素早く、簡単に作成できます。ゲームオブジェクトを作成して手動で配置し、その機能を処理するスクリプトを記述する代わりに、このすべてを数行のコードで一度に行います。これは、GUI controls のインスタンス化、配置、定義、のすべてを一度の関数呼び出しで行います。

このセクションでは、ゲーム内と Unity エディター拡張機能の両方の IMGUI を使用する方法について説明します。

画面遷移の作成
IMGUI の基本
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961