Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unspecified case of BPM <= 0 #3

Open
zardoru opened this issue Jan 23, 2016 · 3 comments
Open

Unspecified case of BPM <= 0 #3

zardoru opened this issue Jan 23, 2016 · 3 comments

Comments

@zardoru
Copy link

zardoru commented Jan 23, 2016

The standard does not explain how the case of bpm <= 0 should be dealt with.
I believe the case should be that:

  • BPM < 0: Backwards scroll.
  • BPM = 0: Invalid BPM.

Opinions?

@DolphinDTM
Copy link

I agree with the propositions here and I feel like this belongs in the technical specification to make sure we don't end up with several implementations.

@dtinth
Copy link
Member

dtinth commented Apr 25, 2017

I agree.

Should we process negative BPMs like StepMania?

More info here: http://vsrg.club/forum/showthread.php?tid=178

I think LR2 also processes negative BPMs similarly: https://hitkey.nekokan.dyndns.info/exbpm-object.htm

@zardoru
Copy link
Author

zardoru commented Apr 25, 2017

I don't think a negative BPM should skip over notes (or beats). A warps section should be the one to do that, so to keep future implementations simple (and that a measure + fraction -> time transformation yields a vaild time) a note in a negative section could be placed towards the opposite side. Looking at how stepmania would do it, would be to take an integration over BPS then setting global position to translation/beat * current beat and note position to measure + fraction.

On the other hand (what I propose) is to set position based on time, and integrate position to time (using speed / time instead of speed / beat)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants