今回はゲームのオープニング画面というか、ゲームのスタート待ち画面と、ゲーム画面への移行について紹介する
上のを一応説明しておくと、Push Spaceと表示されている画面がゲームの開始待ち画面、そのあとのLevel3 Startと表示されているのがゲームの開始画面となっている
〇用意するもの
・ゲーム開始待ちのScene
・ゲーム中のScene
・SceneManager.LoadScene("シーン名")
ア ゲーム開始待ちシーンの作成
メニューからNew Sceneを選択して、新しいSceneを作成
Startという名前で保存
背景を真っ黒にしたいので、MainCameraを選択し、InspectorのCameraの項目のClear FlagsをSolid Colorに変更
その下のBackgroundをクリックすると色選択ダイアログが表示されるので、好きな色を選択
円になっているところをクリックして、大まかな色を選択し、四角の中をクリックして最終的な色を選択する
その下のRGBAに直接数値を入れて色を作成することも可能
なお、Aについては透過度を変えることができる
次にテキストを表示するために、HierarchyのCreate-UI-Textを選択する
テキストを作成すると、Canvasなるものが作成されるが、UIについてはすべてこの中に配置、描画される。
Textを選択し、Inspectorにて表示されるテキスト、フォントサイズ、色などを設定していく
Scene View内のCanvasについては、なぜか裏側から表示されたりして編集し辛いので3Dのプロジェクトを作成の場合は、「2D」のボタンを押して2D空間に固定するとやりやすくなる
Textを表示したい位置に移動
あと、ゲームが実行されるときの画面サイズが不定の場合は、文字サイズが設定したサイズにならなかったり都合が悪い場合もあるので、CanvasのScalerの中のUI Scale ModeをScale With Screen Sizeにしておくと、画面のサイズにキャンバスのサイズも調整してくれるので、文字もちょうど良い感じに表示される
ちょっと適当だが、タイトルの文字とゾンビを配置して、開始待ち画面が完成
イ スクリプトの作成
ゲームのシーン管理用に、Hierarchy上で空のゲームオブジェクトを作成し、これにスクリプトを追加する(空のゲームオブジェクトについてはGameContorollerなどと分かりやすい名前に変えておく)
シーン移行を管理するには、上記のようにSceneManagementを使うという宣言が必要
あとは、ユーザーのキー操作でスペースキーが押されたときにSceneManager.LoadScene("シーン名")
にて移行先のシーンを呼び出す
〇ビルド時のセッティングについて
なお、プロジェクトをビルド(アプリ化)するにあたっては、ゲーム内でSceneを複数作成した場合は、最初に呼び出されるSceneを設定しておく必要がある。
File-BuildSettingを選択し、上記の用ように最初に読み込まれるSceneをAdd Open Scenesを押して、最初に呼び出されるSceneを設定しておく
ちなみに、Unity Editor上では、再生ボタンを押すと現在開いているScenetが再生されるので、注意を
〇今回のまとめ
・テキストを表示するにはUinty UIを使用
・複数Sceneを作成した場合は、SceneManager.LoadScene("シーン名")を使用して移行したいSceneを呼び出す
・ビルド時には最初に読み込むSceneの設定が必要
今回は以上(中身薄っ(-_-メ))