본문 바로가기

unity tech.

자식 객체 Destroy 할 때 주의

transform.childCount        ------    (1)

Destroy(child.gameObject)

transform.childCount        ------    (2)


위와 같이 자식 객체를 지웠을 때, (1)과 (2) 값은 같다.


화면에서도 지워야 childCount 값이 변한다.


child.parent = null    <-- 이런 식으로


* child는 Transform 이다.



transform.childCount        ------    (1)

child.parent = null

Destroy(child.gameObject)

transform.childCount        ------    (2)


이렇게 했을 때 (1)과 (2)는 다르다.



유니티 화면에서 실행 시켜서 확인해 보면 쉽게 알 수 있다. 전자는 Destroy되어도 scene에 남아 있고, 후자는 없다.