오늘은 레이싱의 꽃 드리프트를 만들었다. 이 드리프트 기능을 구현하기까지 많은 구글링과 유튜브를 찾느라 오랜 기간이 걸렸다.
찾은 자료들은 모두 따로 키입력을 받아 드리프트를 하는 것이 아닌 방향키로 일정 각도이상이 되면 드리프트가 작동이 되는 방식이였다. 그래서 난 드리프트 키입력을 추가하고 키입력을 받으면 평소보다 더 잘 꺽기는 방식으로 개발하였다
오늘은 드디어 오랜 시간 저를 괴롭혔던 레이싱 게임의 '드리프트' 기능을 완성했습니다.
드리프트 기능을 구현하기 위해 수많은 구글링과 유튜브 영상을 찾아 헤매었지만,
찾은 자료들은 대부분 '방향키를 일정 각도 이상 꺾으면 자동으로 드리프트가 발동되는 방식'이여서 제가 생각한 의도와 달랐습니다.
카트라이더나 마리오카트처럼 '플레이어가 원하는 순간에, 원하는 만큼 드리프트 제어를 할 수 있다면 좋지 않을까?'
이런 생각에 사로잡혀 결국 플레이어가 제어하는 방식으로 드리프트를 개발해보기로 결심했습니다.
고민의 흔적: 키 입력 드리프트 vs. 자동 드리프트
찾은 자료의 방식은 '방향키만으로 드리프트' 하는 거였죠. 즉, 차가 회전하는 각도가 특정 기준을 넘으면 드리프트가 시작되는 방식입니다. 이 방식은 자연스러워 보이지만, 원하는 타이밍에 칼같이 드리프트를 넣기엔 좀 애매했죠.
그래서 저는 드리프트 전용 키를 하나 추가하여 평소에는 일반적인 주행을 하다가, 드리프트 키를 누르면 평소보다 핸들이 더 과감하게 꺾이도록 로직을 구현했습니다.
단순히 핸들만 많이 꺾이는 게 아니라, 드리프트 키를 누르고 있는 동안에는 차량의 마찰력을 조절하고, 속도가 너무 줄지 않게 만들면서 미끄러지듯 나아가는 느낌을 구현하는 데 집중했습니다. 정말 온갖 변수들을 바꿔가며 테스트를 반복하였고, 이 과정에서 버그도 많이 발생했습니다.
덕분에 이제 플레이어가 원하는 코너에서, 원하는 만큼 멋지게 드리프트를 구사할 수 있게 되었습니다
마치며
만드는데 오랜 시간이 걸렸지만 그만큼 원하는 결과물을 얻게 되어서 뿌듯하였다.
앞으로 계획으로는 자동차 튜닝기능을 구현하여 플레이어들이 자신만의 자동차 성능을 만들어 플레이 할 수 있게 할 것 입니다.
'Unity > DashDrift' 카테고리의 다른 글
| [Unity] 3D 아케이드 레이싱 게임 개발기 -1 (0) | 2025.09.10 |
|---|