v0.4.4 Preview - Android real-time racing
Pre-releaseAndroid racing at real-time speed
Android races now use elapsed time for the known simulation clock instead of slowing down whenever rendering misses 60 FPS. On AYN Thor (Android 13, Adreno 740), the tested Android 10+ build completed a race at approximately 23–24 FPS, with 64.85 game seconds in 64.79 real seconds. Steering, crouching, kick dash and pause/resume were verified, and the user confirmed racing feels playable.
Intro movies still play slowly. This is a preview, not a promise of 60 FPS or identical results on every device. The latest build has not yet been re-tested on Pocket S2 Pro.
- Let Android worker threads use available CPU cores instead of pinning a busy worker to a little core.
- Reduce repeated guest memory checks, thread-local lookups, register helper and index-conversion work.
- Support Vulkan GPUs without
shaderInt64using exact pairs of 32-bit words for GPU addresses. - Avoid an unused Xbox Live presence update reading a race object during construction. Offline profiles and gameplay remain enabled.
- Add a release-history section to the README.
Downloads and upgrading
| Download | Use |
|---|---|
android10-arm64.apk |
Recommended on Android 10+; native TLS |
android-arm64.apk |
Android 9+ compatibility build; emulated TLS |
android-arm64-licenses.zip |
License notices for either APK |
windows-x64.zip |
Windows Vulkan / D3D12, including the Agility runtime and webcam dependencies |
linux-x64.tar.gz |
Linux Vulkan |
Both APKs use version 0.4.4, version code 14, and the existing signing certificate. Install over the existing app to retain data; uninstalling is unnecessary. No game data, personal settings, saves or models are included.
Shader pack ABI is now 10. Keep this release's executable, shaders.pack and pipeline manifests together; do not reuse an older shader pack. Existing incompatible pipeline recipes are rejected and the bundled recipes rebuild for the current device/driver. Extract desktop releases into a fresh folder, retaining your settings and saves as needed.
Windows/Linux retain their previous race-timing behavior. D3D12 shader bytecode is unchanged. Android 9 compatibility is build-checked without an Android 9 device. Existing platform limitations for Kinect, camera inference, two-player play and VRM still apply.
Validation
-
Final PR CI passed Windows, Linux, macOS and Android build/test jobs.
-
Local regression suites: 130 Windows C++ tests, 123 Linux C++ tests, and 267 Python tests (11 skipped). The two corrected test fixtures also passed focused re-runs.
-
All 476 Vulkan shaders compiled and passed SPIR-V validation without Int64 capability; exact address arithmetic was checked against 4,000,856 reference cases. Original D3D12 bytecode is unchanged.
-
Extracted Windows package passed Vulkan and D3D12 startup and preparation of every bundled pipeline. Extracted Linux package passed Vulkan startup under WSL; this is not a native Linux hardware performance benchmark.
-
Both Android APKs passed metadata, signature, 16 KB alignment and asset checks. Android 10+ native libraries and assets are byte-identical to the device-tested normal build. No shell profiling permission or validation layer is shipped.
-
Code review found no blocking issues.
You need your own USA/Europe Sonic Free Riders disc image.