Unity事例ノート

UNITY

ボタンでオブジェクトを切り替えるしくみ

ボタンをクリックすると、どちらかのオブジェクトが表示、非表示されるしくみ。

ゲーム中によく出てくる、選択シーンに利用できそうですね。

関連記事:
【Unity C#】左右キーでスイッチして順に入れ替える
【Unity C#】リトライボタンの設置(前編)
【Unity C#】キー操作で複数オブジェクトの表示を切り替え
【Unity C#】ボタンでオブジェクトを切り替える
【Unity C#】オブジェクトの表示・非表示を切りかえる
【Unity C#】キーを押すたびにオブジェクトを切り替える

ボタンとオブジェクトを準備

2種類のオブジェクトを用意しました。

ボタンも2つ作成しましょう。

ボタンの作成について詳しくは、下記をご参照ください。

【Unity C#】リトライボタンの設置(前編)

キューブとボタン、それぞれこのように名前をつけました。

ボタンによって切り替えるスクリプト

スクリプトを新規作成し、ClickSelectという名前にしました。

空のオブジェクトを作成しましょう。

ヒエラルキーに、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#】キーを押すたびにオブジェクトを切り替える