osu!의 BPM과 offset이란?
타이밍은 모든 beatmap의 바탕이 되는 보이지 않는 그리드예요. 어떻게 작동하는지 알아볼게요.
BPM — 분당 비트 수
BPM은 곡의 박동 속도, 즉 1분 동안 지나가는 비트 수예요. 120 BPM 곡은 500 ms마다, 180 BPM 곡은 약 333 ms마다 비트가 있어요. osu!에서 BPM은 타이밍 그리드, 즉 노트가 놓일 수 있는 순간들의 집합을 정해요. 노트는 비트와 비트의 분할(1/2, 1/4 등) 위에 배치되기 때문에 타이밍이 정확한 채보는 음악에 딱 맞물린 느낌이 들어요.
Offset — 1번째 비트가 시작되는 위치
offset은 오디오 파일 시작부터 첫 비트가 오는 지점까지의 시간(밀리초)이에요. 곡이 정확히 비트에서 시작하는 경우는 드물고, 보통 짧은 무음이나 조용한 인트로가 먼저 나와요. BPM은 그리드 선 사이의 간격을, offset은 그리드가 시작되는 위치를 알려 줘요.
타이밍이 채보의 완성도를 좌우하는 이유
리듬 게임의 모든 것은 그리드가 정확하다는 전제 위에 있어요. BPM이 틀리면 노트가 점점 박자에서 밀려나요 — 처음엔 괜찮다가 1분쯤 지나면 플레이가 불가능해져요. offset이 틀리면 모든 노트가 똑같은 만큼 빠르거나 늦어서, 아무리 잘 쳐도 정확도가 무너져요. mapper들은 노트를 하나 놓기도 전에 타이밍을 맞추는 데 상당한 공을 들이고, 템포가 바뀌는 곡은 타이밍 포인트가 여러 개 필요해요.
곡의 BPM을 찾는 방법
- 검색하기: "<곡 이름> BPM"으로 검색하세요 — songbpm.com이나 tunebat.com 같은 사이트에 발매된 곡 대부분이 있어요. 반속처럼 느껴지면 값을 두 배로 하세요 (70 vs 140).
- 직접 탭하기: "tap BPM" 사이트(예: taptempo.io)에서 약 15초 동안 박자에 맞춰 탭하세요.
- osu! 에디터: 곡을 osu!에 넣고 에디터 → Timing을 열어 탭하거나 BPM 추정 기능을 사용하세요. offset도 바로 알 수 있어요.
DanceGAI에서도 이걸 해야 하나요?
아니요. DanceGAI는 곡으로 osu! mania 채보를 생성할 때 BPM과 offset을 자동으로 감지해요 — 곡을 업로드하든 osu! beatmap 링크에서 가져오든, AI가 노트를 배치하기 전에 타이밍 그리드를 스스로 찾기 때문에 따로 입력할 건 없어요. 그래도 위 개념은 알아 둘 가치가 있어요. 생성된 것이든 손으로 만든 것이든, 어떤 beatmap에서든 타이밍 문제를 알아차리고 설명할 때 필요하니까요.