[Unreal Engine] 에이밍 시스템 구현하기 (C++)
에이밍 시스템 구현 TPS 게임에서 에이밍 시스템 구현을 다뤄본다. TPS 게임에서 플레이어는 보통 크로스헤어에 총알이 피격되길 기대한다. 이를 위해서는 두 번의 선분과 물체의 충돌 검사를 진행해야 한다. 직관적으로 생각했을 때는 크로스 헤어에서부터 물체까지 한 번의 충돌 검사일 것 같지만 왜 두 번의 충돌 검사가 필요한지 이 글에서 다룬다. 첫 번째 충돌 검사 먼저 화면 2D상의 좌표인 크로스헤어 텍스처 좌표에서 우리가 바라보는 3차원 깊은 방향으로 선분을 그어 물체와 충돌 여부를 파악해야 한다. 즉, 카메라에서 정면으로 레이저를 쏴서 피격되는 곳에 총알이 피격되길 플레이어는 기대한다. 이를 그림으로 표현하면 다음과 같다. 이를 위해서는 먼저 2D상의 크로스 헤어의 좌표를 3D 공간상의 좌표로 계산해야..