ステージ/レベル/確認のシーンを作成し、分岐させる
LevelScene作成とボタンを配置
まず初めに、⑧新しいシーンを作ろう!と同様の手順でシーンを作成します。
保存する名前は「LevelScene」にします。
↓
ボタンを3つ作り、それぞれの名前を「Beginner」・「Intermediate」・「Senior」とします。
↓
各ボタンのTextには、
・「BeginnerButton」には「Beginner」
・「IntermediateButton」には「Intermediate」
・「SeniorButton」には「Senior」と入力します。
↓
そのままですと、見えづらいので、InspectorのFontSizeを「50」に変更します。
ボタンを押したら、画面遷移出来るように設定
最初に、「BeginnerButton」が押されたら画面遷移できるようにスクリプトを作成します。
スクリプトの名前を「BeginnerButton」とし、内容は以下のを入力します。
次にこのスクリプトを、BiginnerButtonにドラッグ&ドロップ。
↓
Inspector「On Click()」を設定。
(⑧新しいシーンを作ろう!の「ボタンの配置と設定」と同様の手順で行いますので、こちらを参照して下さい。)
BeginnerScene作成とボタン配置
先ほどの流れ同様、BeginnerSceneを作成します。
↓
シーンの名前は「BeginnerScene」。
↓
ボタンを3つ作成。
それぞれのボタンの名前を
「Standard1 Button」・「Standard2 Button」・「Standard3 Button」とします。
↓
各ボタンのTextは★で入力。
・「Standard1 Button」は★1つ。
・「Standard2 Button」は★2つ。
・「Standard3 Button」は★3つ。
を入力します。
↓
そのままですと、見えづらいので、InspectorのFontSizeを「50」に変更します。
ボタンを押したら、画面遷移出来るように設定とデータを保存
画面遷移は先程と同じやり方ですが、そこに1手間加えます。
ここから先、選んだステージの見本をARで表示するシーンを作成します。
そこで、分岐したデータを保存する仕組みを加えます。
(⑨画面遷移の調整をしよう!の「画面遷移しても、経過時間が保存できている状態に設定」と同様の手順で行いますので、こちらを参照して下さい。)
まず、「Standard1 Button」(★1つ)が押されたら画面遷移と保存できるようにスクリプトを作成します。
スクリプトの名前を「StandardButton」とし、内容は以下のを入力します。
次にこのスクリプトを、Standard1 Buttonにドラッグ&ドロップ。
↓
Inspector「On Click()」を設定。
↓
最後に、JSON形式に変換する「ChoiceData」を作成します。
内容は以下のを入力します。
どんなステージなのかをARで表示するGoSceneの作成と設定
先ほどの流れ同様、GoSceneを作成します。
↓
シーンの名前は「BeginnerScene」。
↓
ボタンを1つ作成。(名前をGoButtonとします)
↓
ボタンのTextには、「START」と入力。
位置と大きさを整えたら、「AR Session Origin」と「AR Session」をヒエラルキーウィンドウに追加します。
どんなステージかを見本で表示する為には、どのレベル(LevelSceneのどのボタンを選んだか)を選択して、どのステージ(BeginnerSceneのどの★を選んだか)を選択したかの情報が必要です。
この情報は、先ほど作成した「ボタンを押したら、画面遷移出来るように設定とデータを保存」で、保存が出来ているので、後は保存した情報からマッチしたステージを表示させます。
スクリプトを作成する前に、見本になるステージをプレハブにします。
「GameScene」に作成した「GameStagePrefab」をプロジェクトウィンドウにドラッグ&ドロップ。
↓
これで、見本となるステージが作れました。
次に、保存した情報からマッチしたステージを表示させるスクリプトを作成します。
新たに作成するスクリプトの名前を「Choice」とし、以下の内容を入力します。
「Choice」スクリプトの入力が終わりましたら、ヒエラルキーウィンドウに「Create Empty」で空のオブジェクトを作り、名前を「GameDirector」とします。
↓
「GameDirector」に「Choice」スクリプトをドラッグ&ドロップし、Inspectorの「Game Stage Prefab」にプレハブしたステージをドラッグ&ドロップ。
ここで一旦、「LevelScene」→「BeginnerScene」→「GoScene」の順で画面性と保存出来ているか確認してみましょう。
下記のConsoleのように表示されていれば、正しく保存されています。
保存が出来ていれば、Debug.Logで書いた部分は削除しても構いません。
もし、画面遷移できない場合は、Scenes In Build に各シーンが入っているか確認して下さい。
(入っていない場合は、入っていないSceneをドラッグ&ドロップ)
また、見本となるステージがGoSceneでAR表示されるか、実際にスマホで確認しましょう。
分岐した情報を元に、GameSceneに画面遷移
最後に、分岐した情報を元にGameSceneをマッチさせる仕組みを作ります。
新たに、スクリプトを作成(名前をGoButtonとします)し、以下の内容を入力します。
次に、ヒエラルキーウィンドウにあるGoButtonにGoButtonスクリプトをドラッグ&ドロップ
↓
Inspector「On Click()」を設定。
最後に、実行ボタンを押して画面遷移とデータが保存できているか確認してみましょう。
保存が出来ていれば、Debug.Logで書いた部分は削除しても構いません。
ここまで問題なければ、上書き保存をして下さい。
以上で、「[おまけ①]他のシーンを作ろう!」の作業は完了です。
お疲れ様でした。
興味のある方は、おまけの「【[おまけ②]よりゲームらしくしてみよう!】」をやってみましょう!。