Repository navigation
Changes
This release is mostly contributions from knuckleslee. Thank you!
- Pause a race with a gesture (#103, #104):
- Hold the Kinect's Pause Gesture for 3 seconds: right arm down, left arm out and down at about 45 degrees, facing the sensor.
- On a Kinect v2, hold up the Stop Sign: an open hand in front of your face, palm towards the sensor.
- A gauge in the lower left shows the progress.
SFR_PAUSE_GESTURE=0turns it off.
- Steadier menu cursor for motion input (#100): a hand held still on a button no longer wanders.
- Motion input > Menu cursor steadying sets how far it may wander before the cursor moves (0–30 mm, default 8; 0 turns it off).
- Impossible limb points from the webcam's pose model are held instead of followed.
- Frame rate in the window title (Windows, #101): for example
[FPS 59.8 | 16.7/41.0 ms] [Kinect 30] [Vulkan 100%]. Performance > Performance in the window title turns it off. - Adjustment windows for the Kinect troubleshooter and Kinect Guide (#102): when the game asks for them, the Kinect preview opens over the game's sensor. With a webcam, a window opens with zoom, exposure and gain instead, kept per camera.
- Choose the save folder (#99): Game files > Save folder in the launcher. It defaults to
savebeside the launcher, as before.
Changes made in review (#106):
- The Pause Gesture now requires facing the sensor, because a race is ridden side-on and a leading arm forward and down looked like the pose.
- Its gauge drains four times as fast as it fills, so a pose matched now and then never adds up.
- Each Kinect player charges their own gauge.
- A pause can no longer press a button inside the pause menu.
- Adjustment windows reopened quickly can no longer hang the game.
- Untracked Kinect hands no longer pull the menu cursor.
Validation
- Unit tests:
- CTest passed on Windows (150) and Linux (142), and the Python tests (335) passed.
- New tests: a side-on riding stance, a pose held part of the time and an inferred hand are not pauses; untracked Kinect hands and returning players start over.
- GitHub Actions builds passed (Windows, Linux, macOS, Android).
- Windows package: completed race checks on D3D12 and Vulkan, every pipeline prepared, the save left unchanged, and no pause gesture triggered while racing.
- Linux package: passed a Vulkan startup smoke test in WSL (all 455 pipelines prepared).
- This release's Android 10+ APK on an AYN Thor: all 455 Vulkan pipelines prepared, a race completed without errors at 59.4 fps without frame metrics.
- Real Kinect hardware: the contributor played the features on real hardware before the review changes; they have not been played on a Kinect here since. Reports are welcome.
- Android: the APKs keep the existing signing certificate.
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: 40. The companion licence archive applies to both APKs.
- Checksums:
SHA256SUMS.txt.
Use your own game disc image. No game data, private saves or test overrides are included.
Known limitations
- Pause gestures: if a race pauses when you didn't mean it to, set
SFR_PAUSE_GESTURE=0and please tell us your stance. - Window title statistics: Windows only.
- Physical Kinect input: Windows only.
- Online play: everyone should use the same version; tested on a home network with up to three players.
- Being investigated: the start-up crash on Vulkan 1.1 phones (Issue #88); a crash at start on a Galaxy Tab A9 (Mali-G57, Issue #1); a race crash on 4-core PCs (Issue #64).
- Relay Race: 2P vs 2P is not supported yet.
- From v0.5.0: lighting has not been compared with the Xbox 360; no camera motion inference on Linux or Android; performance varies by device.