Changes
- Cheaper drawn frames (#176). About a hundred of the course's draws each frame index vertices spread far over their vertex buffer.
- Before: the renderer copied out the vertices each draw used, byte-swapped them and converted their normals on the CPU every frame, about 2.9 MB.
- Now: the whole vertex buffer stays on the GPU, as long as the game doesn't change it, and those draws use it with their indices.
- Effect: on an AYN Thor with the main thread held to a slower core, a drawn race frame costs about 15% less, and the race skips far fewer frames. On Windows our part of the drawing went from about 3.0 to 1.7 ms a frame.
- Switch: Test options › Graphics › Keep whole vertex streams turns it off.
Everything else is the same as v0.10.28.
Validation
- AYN Thor (Adreno), this release's APK:
- Dolphin Resort at full speed (0.999, 60 fps).
- With the game's helpers held to the little cores: 0.994 of real time, with 2,975 skipped frames against 4,126 in v0.10.28.
- Races with the new path on and off, screenshotted at the same moment of the race, draw the course the same.
- Tilt to kick on: full speed.
- Windows x64 package, Vulkan, with the validation layer: a whole race, no validation errors, all 455 pipelines. D3D12 and Vulkan screenshots compared before release.
- macOS (M1) package: a whole Dolphin Resort race at full speed.
- Unit tests: 171 passed on Linux. GitHub Actions builds and tests passed on Windows, Linux, macOS and Android.
- Not tested: Mali, Xclipse and Intel GPUs. If the course looks wrong on yours, turn the switch off and tell us.
Downloads
- Windows x64: download and extract the Windows ZIP; run
FreeRidersRecompiled.exe. - Linux x64: download and extract the Linux archive; run
FreeRidersRecompiled. - Android 10 or later: prefer
android10-arm64.apk. - Android 9: use
android-arm64.apk. - Android version code: 77. The companion licence archive applies to both APKs.
- macOS (Apple Silicon): download and extract the macOS ZIP; open
FreeRidersRecompiled.app(right-click › Open the first time). - iOS:
ios-arm64.ipa, to install with your own sideloading tool. - Online server:
docker pull ghcr.io/yuutatsubasa/free-riders-server:0.10.29 - Checksums:
SHA256SUMS.txt.
Use your own game disc image. No game data, private saves or test overrides are included.
Known limitations
The same as v0.10.6.