Tiny Knight Rush의 조작 약속은 단순합니다. 끌어서 이동하면 공격은 무기가 알아서 한다. 그런데 게임이 커지면서 스킬, 보호막, 궁극기, 물약, 폭탄 같은 능동 버튼이 늘었고 이 버튼들이 그 약속을 배신하기 시작했습니다. 버튼을 누르려면 조이스틱에서 엄지를 떼야 하고, 떼는 순간 캐릭터가 멈추고, 멈추면 스웜에 삼켜집니다.
문제는 배치가 아니라 손이었다
화면 구석의 버튼 배치를 이리저리 옮겨 봐도 소용없었습니다. 위치가 아니라 손의 상태가 문제였거든요. 한 손은 항상 조이스틱을 잡고 있습니다. 그러면 나머지 조작은 반대쪽 엄지가 크게 움직이지 않고 닿는 자리에, 이동을 유지한 채로 눌리게 있어야 합니다.
재설계의 결론은 역할별 분리였습니다.
- 무기와 패시브: 정보이지 버튼이 아닙니다. 상단 아이콘 바로 올려 시야에서 치웠습니다.
- 스킬, 보호막, 궁극기, 물약, 폭탄: 실제로 누르는 것들입니다. 캐릭터 초상화 둘레에
호(원형 액션 허브)로 배치했습니다. 발동하면 짧은 진동으로 눌렸다고 손에 알려 줍니다.
이동하는 손을 떼지 않고 누를 수 있게 되면서, "버튼을 누른다"가 "이동을 포기한다"와 같은 뜻이던 상태가 끝났습니다.
두 번째 손가락이 무시되고 있었다
이 구조가 성립하려면 멀티터치가 제대로 읽혀야 합니다. 여기서 실기기에서만 나오는 결함을 만났습니다. 조이스틱을 잡은 손가락이 터치 목록의 0번을 차지하고 있으면 기본 입력 경로가 반대 손의 탭을 못 집었습니다. 데스크톱 마우스로는 완벽하게 동작하니 개발 중에는 안 보이고, 폰에서 걷는 중에만 버튼이 죽는 형태입니다.
새로 닿은 손가락을 명시적으로 찾는 탭 헬퍼를 만들어 입력 지점을 전부 그쪽으로 옮겼습니다. 걷는 중의 탭이 문제였으니 검증도 걷는 중 상태로 해야 했고요.
호의 시작 각도, 주석을 믿지 말 것
원형 허브의 소모품 호는 처음에 -140도에서 시작했습니다. 코드 주석은 "이 값이면 첫 슬롯이 화면 안에 남는다"고 주장하고 있었는데, 재 보니 첫 슬롯의 왼쪽 절반이 화면 밖이었습니다. 개수 배지도 같이 잘려 있었고요. -125도로 옮겨 호 전체를 화면 안에 넣었습니다. 슬롯 간격은 그대로 둬서 버튼끼리 겹치지 않습니다.
이런 건 코드 리뷰로는 안 잡힙니다. 주석은 옛날 화면 기준으로는 참이었을 수 있고, 지금 화면에서 참인지는 스크린샷을 찍어 픽셀을 세어 봐야 압니다.
함께 정리한 것
- 허브 버튼 8개가 한 호에 겹치던 것을 2겹 링으로 분리했습니다.
- 상단 경험치 막대는 허브 링과 정보가 겹쳐서 없앴습니다.
- 3D 보스 에셋을 걷어내면서 설치 용량도 크게 줄었습니다. 보스가 도트 아트로 통일되니
결계 보스전과 맞물려 화면 언어가 오히려 일관돼졌습니다.
결과
HUD 재설계의 성공 기준은 화려함이 아니라 "이동하는 손을 떼지 않고 모든 능동 조작이 가능한가" 하나였습니다. 지금은 됩니다. 실기기 제보에서 시작해 실기기 확인으로 끝난 작업이었고, 이 게임에서 UI 작업의 기준선이 됐습니다.