make conductor clock use real time (double)

change order of execution of input-related scripts to further attempt a reduction in input latency
This commit is contained in:
minenice55 2022-09-12 18:13:05 -04:00
parent d487fec527
commit 18897abc0d
4 changed files with 9 additions and 4 deletions

View file

@ -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;

View file

@ -4,7 +4,7 @@ MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: -43
executionOrder: -44
icon: {instanceID: 0}
userData:
assetBundleName:

View file

@ -4,7 +4,7 @@ MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
executionOrder: -43
icon: {instanceID: 0}
userData:
assetBundleName:

View file

@ -4,7 +4,7 @@ MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
executionOrder: -42
icon: {instanceID: 0}
userData:
assetBundleName: