GTA Skate 3 Trilogy
Skate 3 skating in the GTA trilogy, built on the re3/reVC rewrites and the Skate 3 Rust engine.
A Skate 3 Rust Engine fork with real-time path tracing (Bevy Solari ReSTIR DI/GI) and DLSS Ray Reconstruction.
Skate 3 Rust Engine fork: real-time path tracing (Bevy Solari ReSTIR DI/GI) with DLSS Ray Reconstruction See the README below for details.

A Rust and Bevy skating project built from Skate 3 reverse-engineering research. Includes skating, tricks, grinds, offboard movement, difficulty settings and .skate map support. Gameplay parity is still a work in progress.
This fork replaces the lighting of the retail renderer with real-time path tracing, built on Bevy Solari and NVIDIA DLSS:
shading normal, roughness and emission to a deferred G-buffer (crates/skate-game/src/rtx_world_gbuffer.wgsl). Baked lightmaps, shadow maps and the fixed sun term are no longer used for opaque surfaces.
materials (signs and lamps) and the map's point and spot lights. Shadows are traced rays.
multi-bounce diffuse light. Glossy reflections are traced paths. Rays that leave the scene see a clear sky, added by a small patch in vendor/bevy_solari.
upscales it to the output resolution in a single pass, using the newest model (preset F, "RR2", from the DLSS 310.9.1 runtime).
speed. A sun and moon follow it, the sky is Bevy's physical atmosphere (blue noon, orange sunset, moonlit night), and exposure adapts. Output uses Bevy's filmic tonemapper instead of the retail tone curve.
from the diffuse texture's luminance and roughness from its local detail, so flat, smooth surfaces pick up glossy traced reflections.
Performance, Ultra Performance, or Off (undenoised path tracing).
small copy of each surface's texture, and foliage and fences cast shadows through their holes (Escape > Graphics > Foliage shadows turns this off).
exported by setup are drawn, ray traced and solid (static collision from their render triangles). The converted maps contain no sea surface, so a glossy water plane is added 1 m below the map's lowest point (SKATE_SEA_LEVEL overrides it).
on the CPU into a ray-tracing proxy, so they cast traced shadows and appear in reflections.
The ray-traced scene is in crates/skate-game/src/rtx.rs. GPUs without hardware ray queries fall back to the original raster renderer. Set SKATE_RTX=0 to force that fallback.
Frame generation is not included. DLSS Frame Generation requires NVIDIA Streamline to take over the swapchain, and the Bevy/wgpu DLSS integration (dlss_wgpu) supports only Super Resolution and Ray Reconstruction. On RTX 40 and 50 series GPUs, driver-level frame generation (NVIDIA Smooth Motion in the NVIDIA App) can be used instead, where the driver supports it for this game.
Known limits: cutout and alpha-blended materials (foliage, fences, water) are not in the ray-traced scene, so they cast no traced shadows. Blended surfaces still use their baked lighting. Secondary hits use each material's average albedo, not its texture.
In addition to the requirements under Build: an NVIDIA RTX GPU, the LunarG Vulkan SDK (VULKAN_SDK set) and LLVM (for libclang). BUILD.bat downloads the NVIDIA DLSS SDK v310.4.0 (the version dlss_wgpu 2.0 binds) into .local/DLSS unless DLSS_SDK is already set. It also downloads the v310.9.1 runtime into .local/DLSS-runtime unless DLSS_RUNTIME is set, and copies its nvngx_dlss.dll and nvngx_dlssd.dll beside the executable: newer runtimes keep the 310.4 interface and add the models the game requests. Their use is subject to the NVIDIA DLSS SDK license.
Download Experimental. Successful main builds replace this prerelease. Choose Latest in Updates for experimental updates; Stable is the default.
Extract the Windows release ZIP and run skate3rust.exe. Select your Skate 3 Xbox 360 ISO, or select default.xex in an extracted game folder. Keep its data folder alongside it. Setup prepares the skater, animations and all disc maps, then starts University. The original scoring and session-marker HUD assets are also exported automatically during setup. No Blender, Python or Rust installation is needed. ISO extraction needs internet access. The first conversion can take a while.
Use an XInput controller to play. Escape opens graphics, difficulty and map settings. Maps can be switched without restarting the game.
Skate 3 assets are not included. Your converted files stay in the data folder beside your executable. Each freshly unpacked copy runs its own setup; it does not adopt another installation. In-place updates refresh only changed asset groups.
Requires Windows, Rust with the MSVC toolchain, and LLVM installed in its default location. Run BUILD.bat to build, then PLAY.bat to launch the test world. PLAY.bat opens your saved map (University by default); use the in-game menu to switch maps, or drag a .skate file onto PLAY.bat. An XInput controller is required for gameplay; Escape opens difficulty and graphics settings.
Development builds use a prepared asset set in assets/private/ or the installed asset directory. scripts/Build-Release.ps1 builds the portable Windows package and requires Python 3.13. GitHub Actions builds main automatically; numbered releases are published separately.
Custom animations and climbing support remain available, but no custom clips are shipped. The included format-demo map is original procedural content.
Implementation notes are in docs/. Patched Bevy dependencies and their licenses are in vendor/. This is an unofficial project, not affiliated with EA.
Windows builds support opt-in performance timeline capture through the --trace CLI option, including optional GPU pass diagnostics.
From the project's repository, fetched . Images load from GitHub.
No releases yet. Follow the project to hear when the first one comes out.
Did it work on your PC? A quick report tells other players which versions are safe to try.
Built on Skate 3 Rust Engine.
Skate 3 skating in the GTA trilogy, built on the re3/reVC rewrites and the Skate 3 Rust engine.
Jimmy skating in Bully with the Skate 3 Rust rewrite. Controller support, rigging and Edit Skater. Your own game files required.
Skate 3 gameplay inside GTA: San Andreas v1.0.
The Skate 3 Rust/Bevy engine running on the web (WebGPU) with a clean-room asset pack: every texture regenerated, no retail pixels.
The Skate 3 Rust engine on Meta Quest 3 in passthrough AR: a miniature skater in your room.
No posts yet. Ask a question, share your setup or post a clip.
Sign in to post