■ このスレッドは過去ログ倉庫に格納されています
【ゲームエンジン】Unityなんでも質問スレpart12
- 237 :名前は開発中のものです。:2023/11/26(日) 10:02:55.92 ID:ap8K17/p.net
- // Hogehoge.cs
public class Hogehoge : MonoBehaviour
{
public int 変数A{ get { return 変数a; } set { 変数a = value; } }
public bool 変数B{ get { return 変数b; } set { 変数b = value; } }
}
// GameManager.cs
public class GameManager : MonoBehaviour
{
public GameObject[] objects;
// ?
private void Start()
{
int aaa = this.objects[0].変数A; // ?
int bbb = this.objects[0].GetComponent<Hogehoge>().変数A; // ?
}
}
GameManagerの?はthis.objects[0]を見ている=GameObjectクラスを見ているので、GameObjectに変数Aがなくてエラーになる
?はthis.objects[0](GameObject)からHogehogeクラスを取得してHogehogeクラスを見ているので、Hogehogeの変数Aを見てエラーにならない
ただしGetComponentはコストが高い処理なので、毎フレーム実行する必要がある場合などはクラス変数(?)にHogehogeの変数を定義しておきそれにアクセスするほうが低コスト
public Hogehoge[] hogehoges;
総レス数 1001
334 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200