app.hypergames.hypersdk 1.11.0-beta.15 → 1.11.0-beta.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
# [1.11.0-beta.16](https://github.com/mvmhyper/hyper-sdk/compare/v1.11.0-beta.15...v1.11.0-beta.16) (2026-08-31)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **replay:** show seek preparation progress ([60213f7](https://github.com/mvmhyper/hyper-sdk/commit/60213f784c5bff39da4634590545fe4d0e4c0911))
|
|
7
|
+
|
|
1
8
|
# [1.11.0-beta.15](https://github.com/mvmhyper/hyper-sdk/compare/v1.11.0-beta.14...v1.11.0-beta.15) (2026-08-31)
|
|
2
9
|
|
|
3
10
|
|
|
@@ -21,6 +21,8 @@ namespace Hyper.Internal
|
|
|
21
21
|
[SerializeField] private float[] playbackSpeeds = { 1.5f, 2f, 3f, 4f, 5f, 1f };
|
|
22
22
|
[SerializeField, Min(1f)] private float seekPlaybackSpeed = 10f;
|
|
23
23
|
[SerializeField, Range(0.25f, 1f)] private float seekSnapshotScale = 0.55f;
|
|
24
|
+
[SerializeField, Range(0f, 0.5f)] private float seekPreparationProgress = 0.2f;
|
|
25
|
+
[SerializeField, Min(0.1f)] private float seekPreparationDuration = 1f;
|
|
24
26
|
[SerializeField] private GameObject seekLoadingOverlay;
|
|
25
27
|
[SerializeField] private RawImage seekSnapshotImage;
|
|
26
28
|
|
|
@@ -33,6 +35,7 @@ namespace Hyper.Internal
|
|
|
33
35
|
private Image seekOverlayBackground;
|
|
34
36
|
private Color seekOverlayBackgroundColor;
|
|
35
37
|
private ReplaySeekOverlay seekOverlay;
|
|
38
|
+
private static float displayedSeekProgress;
|
|
36
39
|
|
|
37
40
|
private void Awake()
|
|
38
41
|
{
|
|
@@ -195,6 +198,7 @@ namespace Hyper.Internal
|
|
|
195
198
|
|
|
196
199
|
float resumeSpeed = SanitizePlaybackSpeed(ReplaySessionState.UserPlaybackSpeed);
|
|
197
200
|
float fastForwardSpeed = SanitizePlaybackSpeed(seekPlaybackSpeed);
|
|
201
|
+
displayedSeekProgress = 0f;
|
|
198
202
|
StartCoroutine(CaptureAndSeek(targetProgress, resumeSpeed, fastForwardSpeed));
|
|
199
203
|
}
|
|
200
204
|
|
|
@@ -420,17 +424,32 @@ namespace Hyper.Internal
|
|
|
420
424
|
{
|
|
421
425
|
if (seekOverlay == null) return;
|
|
422
426
|
|
|
423
|
-
float progress
|
|
427
|
+
float progress;
|
|
424
428
|
if (!isSeeking)
|
|
425
429
|
{
|
|
426
430
|
progress = 1f;
|
|
427
431
|
}
|
|
428
|
-
else if (
|
|
432
|
+
else if (isCapturingSeek || ReplaySessionState.IsSeekRestartPending)
|
|
433
|
+
{
|
|
434
|
+
float duration = Mathf.Max(0.1f, seekPreparationDuration);
|
|
435
|
+
displayedSeekProgress = Mathf.MoveTowards(
|
|
436
|
+
displayedSeekProgress,
|
|
437
|
+
seekPreparationProgress,
|
|
438
|
+
seekPreparationProgress * Time.unscaledDeltaTime / duration);
|
|
439
|
+
progress = displayedSeekProgress;
|
|
440
|
+
}
|
|
441
|
+
else
|
|
429
442
|
{
|
|
430
443
|
float target = ReplaySessionState.SeekTarget01;
|
|
431
|
-
|
|
444
|
+
float reconstructionProgress = target <= Mathf.Epsilon
|
|
432
445
|
? 1f
|
|
433
446
|
: ReplaySessionState.Progress01 / target;
|
|
447
|
+
float realProgress = Mathf.Lerp(
|
|
448
|
+
seekPreparationProgress,
|
|
449
|
+
1f,
|
|
450
|
+
Mathf.Clamp01(reconstructionProgress));
|
|
451
|
+
displayedSeekProgress = Mathf.Max(displayedSeekProgress, realProgress);
|
|
452
|
+
progress = displayedSeekProgress;
|
|
434
453
|
}
|
|
435
454
|
|
|
436
455
|
seekOverlay.SetProgress(progress);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "app.hypergames.hypersdk",
|
|
3
|
-
"version": "1.11.0-beta.
|
|
3
|
+
"version": "1.11.0-beta.16",
|
|
4
4
|
"displayName": "HyperSDK",
|
|
5
5
|
"description": "Official Unity SDK for Hyper: multiplayer battles, leaderboards, deterministic RNG, session management, tutorials, and WebGL optimizations for production-ready games.",
|
|
6
6
|
"unity": "6000.0",
|