ゲームオペレーションの基本となる、オブジェクト表示と非表示について見ていきましょう。
クリックするたびに、Sphereオブジェクトが出現したり、消えたりします。
コンソールに、アクティブ状態(True か False)を表示するようにしています。
関連記事:
左右キーでスイッチして順に入れ替える
ボタンでオブジェクトを切り替える
出現時間をランダム(秒)にする
キーを押すたびにオブジェクトを切り替える
キー操作で複数オブジェクトの表示を切り替え
ボタン表示・非表示のスクリプトをつくる
アクティブ状態の時間をはかる
オブジェクトのアクティブ状態を取得
Sphereと、空のオブジェクト(GameObject)を作成します。
SphereScript.csを作成し、GameObjectに追加します。
SphereScript.csを記述します。
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 SphereScript : MonoBehaviour { [SerializeField] GameObject sphere; void Update() { if (Input.GetMouseButtonDown(0)) { if(sphere.activeSelf) sphere.SetActive (false); else sphere.SetActive (true); Debug.Log (sphere.activeSelf); } } } |
スフィアのフィールドに、Sphereを入れます。
ゲームプレイしてみましょう。
クリックで、オブジェクトの表示・非表示が切り替わります。
コンソールには、表示の場合はTrue、非表示の場合はFalseが出ています。
activeSelfを使えば、オブジェクトのアクティブ状態を、bool型で返してくれます。
関連記事:
左右キーでスイッチして順に入れ替える
ボタンでオブジェクトを切り替える
出現時間をランダム(秒)にする
キーを押すたびにオブジェクトを切り替える
キー操作で複数オブジェクトの表示を切り替え
ボタン表示・非表示のスクリプトをつくる
アクティブ状態の時間をはかる