2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【ゲームエンジン】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