Unity解説 OnGUIの使い方
UnityのOnGUIについて教えて。


OnGUIは、ボタンやラベルといったGUIを作成して、操作するためのUnityの関数です。


このOnGUI関数は、フレーム毎に、GUIイベントに応じて、処理がなされます。


OnGUI関数でラベルの作成
下のコードがラベルを表示するためのコードのサンプルです。


【OnGUI_Label001.cs】
using System.Collections; using System.Collections.Generic; using UnityEngine; public class OnGUI_Label001 : MonoBehaviour { void OnGUI() { GUI.Label (new Rect (25, 50, 150, 50), "くるくる"); } }
もうちょっと、色とか大きさを変えたいね。


文字の大きさやサイズを指定するには、以下のようにGUIStyleクラス(UnityEngine)のfontStyleプロパティを使用します。


【OnGUI_Label002.cs】
using System.Collections; using System.Collections.Generic; using UnityEngine; public class OnGUI_Label002 : MonoBehaviour { private GUIStyle fontStyle001; private GUIStyleState styleState001; void Start() { fontStyle001 = new GUIStyle(); fontStyle001.fontSize = 50; styleState001 = new GUIStyleState(); styleState001.textColor = Color.red; fontStyle001.normal = styleState001; } void OnGUI() { GUI.Label (new Rect (25, 50, 150, 50), "くるくる",fontStyle001); } }
OnGUI関数でボタンの作成
さて、次はボタンを作成するコードのサンプルです。


using System.Collections; using System.Collections.Generic; using UnityEngine; public class OnGUI_Button001 : MonoBehaviour { void OnGUI() { if (GUI.Button(new Rect(15, 30, 100, 50), "くるくる")) { //クリック時の応答・処理 print("押されました。"); } } }
今回のようにコードで、ラベルやボタンを作成する方が、管理や使い勝手がいい場合もありますので、覚えておきたいですね✨


【参考】
お名前