시작은 0부터
[Unity] 팀 프로젝트 ACC - 9/26 본문
오늘 작업 시간 - 1MH(8H)
NavMeshAgent 를 활용하여 AI의 이동을 구현하는 과정에서 물리 기능이나 다양한 변수 상황에 따른 처리를 적용하는 방법이 많이 까다롭고 막막해서 일단은 PVP 에 중점을 두어 플레이어 간의 상호 처리를 우선적으로 해결하기로 하였다. 이 문제를 코딩을 잘하는 동기분에게 말씀드렸더니 ML Agent 라는 다른 방법을 제안해주셨다. 유니티를 몇 달째 사용하면서도 정작 사용하는 코드나 함수의 폭이 좁은 와중에, 완전히 새로운 AI 구현 방법을 알게 되었다.
https://unity.com/kr/products/machine-learning-agents
맵을 어느정도 완성하고 발판(가속 및 점프)을 구현할 때 AddForce로 값을 주어 물리적으로 이동하도록 하였는데, 기존의 플레이어 이동 또한 휠콜라이더를 통해 물리적으로 이동하다보니, 플레이어의 이동속도에 따라 각 축에 주어지는 힘의 폭이 예상보다 많이 넓어 고정된 값을 주는 것이 생각보다 변수가 많이 발생했다.
이번주 금요일에 시연을 하기 떄문에 그 전까지 최소한의 윤곽은 완성해야하는데, 아직 아이템도 다 구현이 안되어있어서 오늘 오후에 급하게 아이템 만들기에 돌입했다. 가장 먼저 시작한 아이템은 미사일이다. 미사일을 플레이어로부터 발사하여 범위 내에 있는 다른 플레이어를 향해 나아가고 플레이어에 명중하면 AddExplosionForce() 를 주는 방식으로 구현하고자 한다. AddForce() 함수를 쓸 때 마다 자동완성 기능 태그 목록에서 자주 보던 함수인데 처음 이름을 봤을 떄 부터 꼭 한번 써보고싶었는데 이번 기회에 아주 야무지게 써볼 것 같다.
'개발일지' 카테고리의 다른 글
[Unity] 팀 프로젝트 ACC - 9/29 (0) | 2022.09.29 |
---|---|
[Unity] 팀 프로젝트 ACC - 9/28 (0) | 2022.09.28 |
[Unity] 팀 프로젝트 ACC - 9/22 (0) | 2022.09.22 |
[Unity] 팀 프로젝트 ACC - 9/21 (0) | 2022.09.21 |
[Unity] 팀 프로젝트 ACC - 9/20 (0) | 2022.09.20 |