Skip to content

v0.4.0 — no shader stutter, faster renderer, ultrawide screens

Choose a tag to compare

@Mortify7612 Mortify7612 released this 16 Oct 17:36

A faster renderer, no more shader stutter, and ultrawide screens filled edge to edge.

No game data is included. You need your own copy of RalliSport Challenge 2 (Xbox, NTSC). Put its files (the folder with default.xbe, Layer0, Layer1, Media, Movies, …) in a game folder next to the program.

Package Start with Needs
rsc2-v0.4.0-linux-x86_64.tar.gz ./run.sh Up-to-date Arch-based distribution (built on CachyOS): glibc 2.43+, SDL2, vulkan-icd-loader, glslang 16, spirv-tools, libepoxy, openssl 3; a Vulkan 1.3 GPU
rsc2-v0.4.0-windows-x64.zip rsc2.exe Windows 10/11 x64 with a Vulkan 1.3 GPU driver; nothing else

The binaries contain the code translated from the game's executable, built in. They are meant for owners of the game. On other Linux distributions, or to build it yourself, see the README.

New since v0.3.0

  • No shader stutter. Shaders and their GPU pipelines are now built in the background. Until one is ready, the object is drawn another way, so the game never stops to wait for it. Every pipeline the game uses is remembered, and later starts prepare them all while the intro plays. On a cold cache a race load used to freeze for about 1.6 s in total; now there are no stalls at all from the second start.

  • Faster. Much less CPU work per frame:

    • vertex data is read once;
    • long runs of GPU commands are handled in one go;
    • a per-frame wait for the previous frame's shadow map is gone.

    The same race replay at 1× went from about 260 to about 350–375 fps on a Ryzen 9950X.

  • Ultrawide screens. With the launcher's aspect ratio set to 16:9, the picture now fills screens wider than 16:9 in fullscreen. The 3D view is widened rather than stretched, the edges show more of the stage, and the HUD keeps its shape. 16:9 screens look exactly as before. RECOMP_WIDE_FILL=0 keeps the 16:9 picture; RECOMP_VIEW_ASPECT=<width/height> forces a shape.

  • The FPS counter (F3) sits a little further in from the corner.

The source tree now also builds for 64-bit ARM Linux and Android. An Android version runs at around 60–75 fps in races on a Snapdragon 8 Gen 3, but it isn't packaged yet: loading the game files onto a phone still needs developer tools. See rsc2/android/README.md to build it yourself.

Known issues

  • The Windows build has been tested under Wine only so far; reports from real Windows are welcome.
  • A profile saved by the Linux build may show as "Unable to load" on Windows.
  • The Xbox audio DSP is not emulated. The reverb uses the game's parameters but is not the original DSP program (#5).
  • The very first time an effect appears (before its shader is ready), it can be drawn slightly differently for a moment.
  • All open issues

Checksums are in SHA256SUMS.txt.