프로그래밍 강의/게임메이커 스튜디오

GMS, 페런츠로 통합 오브젝트를 만들어보자

wnsrn3436 2013. 9. 7. 23:05

 

여러분의 게임 프로젝트가 혹시 위와 같지는 않으신가요?

적 오브젝트는 추가해야 하고, 그에 따라 충돌 이벤트는 한없이 늘려야 합니다.

만일 적 오브젝트가 100개라면, 충돌 이벤트가 무려 100개! 상상만 해도 끔찍하지 않나요?

하지만 다행히도 게임메이커: 스튜디오(GameMaker: Studio)에서는 오브젝트를 하나로 묶을 수 있는 페런츠(Parents)라는 기능을 지원합니다.

 

 

부모(Parents)를 설정하는 방법은 간단합니다.

먼저 페런츠 오브젝트를 생성한 뒤에, 원하는 오브젝트들이 그 페런츠를 선택하면 됩니다.

 

TIP.

 

페런츠는 페런츠의 페런츠를 설정할 수도 있습니다.

한마디로 위처럼 오브젝트를 '계층화' 시켜서 편리하게 관리할 수가 있습니다.

 

 

페런츠 기능을 사용하게 되면, 'with(페런츠){instance_destroy()}' 와 같은 코드를 작성했을 때에 현재 룸 상에 거주하는 자식 인스턴스를 전부 파괴할 수 있습니다.

즉, 게임메이커의 각종 기능에서 부모를 대상으로 지정하게 될 경우 자식들에게도 적용이 된다는 것입니다.

 

이와 같은 원리를 따져본다면, 충돌 이벤트를 부모로 지정하게 되면 자식들에게도 적용된다는 것을 알 수가 있습니다.

위 사진처럼 4개의 충돌 이벤트를 사용하던 것을 단 한 개의 충돌 이벤트로 압축할 수 있게 되는 것입니다.

 

 

페런츠의 또 다른 매력은 바로 부모로부터의 이벤트 상속입니다.

만약 부모에게 있는 이벤트(이벤트 속 액션 포함)가 자식에게는 존재하지 않는다면, 그 이벤트를 상속해줍니다.

자식에게 동일한 이벤트가 존재한다면 부모의 그 이벤트를 상속하지 않습니다만, event_inherited 함수를 사용하면 이벤트를 상속받을 수도 있습니다.

 

http://cafe.naver.com/playgm

Comments