강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

김지수님의 프로필 이미지
김지수

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

Singleton 패턴

GameObject 및 Managers 인스턴스 생성 관련

해결된 질문

작성

·

180

0

안녕하세요! 항상 좋은 강의 제공해주셔서 감사합니다!

강의 4:43 쯤에서 GameObject go나  Manager mg모두  MonoBehaviour를 상속받기 떄문에 new라는 키워드를 통하지 않고 인스턴스화 하는 것으로 이해하고 있습니다.(타임코드는 어떻게 남기는지 몰라 죄송합니다...)

하지만 13:05 쯤에서는 if(go == null) 체크 후 이미 생성되었지만 null인 상태인 go에 new 키워드를 사용한 GameObject를 대입하고 계신 거 같은데요...! 이때 GameObject에 new키워드를 사용할 수 있는 이유가 궁금합니다!

답변 2

1

Rookiss님의 프로필 이미지
Rookiss
지식공유자

GameObject는 MonoBehavior를 상속받지 않습니다.
오히려  GameObject는 MonoBehavior를 상속받는 Component를 조립해서
사용할 수 있는 최종 물체에 가깝습니다.

GameObject.Find()는 인스턴스화를 하는 것이 아니라,
이미 있는 물체 중 해당 이름과 동일한 GameObject가 있는지를 찾는 것입니다.

13:05에서 if (go == null)에 걸렸다면
해당 이름의 GameObject가 Scene에 존재하지 않기 때문에
new GameObject를 통해서 직접 만들어준 것입니다.

0

김지수님의 프로필 이미지
김지수
질문자

아 그렇군요...! 아예 잘못이해하고 있었네요! 감사합니다!

김지수님의 프로필 이미지
김지수

작성한 질문수

질문하기