UIを作ろう のバックアップ(No.3)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- UIを作ろう へ行く。
- 1 (2023-01-10 (火) 13:37:27)
- 2 (2023-01-16 (月) 17:44:08)
- 3 (2023-01-16 (月) 19:00:14)
- 4 (2023-01-17 (火) 13:04:56)
- 5 (2023-01-17 (火) 14:37:02)
- 6 (2023-01-17 (火) 15:50:43)
- 7 (2023-05-01 (月) 11:28:39)
- 8 (2023-05-02 (火) 00:16:21)
- 9 (2023-05-02 (火) 01:51:35)
- 10 (2023-05-02 (火) 02:54:09)
- 11 (2023-05-02 (火) 04:21:11)
- 12 (2023-05-02 (火) 22:27:53)
- 13 (2023-11-15 (水) 19:26:15)
contents
はじめに
アイテムの設置の続きになります。
ついに、このページでゲーム完成となります。
最後の工程はUI(User Interface)の追加です。
br
UIの設置
br
UIとは、プレイヤー(=User)とゲームとをつなぐ箇所(=Interface)という意味で、
ここでは、その仕組みのことを指します。
マップやガイド、スコア表示、体力ゲージ、ボタン、メッセージなどがこれに当たります。
br
このゲームでは、
・ゲームシーンでの現在のタイムスコア(経過時間)のテキスト ・スコアシーンでの最終的なタイムスコアのテキスト ・スコアシーンでのコンテニューボタン
を作っていきます。
一つずつ実装していきましょう。
br
タイムスコア(ゲームシーン)
まずは、ゲームシーンでのタイムスコアのテキストを表示してみましょう。
br
UIの設置はほかのGameObjectと同様にヒエラルキーを右クリックしてできます。
UI>Textを選択して名前を「Timer」とします。
これで、ヒエラルキーに「Canvas」と「EventSytem」が追加されて、
「Canvas」の中に「Timer」という名前でテキストUIができます。
画面のどこかに(たぶん画面中央)に「NewText」と文字が出てきてるかと思います。
br
「Canvas」とは、
「EventSystem」とは、
br
まずは、テキストUIの大きさや位置を調整します。
現在、このゲームのカメラは解像度が未固定で、ゲームのウィンドウの大きさに自動で調整されるようになっています。
しかし、キャンバスの初期状態では、UIはpixel固定であるためゲーム画面の大きさで表記に乱れが出てしまいます。
そこで、「Canvas」のインスペクタからCanvasScaler>UIScaleMode>ScaleWithScreensizeに設定を変更してあげることで、
カメラと同じようにウィンドウサイズに合わせてUIの大きさが変わるようにできます。
そして、「Timer」のインスペクタのRestTranformから(posX,posY,Width,height)、Textから(FontSize,Paragraph>Aligment)を変更します。
それぞれ「キャンパスに対する相対位置(x座標、y座標)」「UIの幅、高さ」「文字の大きさとUI内の位置」に当たります。
見やすい位置、大きさになるように調整してみましょう。(左から-60,-30,120,60,40,縦横中央揃えがキレイかも?)
次に、経過時間を出力する機能をスクリプトで書いていきます。
「Text」のインスペクタからAddCompornent>NewScriptを押して「Timer」という名前でスクリプトを追加します。
br
geshi
br
まず名前空間として、「UnityEngine.UI」を追加します。
「UnityEngine.UI」はUI関連を扱う名前空間で、UI関連の処理を行うときに使われます。
次に「Text」コンポーネントの定義・取得をして、
Update関数の中で、
geshi