今回はスクリプトを使って、ボタンオブジェクトがクリックされた時の機能実装について説明します。具体的には「戻る」ボタンが押された時にホーム画面へ移動する機能を実装します。
遷移先シーン作成とシーン登録
STEP1:遷移先Sceneの作成
先ずは「戻る」ボタンがクリックされた時の移動先となるシーンを作成します。

それではシーンの作成を行っていきましょう。「戻る」ボタンが押された時にはホーム画面に戻るものとします。そこで新規にSceneを作成し、下図のように、HomeSceneとします。
次に、移動機能をテストした際に分かりやすくなるよう、HomeSceneには下図のようにテキストで画面中央付近にホーム画面と表示させました。
STEP2:シーンの登録
次にシーンの登録を行います。Fileタブ→BuildSettingsから下図のように、ScenesInBuildにGuildSceneとHomeSceneを登録しました。

スクリプトの作成とロード機能の実装
STEP1:スクリプト保管用フォルダの作成
先ずは今後も複数のスクリプトを作成することを考慮して、スクリプト専用のフォルダを作成しします。今回は下図のように、Assetsフォルダの直下にScriptsフォルダを作成し、さらにその直下にギルド画面のスクリプトをまとめるGuildSceneというフォルダを作成しました。
STEP2:スクリプトの作成
スクリプト保管用のフォルダが作成できたら、次はスクリプトを作成します。今回はギルド画面にあるボタンクリック時機能を表すスクリプトという意味で、ButtonControllerGuildSceneという名前のスクリプトを作成することとします。(下図参照)
STEP3:ロード機能の実装
続いて作成したスクリプトにロード機能を実装します。具体的には先程作成したスクリプトButtonControllerGuildSceneを開き、下記のようにします。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;//シーンをロードするために導入
public class ButtonControllerGuildScene : MonoBehaviour
{
//「戻る」ボタンがクリックされた時の処理
public void ClickReturnButton()
{
//HomeSceneへ移動
SceneManager.LoadScene("HomeScene");
}
}
4行目:画面遷移を実施する、LoadSceneを使用するために記述します。
8行目:ボタンを押した時に呼び出されるようにするメソッドです。
スクリプトをアタッチするオブジェクトの作成
ここまででボタンに付与したい機能は実装できたので、次はそのスクリプトをアタッチするオブジェクトを作成します。今回はGuildSceneのヒエラルキーウィンドウでCreateEmptyで空のオブジェクトを作成し、名前をButtonControllerとします。(下図参照)
スクリプトのオブジェクトへのアタッチ
続いて作成したオブジェクトにスクリプトをアタッチします。方法は下図のように、ヒエラルキーウィンドウでButtonControllerオブジェクトを選択した状態で、スクリプトをドラッグし、インスペクターウィンドウにドロップします。

ボタンクリック時の機能とロード機能の紐付け
スクリプトのアタッチまでできたので、次は「戻る」ボタンクリック時の機能とスクリプトに記述された関数ClickReturnButtonとの紐付けを行います。これにより『「戻る」ボタンがクリックされる→ClickReturnButtonが呼び出される』という形となり、目標としている機能が実現できます。
STEP1:OnClick()へのButtonControllerオブジェクトの紐付け
先ずはReturnButtonオブジェクトのOnClick()と、スクリプトがアタッチされたButtonControllerオブジェクトを紐付けます。
具体的には下図に示すように、ReturnButtonのインスペクターウィンドウからOnClick()の+ボタンをクリックし、指定のボックスにButtonControllerオブジェクトをドラッグ&ドロップします。
STEP2:OnClick()とClickReturnButtonメソッド(ロード機能)の紐付け
OnClick()にButtonControllerオブジェクトを認識させたので、続いてButtonControllerオブジェクトにアタッチされたClickReturnButtonメソッドとOnClick()を紐づけます。方法としては下図に示す通りです。
これで「戻る」ボタンがクリックされた時、ClickReturnButtonメソッドが呼び出されるようになりました。
機能テスト
最後に機能テストをしてみて下さい。ギルド画面の「戻る」ボタンが押された時に、下図のようにホーム画面へ移動したら成功です。
今回はスクリプトを使用した機能の実装を行いましたが、いかがだったでしょうか。慣れないうちは大変かもしれませんが、スクリプトの作成に慣れてくると戦闘画面など色々なことができるようになりますので頑張ってみて下さい。
ではまた次回お会いしましょう。皆さんお疲れ様でした。
以上。
コメント