GUI(グラフィカル・ユーザー・インターフェース)は、実はほとんどのRobloxゲームで当たり前に使われています。人気ゲームの「 回転寿司 」では注文や会計の画面に、対戦ゲームの「 RIVALS 」では体力ゲージや弾数表示に、それぞれGUIが使われています。
ScreenGuiってなに?
なぜGUIが必要なの?
Scratchでは、変数やメッセージが画面にずっと表示されていましたね。しかし、Robloxで公開したゲームをRoblox Playerで遊ぶ時、プレイヤーにはプロジェクトページや変数の中身は見えません。「 ここがゴールだよ 」「 クリアおめでとう! 」と伝えるには、自分で画面に表示する仕組みを用意する必要があるのです。
「 ScreenGui 」は、3D空間の中ではなく画面そのものに張り付く「 レイヤー 」です。プレイヤーがどこを見ていても、常に画面の同じ場所に表示され続けます。ゲームクリアの文字や、体力ゲージなどによく使われます。
スクリーンショット挿入予定(11-001.png)
3D空間のステージと、画面に貼り付くScreenGuiの違いのイメージ
ScreenGuiは「 StarterGui 」というフォルダに入れておきます。ここに入れたものは、ゲームに参加した全員の画面に自動でコピーされます。
ポイント
StarterGuiは「 見本 」のようなものです。実際にプレイヤーが見ている画面の実体は、それぞれのプレイヤーの中にある「 PlayerGui 」という場所にコピーされています。今日は難しいので「 StarterGuiに置けば全員に配られる 」というイメージだけ持っておけばOKです。
Part・Union・Model・Folderの関係を整理しよう
ツールボックスの素材を扱う時、これらの違いに混乱しやすいので、ここで整理しておきましょう。
| 種類 | 特徴 |
|---|---|
| Part(パーツ) | ステージ制作で使う基本パーツ |
| Union(ユニオン) | Part同士をつなげて1つにできる(素材は基本1種類) |
| Model(モデル) | Part・Union・音などをまとめて移動・回転できる「 まとめ役 」。ただしPartのような実体はないので、触れた判定などには使えない |
| Folder(フォルダー) | Workspace内で素材を整理する箱 |
Modelの中に直接Scriptを置いても、Touched(触れた判定)は反応しません。Model自体には実体がなく、判定は中の実際のPart(BasePart)に対して行われるためです。ツールボックス素材にScriptを追加する時は、Modelの中の「 実際のパーツ 」に入れるようにしましょう。
Well done!
次のステップに進みましょう!