ランダム配置した際にObjのタグのついているコライダーがそこにある場合そこにオブジェクトをおけないようにしたいんですけどわかりません。
よかったらおしえてください。
for(int i=0; i < 100; i++) { GameObject [] CubeA=Instantiate(cube [0], new Vector3(posArray[i].x, y, posArray[i].y), Quaternion.identity); Collider a= CubeA [0].GetComponent<Collider>(); void OnTriggerStay(a.Collider other) { if(other.CompareTag("Obj")) { Destroy(CubeA [i].gameObject); i=-1; } } } posArray = posArray.OrderBy(i => Guid.NewGuid()).ToArray(); y = 2.2f; for(int i=0; i < 1000; i++) { GameObject [] CubeB=Instantiate(cube [1], new Vector3(posArray[i].x, y, posArray[i].y), Quaternion.identity); Collider a= CubeB [1].GetComponent<Collider>(); void OnTriggerStay(a.Collider other) { if(other.CompareTag("Obj")) { Destroy(CubeB [i].gameObject); i=-1; } } }
タグ取得でエラーがおきるので
for(int i=0; i < 100; i++) { GameObject ACube=Instantiate(cube [0], new Vector3(posArray[i].x, y, posArray[i].y), Quaternion.identity); var CubeA=ACube.GetComponent<Transform>().position; float xA =CubeA.x; float zA = CubeA.z; UnityEngine.Debug.Log("message = " + xA); }
クローン化した座標の変数をとったんですけれどforの中の変数を取得してもうひとつのforにその変数を使うことはできないのでしょうか?
このコードはvoid Start()に入れています
エラーの内容も書いてください。
回答3件
あなたの回答
tips
プレビュー