내일배움캠프 79일차 TIL
오늘은 주말동안 진행한 유저 테스트 피드백의 내용을 토대로 디버깅 및 기능 수정을 진행했다.
디버깅 및 유저 테스트 피드백 반영
원거리 무기 조준 메커니즘 개선
- 기존 방식 : 총 60도의 조준각, 마우스 커서가 조준각을 넘어가면 정면으로 투사체 발사
- 개선 후 : 조준각 90도로 상향 및 마우스 커서가 최대 조준범위를 넘어가면 최대값의 조준각으로 투사체를 발사하도록 변경, 발사되는 각도에 따라 투사체 회전
플레이어가 맵 콜라이더 사이에 끼이는 현상 개선
- 기존에 Raycast를 활용하여 콜라이더끼리 충돌하기 전에 충돌을 미리 감지하여 속도를 줄여서 충돌 연산이 일어나기 전에 플레이어가 지형 콜라이더를 지나가는 현상을 방지하는 방식 그대로 사용하되, 알고리즘을 더 개선했다.
- 기존 방식 : 플레이어의 속도 방향으로 Ray를 쏘는 방식. 간혹 대각선으로 Ray를 쏴서 지형을 빗나가면 충돌을 미리 인식하지 못해서 속도를 줄이지 않고 충돌하여 연산이 정상적으로 이루어지지 않아 플레이어가 지형 콜라이더를 뚫고 지나가는 현상이 발생했다.
- 개선 후 : 플레이어의 속도 방향 그대로 Ray를 쏘는 것이 아닌, x값과 y값 중 절대값이 더 큰 방향으로 Ray를 쏘는 방식을 도입. 이전과 달리 Ray가 지형을 만나지 않고 지나가는 현상이 적어졌다. Raycast 사용 알고리즘을 수정한 뒤에도 끼임 현상이 발생하는 부분은 맵의 타일맵 콜라이더를 제거하고 EdgeCollider를 도입하여 플레이어가 끼이지 않도록 처리했다.
맵의 가시성 개선
- 미니맵 기능을 도입하여 유저가 더 넓은 시야를 확보할 수 있도록 개선했다.
- 메인 카메라의 자식으로 카메라 오브젝트를 하나 생성하고, 플레이어와 지형 레이어만 인식하도록 Culling Mask를 설정한 뒤 Output Render Texture를 생성하고 UI 상의 Rawimage로서 보여지게 하면 간단히 지형과 플레이어의 위치를 보여주는 미니맵을 구현할 수 있다.
아이템 장착 과정의 어려움과 인터페이스 개선
- 장비 슬롯이 비어있을 시 아이템을 획득하자마자 바로 착용하도록 변경
- 아이템 핫스왑 기능 추가