Dean Herbert
cc8b838bd4
Add comprehensive log output to help figure out problematic clocks
2024-02-29 23:05:28 +08:00
Mike Will
012d6b7fe1
Change userBeatmapOffsetClock
to a FramedOffsetClock
...
Assuming that the global audio offset is set perfectly, such that
any audio latency is fully accounted for, if a specific beatmap
still sounds out of sync, that would no longer be a latency issue.
Instead, it would indicate a misalignment between the beatmap's
track and time codes, the correction for which should be a
virtual-time offset, not a real-time offset.
2024-02-19 09:14:49 -05:00
Dean Herbert
8ab8c90e33
Remove "pause rate adjust" flow
2024-01-18 14:21:02 +09:00
Dean Herbert
f8455af0d0
Fix double interpolation being applied when applyOffsets=false
2023-10-05 13:20:52 +09:00
Dean Herbert
d019cb5167
Update in line with framed clock changes
2023-09-22 22:02:18 +09:00
Dean Herbert
6629a47ed3
Fix FramedBeatmapClock
's source not being processed
2023-09-22 16:22:35 +09:00
Dean Herbert
bf08fbe196
Set source directly in FramedBeatmapClock
ctor
...
This isn't required, but avoids creating a temporary `StopwatchClock`
and generally just makes debug easier with less state changes.
2023-09-22 16:22:35 +09:00
Dean Herbert
0200b63fd3
Add note about beatmap offset not being reapplied correctly on ChangeSource
2023-09-22 14:41:07 +09:00
Dean Herbert
a451ab75dd
Remove hopefully-unnecessary workaround
...
It was causing issues with the new implementation.
2023-09-22 14:41:05 +09:00
Dean Herbert
df08c4e1ad
Disable decoupling for OsuGameBase
's beatmap implementation
...
This avoids it ever mutating the underlying track (aka attempting to start
it). Resolves the one caveat mentioned in
aeef92fa710648d4a00edc523e13c17ac6104125.
2023-09-22 12:49:25 +09:00
Dean Herbert
5f634f2812
Remove unnecessary encapsulation workaround
...
The new implementation of `DecouplingClock` will not mutate the
underlying clock in any way (unless attempting to start it when
approaching from a negative time value).
This should be quite safe as a result.
2023-09-22 12:49:25 +09:00
Dean Herbert
21a2e27e5f
Simplify some pieces of FramedBeatmapClock
2023-09-22 12:49:25 +09:00
Dean Herbert
04e6ec8715
Fix interpolation not being applied when applyOffsets
is set
2023-09-22 12:49:25 +09:00
Dean Herbert
117cd74af6
Update usage of DecoupleableInterpolatingFramedClock
in FramedBeatmapClock
2023-09-22 12:49:25 +09:00
Dean Herbert
600651795b
Change FramedBeatmapClock
to always be decoupled
2023-09-22 12:49:25 +09:00
Dean Herbert
bf984388b3
Update clocks in line with framework changes
2023-09-20 21:17:08 +09:00
Dean Herbert
75c1d5ad7f
Add lenience to FramedBeatmapClock
workaround
2023-08-02 18:49:24 +09:00
Dean Herbert
2e98ab0a48
Expose rewinding state of IGameplayClock
s
...
The implementation of this requires a bit of a special case
for 0, so makes sense to implement in a central place.
2023-07-06 19:08:42 +09:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Dean Herbert
d6748d6921
Avoid double call to ProcessFrame
2022-09-09 14:35:47 +09:00
Dean Herbert
64cf6b9014
Compare with decoupled clock directly to avoid including offsets
2022-09-09 14:35:35 +09:00
Dean Herbert
20ffbc4676
Fix beat sync stopping after returning to menu from a failed play
...
Closes #20193 .
Explanation is inline comment.
2022-09-09 14:13:03 +09:00
Dean Herbert
2dafa041a7
Account for offset being applied to editor clock time in TestSceneEditorClock
2022-08-29 16:42:50 +09:00
Dean Herbert
29fed0c4a3
Avoid setting the source clock until gameplay is ready to start
...
Without this change, the audio track may audibly seek during load
proceedings.
2022-08-23 18:34:17 +09:00
Dean Herbert
17a1df281c
Fix incorrect implicit null specification for user audio offset bindable
2022-08-22 14:03:51 +09:00
Dean Herbert
ba23ce75c2
Make FramedBeatmapClock.Track
non-null
2022-08-22 14:02:41 +09:00
Dean Herbert
85d0b7fc57
Reword class xmldoc to better explain that offset application is optional
2022-08-22 14:02:20 +09:00
Dean Herbert
bcc153f738
Add xmldoc and reorganise FramedBeatmapClock
2022-08-18 18:54:10 +09:00
Dean Herbert
6003afafc7
Use FramedBeatmapClock
in GameplayClockContainer
2022-08-18 18:54:10 +09:00
Dean Herbert
32e127a6fa
Add FramedBeatmapClock
...
Expose `IsCoupled` in `FramedBeatmapClock` for now to provide editor compatibility
2022-08-18 18:54:10 +09:00