■各パネルの画像を設置
Assetsの下にフォルダをドラッグして保存し、フォルダ名をImagesにする
UI-Panel
※Panel:Canvasの背景を設定する
Canvasフォルダの下にPanelが作成される
RoomPanel(背景)を設定
コピーして下記を作る
lightStandPanel(ライト)
drawerPanel(引き出し)
pcPanel(ノートPC)
Inspectorでそれぞれに画像を設定する
チェックを外して、表示を非アクティブにする
■ボタンを作成
RoomPanelの上記の3つの位置にボタンを作成する
CreatEmptyでGameObjectを作成し、
TriggerButtonList
とする
その下に、
UI-Image
Imageを作成し、TriggerButtonとする
ProjectにPrefabsフォルダを作成して、TriggerButtonをドラッグアンドドロップして入れ、プレファブにしておく
※Prefabプレファブ(スタンプ、設計図)
プレファブにしたいオブジェクトを、HierarchyウィンドウからProjectウィンドウにドラッグアンドドロップする
TriggerButtonを複製して3つ作成し、
LightTriggerButton
DrawerTriggerButton
PCTriggerButton
にする
ProjectでプレファブのTriggerButtonを選択し、Open Prefabボタンを押して、Add CompornentでButtonを有効にする
すべてのTriggerButtonにButtonコンポーネントがついているのを確認する
※プレファブにしたら、Hierarchyウィンドウで個別に設定するのではなく、Projectウィンドウで設定していく
※Projectウィンドウは開発者向けの素材を置いて扱うところ
■スクリプトを設定
ProjectにScriptsフォルダを作成し、C#スクリプトGameManagerを作成する
CreatEmptyでGameobjectを作成し、GameManagerとし、このオブジェクトにスクリプトをつける
◇各パネルを取得
publicな変数の宣言
プレファブにしたパネルをスクリプトで取得するためのpublic変数を宣言
GameObject型の変数(プレファブやゲームオブジェクトを入れる)
※ゲームオブジェクト:Hierarchyウィンドウにある全部
public class GameManager : MonoBehaviour
{
// 各パネルを取得
public GameObject lightStandPanel;
public GameObject drawerPanel;
public GameObject pcPanel;
}
スクリプトに変数を宣言すると、
InspecterでGameManagerオブジェクトのGameManagerスクリプトに
lightStandPanel
drawerPanel
pcPanel
が出ているので、それぞれにパネルをセットする
◇各TriggerButtonを押したら該当するパネルを表示
public class GameManager : MonoBehaviour
{
public GameObject lightStandPanel;
public GameObject drawerPanel;
public GameObject pcPanel;
// ボタンを押したら該当するパネルを表示
public void OnClickLightStandTrigger() //ライトトリガーを押したら
{
lightStandPanel.SetActive(true); //ライトパネルをアクティブにする
}
public void OnClickDrawerTrigger() //引き出しトリガーを押したら
{
drawerPanel.SetActive(true); //引き出しパネルをアクティブにする
}
public void OnClickPCTrigger() //PCトリガーを押したら
{
pcPanel.SetActive(true); //PCパネルをアクティブにする
}
}
Inspectorで下記のTriggerButtonのButtonコンポーネントの On Click() にGameManagerオブジェクトをセットして、
表示される関数をから実行させる関数を設定する
LightTriggerButton OnClickLightStandTrigger()
DrawerTriggerButton OnClickDrawerTrigger()
PCTriggerButton OnClickPCTrigger()
##教材
Unityゲームスタジオ スタジオしまづ
【Unity】初心者からの脱出!? 脱出ゲームの作り方 その1
https://youtu.be/boSqdZ87ULU