어제는 노트 속도 설정하는 걸 구현했고
오늘은 오프셋 설정하는 걸 구현했습니다
그냥 버튼을 눌러서 설정할 수도 있고, 자동 설정으로 직접 박자에 맞춰 눌러가지고 설정할 수도 있죠
이전 속도 설정 만들 때까지만 해도 시간 관련한건 FixedUpdate에서 처리하려고 했는데, 이게 오늘 오프셋 설정 만들때 보니까 연산이 조금만 많아져도 렉이 체감이 될 정도로 꽤나 걸리더라고요.
특히 저 click 버튼 누를 때 멈춤 현상이 일어나고 그때 FixedUpdate 실행 횟수가 누락이라고 해야되나? 실행이 안되는건지 느려지는건지 해서 시간 측정이 잘못되더라고요.
void Update()
{
if (isAuto)
{
time += Time.deltaTime;
if (time >= beat * 4)
{
time -= beat * 4;
check++;
}
if (check >= 4)
{
offset = (int)(((checkTime[0] + checkTime[1] + checkTime[2] + checkTime[3]) / 4.0));
offsetText.text = offset.ToString() + "ms";
isAuto = false;
autoUI.SetActive(false);
}
}
}
그래서 결국 그냥 별짓 안하고 평범하게 Update랑 델타타임 쓰기로 했습니다
어차피 지금은 프로토 단계니까 벌써부터 레이턴시 같은거 신경쓰다간 진도를 못뺄것같기도 하고, 결국 플레이 "감" 을 보려고 하는거니까 약간의 판정오차는 일단은 그냥 두려는 거죠
저 beat 값은 한 박자의 시간(초단위) 값을 담아놓은 변수입니다
체크 한번당 4박(둥 둥 탁 (쉬고))을 사용하니까 현재 시간값(time)과 비교할 때 beat에 4를 곱해서 비교한 것이죠
그리고 체크를 총 4번 하니까 거기에 따라서 check 변수 갱신을 해주고있고요
표기는 막 소숫점 붙는거 더러워서 ms 단위로 표기되게 짜놨습니다
(라고 하지만 사실 FixedUpdate를 사용했을때 ms 단위를 사용해서 시간 계산을 했었던지라 그 코드 그대로 수정해서 쓰느라....ㅎ)
이제 옵션세팅은 다 됬으니 다음은 이제 노트 생성이 되겠네요
노트 생성 만들고 그 노트 처리하는 기능만 만들면 이제 끝나지 않을까 싶습니다
굳이 추가한다면 스코어 정도?
오늘은 여기서 끗
'플밍' 카테고리의 다른 글
리듬겜 프로토 제작일기 - 5 (0) | 2020.08.21 |
---|---|
리듬겜 프로토 제작일기 - 4 (0) | 2020.08.19 |
리듬겜 프로토 제작일기 - 2 (0) | 2020.08.17 |
리듬겜 프로토 제작일기 - 1 (0) | 2020.08.16 |
언리얼 책 떼기 - AI컨트롤러, 네비게이션 맛보기 (0) | 2019.12.23 |