このスクリプトでやりたいことは、球体のゲームオブジェクトをprefabかしたやつがいっぱいあります。
prefabをインスタンス化して非表示にして配列の中に入れておくというコードが書きたいです。
細かい処理は変数の宣言にコメント文を書きました。足りない部分があれば、追加するので教えてください。
print文を挿入してデバッグしてみたのですが、
arr = new GameObject[i];
ball[i] = ball_instance;
ここらへんでこけていることが分かりました。
gameobjectを配列に入れるやり方が間違っているのでしょうか
C#
1public class mvcam : MonoBehaviour 2{ 3 public GameObject ball; //最初はview_start、それ以降はview1 view2と順番に変数に代入される 4 private GameObject ball_instance = null; //ballに入れられたものをインスタンス化する 5 GameObject[] arr; //gameobjectを格納する配列 6 void Start() 7 { 8 9 GameObject[] ball; 10 for (int i = 0; i <= 2; i++) { 11 ball = (i==0) ? (GameObject)Resources.Load("Prefabs/view_start") : (GameObject)Resources.Load("Prefabs/view"+i); 12 ball_instance = (GameObject)Instantiate(ball); 13 ball_instance.SetActive(false); 14 arr = new GameObject[i]; 15 ball[i] = ball_instance; 16 } 17 } 18}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。