• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

헤메고 있어 질문드립니다.

21.01.29 22:53 작성 조회수 131

0

이런 식으로 질문드리는 게 문제라는 점을 알면서도 어디서부터 건드려야 할 지 감이 오지 않아 질문드립니다.

bind 함수에서 다른 유형은 문제 없는데 bind<Image>(typeof(Images)) 로 바인드 할 경우 문제가 발생합니다. 

디버그를 해보니

Bind<T>로 이동하여 typeof(T) == typeof(gameObject) 조건을 만족하지 않아 else 문 FindChild<T>로 이동합니다.

그 다음  go == null 조건 만족하지 않고 리커시브도 트루기에 맨 아래 foreach문으로 이동하는데 디버깅을 해보니go.GetComponentsInChildren<T>()을 가져온 component에 ItemIcon이 아닌 PointButton이 들어갑니다. 

이게 무슨 까닭으로 이리 되는 건지 가닥을 잡을 수 없어 장황하게 질문 남깁니다.

답변 2

·

답변을 작성해보세요.

0

강동훈님의 프로필

강동훈

질문자

2021.01.30

감사합니다.

0

Bind<T>로 이동하여 typeof(T) == typeof(gameObject) 조건을 만족하지 않아 else 문 FindChild<T>로 이동합니다.

이건 정상적인 상황입니다. gameObject는 일반 GameObject만 찾기 위한 용도이고 나머지는 else로 가게 됩니다.
enum Images 안에 들어가 있는 값이 정말 이미지에 해당하는 애가 맞는지,
혹은 거꾸로 오브젝트를 만들 때 ItemIcon에 Image가 있는 것은 맞을지가 관건일 것 같습니다.
위에 2가지를 확인해보시고 그래도 모르시겠으면
rookiss@naver.com로 프로젝트를 압축해서 보내주시기 바랍니다.