mirror of
https://github.com/RHeavenStudio/HeavenStudio.git
synced 2025-06-12 21:37:40 +02:00
Beatmap Sections & Latency Reduction (#170)
* prep UI for chart section
* all special layers now on one area
todo: have buttons toggle between special layers (selection mode shows all?), use the tabs system for this
* swapping between special timelines - prelim
* special entities can be placed
* spec. timeline base functions complete
music volume changes should work now
* attempt at input lag reduction
needs testing
* fix dsp issues
* smaller DSP buffer?
* Revert "smaller DSP buffer?"
This reverts commit 9d36db5ff9
.
* make conductor clock use real time (double)
change order of execution of input-related scripts to further attempt a reduction in input latency
* start values can be changed
make the old special entity bar visible when the corresponding type is selected
* creation of Chart Sections (TODO: GO REFERENCE)
* added GO references
* section edit dialog
* disable wrapping on chart section obj
* backspace can now delete entities
* entities don't shift when duplicated
* fix PlayerActionEvent order of operations
- fixed remix loading trying to clear special timeline while it's writing to itself
* make oop check match parity
* more operation order fix
* fix Karate Man BG initialization
* show section progress in editor
todo: section progress in-game
* more fix for entity duping
This commit is contained in:
@ -31,6 +31,8 @@ namespace HeavenStudio
|
||||
// Current time of the song
|
||||
private float time;
|
||||
|
||||
double lastAbsTime;
|
||||
|
||||
// an AudioSource attached to this GameObject that will play the music.
|
||||
public AudioSource musicSource;
|
||||
|
||||
@ -140,6 +142,7 @@ namespace HeavenStudio
|
||||
musicSource.PlayScheduled(AudioSettings.dspTime);
|
||||
}
|
||||
}
|
||||
lastAbsTime = Time.realtimeSinceStartupAsDouble;
|
||||
|
||||
// GameManager.instance.SetCurrentEventToClosest(songPositionInBeats);
|
||||
}
|
||||
@ -172,7 +175,9 @@ namespace HeavenStudio
|
||||
|
||||
if (isPlaying)
|
||||
{
|
||||
var dt = Time.unscaledDeltaTime * musicSource.pitch;
|
||||
double absTime = Time.realtimeSinceStartupAsDouble;
|
||||
float dt = (float) (absTime - lastAbsTime) * musicSource.pitch;
|
||||
lastAbsTime = absTime;
|
||||
|
||||
time += dt;
|
||||
|
||||
@ -344,7 +349,7 @@ namespace HeavenStudio
|
||||
secPerBeat = 60f / songBpm;
|
||||
}
|
||||
|
||||
public void SetVolume(int percent)
|
||||
public void SetVolume(float percent)
|
||||
{
|
||||
musicSource.volume = percent / 100f;
|
||||
}
|
||||
|
Reference in New Issue
Block a user