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

게임개발 중급(56) - Monster Killer(18)

by jyppro 2023. 6. 17.

Monster Killer(18)

이전에는 데미지 UI 버그수정 및 3차 코드정리를 진행하였습니다. 오늘은 다음 몬스터를 연결해주는 작업을 알아보도록 하겠습니다.

 

몬스터 연결 과정

현재 스크립트를 통해 다음몬스터를 소환하고, 이전 몬스터의 모든 정보들을 이어주기 때문에 사실 아웃렛 접속을 통해 다음 몬스터 프리팹을 연결해주기만 하면 소환이 가능합니다. 하지만 몬스터가 기존 몬스터처럼 사용되어지게 하려면 많은 과정을 거쳐야 합니다.

 

1. 사용할 몬스터 프리팹에 컴포넌트 추가

저희가 사용하고 있는 모든 몬스터 프리팹에는 오디오 소스와 몬스터 컨트롤러 컴포넌트가 들어가 있습니다. 이 두개는 꼭 추가를 해주어야 합니다.

필수추가-컴포넌트
필수 추가 컴포넌트

2. 몬스터 연결 설정

추가한 컴포넌트를 통해 아웃렛 접속을 하여 다음 몬스터를 연결해주고, 사용할 사운드도 추가해주어야 합니다. 같은 사운드를 사용할 것이라면 그대로 가져오면 되지만, 몬스터의 종류가 다른데 같은 효과음을 사용하는 것은 좋은 게임을 만드는 방법에는 어울리지 않습니다. 따라서 저는 몬스터에게 어울리는 효과음을 찾아 새로 넣어주었습니다.

 

효과음은 현재 총 4개로 처음부터 순서대로 <소환, 공격, 피격, 사망>을 다루고 있습니다.

 

3.몬스터 프리팹 설정

몬스터의 종류가 바뀌면서 몬스터의 모습과 형태가 바뀌게 됩니다. 그에 따라서 이전에 몬스터 부위별로 추가해 주었던 콜라이더들을 전부 추가해주고 크기에 맞춰 수정해 주어야 합니다. 거기에 헤드포인트 및 태그설정도 전부 해당 몬스터 종류에 맞도록 설정해 주어야합니다. 상당한 노가다 작업을 요합니다.

콜라이더-설정
콜라이더 설정

4. 애니메이터 설정

몬스터의 모든 처리가 끝났다면 이제 애니메이션을 설정해 주어야 합니다. 기존의 몬스터가 하던 행동방식을 그대로 사용하겠습니다. 처음 등장하면 울음소리, 이후 idle에서 공격과 죽음을 설정하겠습니다. 공격과 죽음을 다루는 파라미터도 그대로 만들어 주겠습니다.

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

이제 모든 설정과정이 끝났습니다. 다음 몬스터를 연결해 주려면 해당 과정을 전부 거쳐야 합니다. 상당히 많아 보이지만, 사실 이것도 기존의 프리팹 몬스터를 갖고 있기 때문에 조금 더 단순화 된 것이라고 생각됩니다.

테스트를 위해 몬스터 체력증가 비율과 공격력을 임의 조정하여 빠르게 스테이지를 넘길 수 있도록 해보겠습니다.

 

실행

 

몬스터-소환
다음 몬스터 소환

연결한 몬스터가 잘 소환되는 것을 확인할 수 있었습니다.

다음-단계-및-애니메이션
다음단계 및 애니메이션

다음 단계로도 잘 넘어가는 것과 애니메이션 출력 등 전부 정상작동하는 것을 확인하였습니다.

 

<NEXT>

오늘은 다른 종류의 다음 몬스터를 연결하는 과정에 대해 알아보았습니다. 다음에는 가능하다면 몬스터가 맵을 활보하도록 움직임을 넣어주도록 하겠습니다. 감사합니다.