ゲームのスコア表示ってどうやるのだろう?
UI(ユーザーインターフェース)ですね!
【解説画面に沿ってやりたい方】
以下の2記事の内容をベースに解説しますので、事前に実施をお願いします。(必須)
[所要時間:約20分]
ここまでで、事前準備は完了です。早速作成していきましょう。
▼キーボードからオブジェクトを操作▼
▼当たり判定▼
解説画面と全く同じ環境にしたい場合は、追加で以下の4記事を実施お願いします。(任意) [所要時間:約30分]▼オブジェクトに色を付ける▼
▼オブジェクトが落ちないように壁を作る▼
▼エディタでパラメータ調整▼
▼回転するアイテム配置▼
Consoleウインドウに表示
Gameビューに表示する前に、Consoleウインドウで練習をしてみましょう。 [Player]がGETしたアイテム数をConsoleウインドウに表示します。Scriptの追加
[Player]視点での数のため、[Player]に関連付けられたScriptにコードを追加します。ProjectウインドウでScript[PlayerController]を開きます。
- GETしたアイテムをカウントするitemcountというint型(整数)の変数を定義します。
- ゲームスタート時はカウンタをリセットします。
- ゲーム中は常時カウントを更新します。Debug.Log(変数)がコンソールウインドウに変数を表示するという意味です。
- アイテムをGETする度にGETした個数を1つずつ加算します。以下のようになります。
Consoleウインドウで確認
[▶︎]ゲームプレイを押して、実行結果を確認します。
Gameビューに表示
今回はGameビュー上にTextを表示させる方法を解説します。ここでは、Canvasを使用します。Hierarchyウインドウ下の[+]をクリックして、[UI]>[Canvas]を選びます。
EventSystem:UIのイベントを管理。UIのScript実行に使用される。
Canvasの確認
Canvasが配置されている場所を確認しましょう。 Sceneビューの[2D]をクリックして、2Dにしてマウスホイールを回転させて画面を引きます。 Canvasは、UIオブジェクトを配置するための領域です。以下のような特徴を持ちます。- 2D/3Dで設定方法は同じ
- カメラやライトの影響を受けない
- 画面正面からの視点で表示
- Canvasの大きさはGameビューの大きさに比例
UIオブジェクトの設置
作成したCanvas上にTextを配置します。Hierarchyウインドウの[Canvas]を右クリックして、[UI]>[Text]をクリックします。
Hierarchyウインドウの[Text]を選択した状態で、Inspectorウインドウで、オブジェクト名の変更、Textの変更、Font Sizeの変更を実施します。
Textの配置の調整
表示したTextの配置を調整していきます。 HierarchyウインドウのText[ItemCountText]を選択した状態で、Inspectorウインドウの[Rect Transform]で調整します。
方法は2通りあります。
今回は、後者を解説していきます。
- 座標を直接変更
- 決められた位置に配置
決められた位置に配置する場合は、topとcenterで囲まれた図形をクリックします。
[Shiftキー]+[Altキー]を押したまま、配置したい場所をクリックします。
Scriptの追加
Projectウインドウで[PlayerController]を開きます。
TextとScriptの関連付け
Scriptの内容をTextと関連付けて、Gameビューに表示するように設定します。Hierarchyウインドウの[Player]を選択して、Hierarchyウインドウの[Item Count Text]を、Inspectorウインドウの[PlayerController]Scriptの[Item Count Text]にドラッグして離します。
Gameビューで確認
[▶︎]ゲームプレイを押して、実行結果を確認します。