This preference existed in previous versions of StepMania (3.95, at least) and is needed to properly emulate certain games (namely, In The Groove).
This PR brings back the code as seen here: https://github.com/sigatrev/Stepmania-3.95/blob/4af304c51aeeedacd07f612d7f0e5ecaa81cce19/LifeMeterBar.cpp#L228-L233
Unlike in SM3.95, however, I've now set the default value to be 5, the same as the RegenComboAfterMiss. If players don't change the value, they won't see any difference in behavior in SM5.
If players want, they can manually set the preference to 10 (or a value of their choosing) to emulate the game of their choice.
The global offset is a correction for audio latency, which is measured
in wall-clock time, but TimingData elapsed time values represent offsets
into the sound file. To get the offset in the sound file that
corresponds to the wall-clock time of the global offset, we have to
multiply by the music rate.
There is no need for an extra program.
As a bonus, generate a consistent windows vdi file.
There is still an issue with actually *reading* the vdi, but that's for someone else to tackle.
The biggest obstacle right now deals with FFMPEG. I insist on being able to utilize the git clone/submodule (5_1_0) section. I'm just struggling with the commands.
As part of this commit, some linux files are restored in the compilation chain. This is for consistency with the old Makefile approach.
Assistance will be needed at this point to complete MinGW support.
This expands on #777 to work with jconfig.h properly.
To facilitate these operations, a new macro was added for doing compile tests.
Note that this commit does NOT bring in the other files associated with this version of libjpeg.
At some point, it would be desirable to automatically get the files as part of the cmake configuration step, similar to ffmpeg.
This removes the need for an externally built library, thus officially removing the deprecated Xbox projects.
Other minimal changes were made to ensure consistency. Comments will be made in the PR.
Thanks to @Prcuvu for the initial push.
This attempts to organize all needed items and places appropriate defines
in a single location. Redundant comparisons/defines were removed when noticed.
A few caveats, however:
* This may be better targeted towards the 5_1_0 branch instead of master right now.
* Cmake will run a little slower on configuration/generation now. That's due to the sanity checks it runs.
* There are some more checks to be added later, but this should be a solid start.
Thanks to the [libical](https://github.com/libical/libical) project for inspiration.