본문 바로가기
게임 프로그래밍/게임개발 중급

게임개발 중급(62) - Monster Killer(24)

by jyppro 2023. 6. 26.

Monster Killer(24)

이전에는 게임오버 화면과 재시작 버튼을 만들어 보았습니다. 오늘은 다음 몬스터를 연결하는 과정을 현재 에셋으로 가져온 모든 몬스터에게 적용시켜 스테이지를 완성하도록 하겠습니다.

 

몬스터 세팅

몬스터-인스펙터-창
몬스터 인스펙터 창

모든 몬스터 프리팹에 들어가는 컴포넌트들 입니다. 컨트롤러와 무브먼트, 오디오 소스 그리고 네브메쉬 에이전트까지 4개를 추가해 주어야 합니다. 만약 제가 사용하는 몬스터와 같은 에셋을 사용하신다면 애니메이터는 들어있을 것입니다. 전 일단 같은 몬스터 에셋을 사용했다는 가정하에 이야기 하겠습니다.

 

스크립트 설명

스크립트
설명

컨트롤러는 게임에서 사용하는 UI와 다음 몬스터를 연결시켜주는 사항과 몬스터 상황(소환, 공격, 피격, 죽음)에 대한 소리를 연결해 재생시키는 역할을 하고있습니다. 무브먼트는 몬스터가 AI를 가진 것처럼 움직이도록 만들어주는 스크립트 입니다. 이전에 작성했던 것이므로 따로 보여드리진 않겠습니다. NextMonsterPrefab 항목에 해당 스크립트가 들어있는 몬스터가 죽으면 다음으로 소환될 몬스터를 지정해 주어야 합니다. 현재 위 그림은 알비노 몬스터가 죽으면 그린이 소환되는 방식입니다.

 

부위 만들기

이제부터는 하나하나 만들어주어야 하는 노가다 작업이 필요합니다. 몬스터별로 각 부위에 맞게 콜라이더를 작성해주고, 각 부위에 태그도 추가해 주어야 합니다. 특히 제가 사용하는 몬스터들은 세번째, 네번째부터는 날개가 크게 있는데 날개도 따로 콜라이더를 만들어 주도록 하겠습니다. 날개같은 경우는 빈 오브젝트를 만들어서 콜라이더를 생성해줍니다. 추가로 데미지도 설정해 주어야 하니 다른 부위와 마찬가지로 Wing 태그를 만들어 사용해 줍니다.

몬스터-부위
부위 생성

콜라이더가 부위별로 적용된 대략적인 모습입니다.

 

애니메이션

모든 부위를 만들었다면 이제 애니메이션을 연결시켜 주어야 합니다. 이미 만들어둔 몬스터들과 같은 방식으로 연결시켜 주면 됩니다.

애니메이션-트리
애니메이션 트리

애니메이션의 이름만 다를 뿐 행동하는 방식은 같습니다. 날개가 크게 달려있는 친구들은 움직임을 나는 애니메이션으로 연결시켜 주었습니다.

 

이렇게 하면 총 16마리의 몬스터가 4마리씩 4단계로 나뉘어져 순서대로 소환되도록 게임이 만들어졌습니다.

 

<NEXT>

이번에는 모든 몬스터를 연결시켜서 스테이징을 완성 시켰습니다. 이제부터는 시간이 조금 걸릴 수도 있지만 이전에 점검표 마지막에 있던 재화시스템을 만들어 보도록 하겠습니다. 감사합니다.