ボタンをクリックすると、どちらかのオブジェクトが表示、非表示されるしくみ。
ゲーム中によく出てくる、選択シーンに利用できそうですね。
関連記事:
【Unity C#】左右キーでスイッチして順に入れ替える
【Unity C#】リトライボタンの設置(前編)
【Unity C#】キー操作で複数オブジェクトの表示を切り替え
【Unity C#】ボタンでオブジェクトを切り替える
【Unity C#】オブジェクトの表示・非表示を切りかえる
【Unity C#】キーを押すたびにオブジェクトを切り替える
ボタンとオブジェクトを準備
2種類のオブジェクトを用意しました。
ボタンも2つ作成しましょう。
ボタンの作成について詳しくは、下記をご参照ください。
キューブとボタン、それぞれこのように名前をつけました。
ボタンによって切り替えるスクリプト
スクリプトを新規作成し、ClickSelectという名前にしました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ClickSelect : MonoBehaviour { public GameObject cubeA; public GameObject cubeB; public void SelectCubeA() { cubeA.SetActive(true); cubeB.SetActive(false); } public void SelectCubeB() { cubeA.SetActive(false); cubeB.SetActive(true); } } |
空のオブジェクトを作成しましょう。
ヒエラルキーに、GameObjectが作成されますので、ここにClickSelectのスクリプトをアタッチします。
GameObjectのインスペクターに、CubeA、CubeBの項目ができています。
ここに、CubeA、CubeBのオブジェクトをそれぞれドラッグ&ドロップしましょう。
ボタン側の設定
続いて、ボタンの設定です。
まずはButtonAを選んで、インスペクターのButtonを確認します。
クリック時()を設定していきます。
左上の項目は、Runtime Onlyのまま。
その下の項目は、シーンタブから、GameObjectを選択しましょう。
右側の項目は、ClickSelect > SelectCubeA にします。
全体をみてみると、ButtonAの設定内容はこのようになります。
同様の手順で、ButtonBも設定しましょう。
設定は以上です。
プレイしてみましょう。
Aボタンを押せばCubeBが非表示、Bボタンを押せばCubeAが非表示。
関連記事:
【Unity C#】左右キーでスイッチして順に入れ替える
【Unity C#】リトライボタンの設置(前編)
【Unity C#】キー操作で複数オブジェクトの表示を切り替え
【Unity C#】ボタンでオブジェクトを切り替える
【Unity C#】オブジェクトの表示・非表示を切りかえる
【Unity C#】キーを押すたびにオブジェクトを切り替える