UnityのUIシステム
メニューを表示するにはスワイプしてください
Unityにおけるユーザーインターフェース(UI)は、ゲームやアプリケーション内でプレイヤーが操作するグラフィカルな要素を指します。UIは、ユーザーを体験へと導く、フィードバックを提供する、さまざまな操作を可能にするなど、重要な役割を果たします。
Unity UIの基本
UnityのUIシステムには、要素を整理するためのCanvasや、ボタン、テキストフィールド、画像などのコンポーネントが含まれています。これらはUnityエディター内で配置やスタイルの調整が可能です。
主なコンポーネント
- Canvas:UI要素のメインコンテナ
- Buttons:操作用のクリック可能な要素
- Text Fields:テキストの入力や表示エリア
- Images:アイコンや背景などのビジュアル要素
はじめに
UI要素を追加するには、Hierarchyで右クリックし、「UI」を選択します。
UnityでのUI作成
UnityでUIを作成するには、Hierarchyに移動し、左クリックします。その後、「UI」を選択します。
作成可能なすべてのUI要素のリストが表示されます。テキスト、画像、ボタンなどが含まれます。これらの要素やその操作方法については、次のレッスンで詳しく説明します。 ここでは、スクリプトを使ってテキストを操作する簡単な例を見てみましょう。
スクリプトによるテキスト操作
そのリストからtextMeshProを選択します。
新しいテキストがゲーム内に作成されます。
Note
Unity が TMP essentials の実装を求めてきた場合は、承諾してください。
テキストをクリックすると、そのすべてのコンポーネントがインスペクターに表示され、手動で操作できます。
テストスクリプトをオブジェクトに追加し、このコードを記述します。
using System.Collections.Generic;
using UnityEngine;
using TMPro;
public class test : MonoBehaviour
{
[SerializeField] TMP_Text myText;
private void Start()
{
myText.text = "test";
}
}
-
インポート: 上部の
usingステートメントは、スクリプトがUnityのコア機能およびTextMeshProライブラリ(テキスト描画用)へアクセスするためのもの。 -
クラス定義:
public class test : MonoBehaviourは、testを継承した新しいクラスMonoBehaviourを定義し、UnityのGameObjectにアタッチ可能にする。 -
シリアライズフィールド:
[SerializeField] TMP_Text myText;はTextMeshProのテキストオブジェクト用のフィールドを宣言。[SerializeField]属性により、このフィールドはUnityエディター上で表示され、テキストオブジェクトを割り当て可能。 -
Startメソッド:
Start()メソッドは、スクリプトが最初に有効化された際に一度だけ実行されるUnity固有の関数。このメソッド内でmyText.text = "test";により、myTextオブジェクトのテキストが "test" に設定される。ゲームを再生すると、このテキストが画面に表示される。
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください