そういうのがいいブログ

アプリ個人開発 まるブログ

アプリ開発覚え書き

【Unity】スクリプトからゲームオブジェクトの表示・非表示を判定する

環境

Unity 2019.3.7f1

はじめに

スクリプトからゲームオブジェクトの表示・非表示を判定する方法を説明します。

コード

表示・非表示の判定は
ゲームオブジェクト型の変数.activeSelf
で取得できます。

この関数はbool型の返り値を返すので
bool型の変数=ゲームオブジェクト型の変数.activeSelf;
で使います。

具体例

下記のコードで非表示にしたオブジェクトをアタッチして実行してみます。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class test : MonoBehaviour
{
    [SerializeField] private GameObject a;//GameObject型の変数aを宣言 好きなゲームオブジェクトをアタッチ
    private bool b;//bool型の変数bを宣言
    
    void Start()
    {
        b = a.activeSelf;//aがアクティブかどうか判定し、trueかfalseがbに入る
        Debug.Log("b=" + b);//コンソールに変部bの中身を表示
    }
}


結果
変数aにアタッチされていたオブジェクトは非表示だったので変数bの中にはfalseが入っています。
image.png

おわりに

判定した返り値をbool型の変数に入れるのを忘れずに!