Releases: coldcue/reVC
Release list
reVC for Mac — Native Metal build (Apple Silicon)
Play GTA Vice City natively on your Mac. This is a native Apple Silicon build that renders through Metal, runs sharp at full Retina resolution, and is optimized for macOS — Game Mode turns on automatically while you play. One command turns your own copy of the game — Steam, retail disc, or files from an old PC — into a ready-to-play reVC.app. No administrator password needed.
Install
You need: an Apple Silicon Mac (M1 or newer) on macOS 15.7.9 or later, and your own copy of GTA Vice City (Steam works out of the box — you never have to launch it).
-
Open Terminal (
Cmd+Space, typeTerminal, press Enter) and install the Xcode Command Line Tools (skip this if you already have them — it will just tell you so):xcode-select --install
If a dialog appears, click Install and wait for it to finish.
-
Paste this line and press Enter:
curl -fsSL https://github.com/coldcue/reVC/releases/download/revc-metal-macos-arm64/quick-install.sh | bashIt finds your game files automatically (Steam copy or an already-installed reVC.app) and puts reVC.app in your Downloads folder — about a minute, the app is ~1.6 GB with the game inside.
-
When Finder opens, drag reVC into Applications — or just double-click it to play right away.
Using a non-Steam copy? Add the path to the end of the command — a game folder (the one with models, data, audio, …) or a Vice City .app that contains the files both work:
curl -fsSL https://github.com/coldcue/reVC/releases/download/revc-metal-macos-arm64/quick-install.sh | bash -s -- ~/Downloads/"Grand Theft Auto - Vice City.app"Upgrading? Run the same one-liner again — it reuses the game files from your installed reVC.app.
Prefer a classic disk image? Add --dmg to get a drag-to-Applications reVC.dmg instead: ... | bash -s -- --dmg.
What's changed in this port
Everything below is on top of upstream reVC (the miami branch), which itself is the reversed Vice City source. The goal is a faithful native Mac experience — original gameplay and look, modern rendering underneath.
Rendering: OpenGL → Metal
- librw's GL3 renderer now runs through ANGLE (OpenGL ES on Metal) on macOS, so every draw call ends up on Metal — no OpenGL deprecation warnings, no Rosetta, native arm64 all the way down. The ANGLE dylibs ship inside the app (and as a separate prebuilt archive below).
- HDR rendering (new in-game Display option): the swap chain uses a float16 EDR surface in the Display P3 colorspace via a small ANGLE patch, so highlights like sun glare, headlights, and neon get real extended-range brightness on XDR/HDR displays.
- MetalFX upscaling (new in-game Graphics option, on by default at Balanced): the game renders at a lower internal resolution and Apple's MetalFX upscales it to your display resolution at present time — big GPU savings at Retina resolutions. Five presets right under the Screen Resolution selector: Quality and Balanced (the default) use the spatial scaler at 85%/75% render scale, while Performance, Max Performance, and Ultra Performance use the temporal scaler at 67%/50%/33% — jittered, motion-compensated multi-frame reconstruction that stays close to native sharpness from a fraction of the pixels (Ultra needs a GPU with 3x scaling support and falls back to 50% otherwise) — or turn it off for native rendering. 4x MSAA is on by default to keep spatial-upscaled edges clean; the temporal presets do their own anti-aliasing and switch MSAA off automatically. MSAA is now a regular menu option instead of being forced internally — change the level in the Advanced tab. Like HDR and Screen Resolution, the MetalFX preset is applied from the main menu before loading a save — the option is shown greyed out in the in-game pause menu, because applying it rebuilds the renderer.
Graphics quality
- Textures are now mipmapped with trilinear and anisotropic filtering (plus fixes to librw's mipmap generation), which kills the shimmering on distant roads and buildings.
- Extended draw distance for the map while keeping the stock fog look, and vehicles now fade in smoothly at every detail level instead of popping.
- Better defaults: PS2 alpha test (cleaner transparency edges) now starts on — and stays on after "restore defaults" — while the Neo world lightmaps option starts off.
macOS integration
- reVC ships as a self-contained
reVC.appbundle: binary, dylibs, and reVC's game data inside, ad-hoc signed — so macOS treats it as a real game and enables Game Mode automatically. - The game always starts windowed and then enters native macOS fullscreen, so Spaces, Mission Control, and Cmd+Tab behave like they should.
- A one-line installer script finds your game files (an existing reVC.app or Steam install auto-detected, or any folder or Vice City .app you point it at), bakes them into the app, and can also produce a drag-to-install DMG — so upgrades re-run the same one-liner without needing the original game around.
- Update notification: an installed reVC.app checks this release page on launch and, when a newer build is out, offers Install (quits the game and runs the one-line updater in Terminal, reusing your existing game files) or Ignore. The check is silent when you're offline or already up to date.
- Advanced graphics tab: the Graphics menu keeps the essentials (resolution, HDR, MetalFX, widescreen, frame limiter) and moves the rest — MSAA, windowed/fullscreen, VSync, island loading, PS2 alpha test, colour filter, motion blur, and the Neo pipeline options — to a new Advanced sub-page, which also adds a Metal performance HUD toggle (the same overlay as the
-metalhudlaunch flag).
Fixes
- Mouse input randomly not being detected — the infamous Vice City mouse bug — is fixed in the GLFW backend.
- HUD and camera misaligned on HiDPI/Retina displays right after launch (cropped, off-center view; radar and mission text pushed toward the screen edges) — fixed by seeding the first camera resize from the real framebuffer size. Thanks to @KreamBrulee for the report and fix (#1).
- First launch now defaults to your display's actual pixel resolution (e.g. 3840x2160 on a 4K screen) instead of the scaled macOS desktop size.
- Multi-display setups: the game now opens on the screen you launch it from instead of always on the primary display.
- The mouse cursor can no longer leave the game in fullscreen: menus keep the cursor captured (like exclusive fullscreen always did), so it can't wander onto another display, reveal the Dock, or click you out of the game — and it now reaches the whole screen with MetalFX on instead of stopping at two thirds.
- Applying graphics settings no longer crashes or leaves an oversized window: switching resolution, HDR, or the MetalFX preset re-creates the renderer, and the game now reliably drops out of and back into native fullscreen around that instead of crashing or ending up larger than the screen.