게임 클라이언트 개발/MakeDNF
-
Hitbox with DNFTransform게임 클라이언트 개발/MakeDNF 2023. 12. 2. 00:28
카메라를 회전하지 않고 2.5D 좌표계를 구현함에 따라 Unity의 Collider를 사용하여 충돌 기능을 구현할 경우, 불필요한 충돌 연산을 수행한다. 예를 들어, 아래 그림과 같이 캐릭터와 파이어볼이 위치한다면, DNFTransform의 XZ평면에서 캐릭터와 파이어볼의 Collider가 서로 충돌하지 않았기 때문에 충돌 검사 로직을 수행할 필요가 없다. 하지만 캐릭터가 점프할 경우 두 Collider가 충돌하기 때문에 불필요한 충돌 연산이 수행된다. Hitbox 이를 방지하기 위해 Hitbox를 직접 구현했다. Size, Offset, Pivot 세 가지 변수를 통해 Hitbox를 설정하였다. Size : Hitbox의 크기를 설정한다. Hitbox의 모양이 Circle일 경우 Z값은 무시된다. Si..
-
2.5D 좌표계, DNFTransform게임 클라이언트 개발/MakeDNF 2023. 12. 1. 23:07
이번 글에선 유니티의 Transform 컴포넌트를 활용하여 2.5D 좌표계를 직접 구현한 DNFTransform 컴포넌트와 이를 위한 툴을 개발한 내용에 대해 작성할 것이다. 2.5D란?2.5D란 2D 이미지를 3D로 표현한 좌표계를 뜻하며, X 축, Y 축 방향만 이동가능한 2D에 가상의 Z 축을 추가하여 3D처럼 표현하는 기법이다. 던전 앤 파이터(이후 던파라고 지칭)는 이러한 기법이 적용된 횡스크롤 게임으로, 유니티로 이를 구현하기 위해선 2.5D 좌표계를 직접 구현할 필요가 있다. 오브젝트 Hierarchy를 활용해 구현한 2.5D기존 프로젝트에선 오브젝트 Hierarchy를 활용하여 DNFTransform 클래스를 구현했었다. 오브젝트 Hierarchy는 다음과 같이 구성되어 있다. XZ 평면을..
-
프로젝트를 시작하기 전에게임 클라이언트 개발/MakeDNF 2023. 11. 29. 16:13
프로젝트 깃허브 https://github.com/woghrk12/MakeDNF.git GitHub - woghrk12/MakeDNF Contribute to woghrk12/MakeDNF development by creating an account on GitHub. github.com 게임 클라이언트를 공부하면서 가장 좋아하는 게임을 개발해 보는 것은 매우 좋은 경험이라고 생각한다. 이전에 짧은 기간동안 던전 앤 파이터의 전투 시스템을 구현해보며, AABB 충돌 알고리즘도 공부해보고, 객체 지향 설계도 공부하고, 기본 공격과 4종류의 스킬을 구현해보며 약소하지만 던전 앤 파이터와 같은 조작감을 느낄 수 있었다. 다만, 게임은 개발도 중요하지만 그래픽이나 오디오 또한 매우 중요한 요소로 작용하며, 혼..