게임에 사용할 맵은 Unity Asset Store에서 Viking Village URP라는 무료 Asset 사용.

Unity6에서 이 Asset을 Import할 경우 Water Shader에서 에러가 발생하여 마젠타 색상으로 보이는데, AI를 사용하여 문제점을 찾고 오류를 수정함.


Canvas를 World Space로 설정하여, Silder로 Enemy가 사용할 Health Bar를 구현함.

Enemy가 많은 상황에서 지속적으로 Health Bar가 표시될 경우 너무 난잡하고 어지러울 것 같아서 Targeting 되면 지속적으로, 피격받은 경우 일정시간 동안 Health Bar가 보이도록 구현.


Player Health Bar는 Player 위에 뜨는 것이 아니라 화면 UI 좌측 상단에 보이도록 UI 구성.


Field에 있는 Enemy를 모두 잡거나, Player Health가 모두 닳을 경우 게임이 끝나는 Event 추가.
화면 UI에 Field에 존재하는 총 Enemy의 수를 표시.
GameManager를 통해 게임의 승리, 패배를 확인하여 결과창 구성.



영상 크기가 너무 커서 Youtube 링크로 대체.
이번 프로젝트는 다크소울이나 엘든링 같은 느낌의 게임을 만들고 싶어서 시작한 프로젝트였다.
프로젝트를 진행할 때는 몰랐는데, 끝나고나서 많은 요소들이 얽힌 모습을 보니 이거를 어떻게 만들었지라는 생각이 든다.
Cinemachine이나 NavMesh, Character Controller 같은 다양한 Component, 수많은 Script, 상태에 따른 Animation 등 많은 기능들을 사용하며 프로젝트를 진행했고, 생각보다 퀄리티가 괜찮은 것 같아서 다행이다.
이번 프로젝트를 통해 새로운 요소들을 배우고, 기존의 것들을 한층 강화할 수 있었다.
특히 프로젝트를 진행하면서 Chat Gpt와 Copilot 같은 AI Tool의 도움을 많이 받았다.
Chat Gpt한테 궁금한 것이나 모르는 것을 물어보고, Copilot의 자동완성이나 코드 추천 기능을 사용했고, 사용하지 않을 때에 비해 개발 속도가 상당히 빨라져서 프로젝트를 빠르게 진행할 수 있었다.
앞으로 개발에 있어서는 AI Tool의 존재가 필수라고 생각이 된다.
https://github.com/dlalsrn/3D-Action-RPG