목록GetComponentsInChildren (4)
안 쓰던 블로그

다음과 같은 오브젝트를 코드에서 가져올 때에 사용하는 함수 GetComponentsInChildren 이다 GameObject answerAllBox_img = Instantiate(ans_img) as GameObject; //빈 오브젝트 생성answerAllBox_img.transform.SetParent(canvas.transform); //오브젝트를 Canvas그룹 하위에 넣는다for (int i = 0; i (); //생성한 클론들을 불러온다 위에는 Clone 오브젝트를 생성하고 부모 오브젝트를 지정하는 코드핵심은 맨 아랫줄 2개이다.그런데 이렇게만 가져오면 IndexOutofRange가 뜬다!!!이 글을 쓴 이유이자 이 글의 핵심 GetComponentsInChildren 로 가져온 자식 목록..

원하는 것: 한 번의 게임 라운드가 끝나면, 사용했던 Transform[] 의 게임 오브젝트를 전체 Destroy 한다. 다음 라운드에서 Instantiate로 오브젝트를 생성한다. 생성한 오브젝트들의 Transform[]을 만들어서 행동을 한다. 문제와 실패: 한 번의 게임 라운드가 끝나면, 사용했던 Transform[] 의 게임 오브젝트를 전체 Destroy 한다 -> Hierachy에서 완벽하게 이루어짐을 확인 다음 라운드에서 Instantiate로 생성한다 -> 생성 완료 생성한 오브젝트들의 Transform[]을 만들어서 행동을 한다 -> 문제 발생 외관상 Destroy가 잘 이루어졌는데, 이전 라운드에서 사용한 Transform[]과 다음 라운드에서 Instantiate로 새로 생성된 오브젝트..

이미지 박스 6개에다가 랜덤으로 이미지를 붙이는 동작을 하는 스크립트 객체가 6개에 이름이 box1Image, box2Image..니까 유니티 뉴비가 딱 보고 짰던 코드 public GameObject box1Image, box2Image, box3Image, box4Image, box5Image, box6Image; box1Image.GetComponent().me = 1; box2Image.GetComponent().me = 2; box3Image.GetComponent().me = 3; box4Image.GetComponent().me = 4; box5Image.GetComponent().me = 5; box6Image.GetComponent().me = 6; bm = new List(); bm.A..

Text[] boxText = boxtext.GetComponentsInChildren(); print(boxText.Length); Length가 0으로 나와서 빈 배열을 참고했다는 에러가 나올 때 해결 방법 일단 부모-자식 관계가 제대로 되어 있는지부터 확인한다 그리고 부모 게임 오브젝트를 GameObject.Find()로 가져왔으면 이름이 틀리진 않았는지 확인하고 public으로 가져왔으면 잘 넣어줬는지 확인한다 그리고 중요한 점 GetComponentsInChildren은 자식 오브젝트가 켜져있어야 가져와진다!! 다 꺼놓고 원하는 만큼 SetActive(True)하려고 했더니만 활성화 되어있지 않다면 아예 없는 취급하더라ㅋㅋ +댓글로 누군가 알려주신 내용 추가 GetComponentsInChild..