Experimental VRM Avatar support
You can now use your own VRM 0.x / VRM 1.0 model for the in-game AVATAR rider. In the launcher, choose Advanced > Avatar model > Browse, select a .vrm or binary .glb, then start the game and select AVATAR followed by Gear. AVATAR must already be available in your save; selecting a model does not unlock it.
- One remembered model setting follows either local player who selects AVATAR, with independent poses. Camera motion input is optional; controllers and keyboard controls also work.
- Main humanoid animation follows the game's evaluated clips, including root motion, jumping and stance reflection.
- Render the model with the scene's viewport and depth instead of adding it after the finished frame. This corrects Loading placement and lets subsequent HUD drawing remain in front.
- Use VRM hand positions for held items while retaining the game's item behavior.
- Support double-sided and unlit materials, texture colour handling, and model selection on Windows, Linux and Android. Ordinary GLBs without VRM humanoid mappings remain static.
- Include updated English/Traditional Chinese README instructions and a
VRM-Avatar.mdguide in desktop archives and the Android licences ZIP.
The Avatar body-type fix from PR #15 and the VRM integration in PR #19 are included. Camera motion input and the shader/D3D12 fixes from v0.2.1 are retained.
Downloads and updating
| Download | Support |
|---|---|
| Windows x64 ZIP | Windows 10/11; D3D12 or Vulkan; Camera motion runtime/models included |
| Linux x64 tar.gz | Vulkan; Camera motion is not enabled in this prebuilt package |
| Android arm64 APK | Android 9+; Vulkan; Camera motion is not enabled |
Extract the complete desktop archive into a fresh folder. Keep the bundled shaders.pack; on Windows also retain D3D12/, shader-tools/, pose/ and the DLLs. You can copy your existing settings.ini and save/ into the new desktop folder. If a model path no longer resolves, choose the file again. Model changes apply on the next game launch; Clear disables the model.
Android is 0.3.0, version code 9, signed with the same certificate as v0.2.1 for in-place updates. Its document picker imports a local model copy into app-specific storage. SHA256SUMS.txt covers all four downloads.
Validation and current limitations
- Release PR CI: Windows, Linux, macOS build checks and Android launcher checks passed.
- Local native tests: 110/110 Windows, 104/104 Linux passed. Python tooling: 238 tests, successful with 11 skipped.
- D3D12/Vulkan GPU regression checks cover viewport/scissor, shared and reversed depth, later overlays and multiple independent poses in one frame.
- Windows extracted archive tested outside the checkout through AVATAR Loading and racing for 15,000 presents per backend, using isolated saves/caches and scripted input with audio disabled. Screenshots inspected; held-item transforms observed. The prior development build also completed 15,500-present runs on both backends.
- Linux extracted archive reached 180 presents under WSL Vulkan. Android native libraries rebuilt; APK version, alignment and signing-certificate continuity verified.
- All downloads contain the same validated ABI 8 shader pack: 476 DXIL and 476 SPIR-V shaders. Camera dependencies match their pinned hashes. No personal model, settings or save is included.
VRM remains experimental: no full MToon shading, transparent blending, spring bones, facial expressions or finger animation. Poses and item grips can vary by model; high-detail models can reduce performance. The actual results screen, full two-player VRM gameplay and physical Linux/Android VRM gameplay need more testing. Device-specific issues reported in #16 and #17 remain open; this release does not claim to fix every slowdown or crash.
This is a preview. You need your own USA/Europe Sonic Free Riders disc image; the launcher installs its data. No disc assets are included.