cd /news/ai-agents/i-wrote-a-windows-runtime-from-scrat… Β· home β€Ί topics β€Ί ai-agents β€Ί article
[ARTICLE Β· art-155214] src=github.com β†— pub= topic=ai-agents verified=true sentiment=↑ positive

I wrote a Windows runtime from scratch to run PC VR games on Apple Silicon

Developer Ag3497120 released VeRantyx for Mac 0.2.0 on October 22, a from-scratch Windows runtime for Apple silicon that runs PC VR games such as Half-Life: Alyx and Elite Dangerous without Wine or CrossOver and streams them to Apple Vision Pro or ALVR headsets. Version 0.2.0 adds Elite Dangerous playable on the Mac's screen or in a headset with keyboard, mouse and a PS5 DualSense, fixes ALVR Wi-Fi socket buffers at 4 MB to end 270-800 ms frame delay spikes, and takes first Vulkan steps in the project's own vulkan-1.dll; Elite Dangerous runs at 30-35 fps at 1700Γ—1372 per eye in the headset and about 60 fps flat on an M1 Max. The project is built to be extended with coding agents such as Claude Code, Codex, Gemini CLI or Cursor via a /vxrt-support command, and requires users to own their own game copies, with no anti-cheat worked around.

read7 min views3 publishedOct 22, 2026
I wrote a Windows runtime from scratch to run PC VR games on Apple Silicon
Image: Michielbdejong (auto-discovered)

Half-Life: Alyx and Elite Dangerous on Apple Vision Pro, from just a Mac. No gaming PC, no Wine, no CrossOver.

Windows PC VR games run on our own Windows runtime, written from scratch for Apple silicon, and stream to Vision Pro or an ALVR headset. Some also play on the Mac's own screen.

<sub>Half-Life: Alyx, Windows build, on a MacBook Pro M1 Max, no Wine. 3K preset, played in Vision Pro with hands + Joy-Con. Full 4-minute unedited recording.</sub> New in 0.2.0 (Oct 22): Elite Dangerous, on the Mac's screen or in the headset, with keyboard, mouse and a

PS5 DualSense. Download VeRantyx for Mac β†’ Want your game to run? Ask your AI assistant. VeRantyx is built to be extended with Claude Code, Codex, Gemini CLI or Cursor: run /vxrt-support <your game> in this repository and the agent measures the game, finds what stops it and implements the missing Windows functions, with the test harness checking every claim

(AGENTS.md). Send what you get as a pull request or a report. You need your own copy of each game. Nothing from Valve, Microsoft or any game is in this repository or its releases: games and SteamVR come from your own Steam account. No anti-cheat is ever worked around.

[Get started](#get-started) Β·
  [What runs](#what-runs) Β·
  [Updates](#updates) Β·
  [Under the hood](#under-the-hood) Β·
  [Branches](#branches) Β·
  [ζ—₯本θͺž](https://github.com/Ag3497120/VeRantyx/blob/main/docs/README_ja.md)
Date What changed
Oct 22 VeRantyx for Mac 0.2.0 : Elite Dangerous with two buttons,On this Mac andHeadset ; the Mac shows its frame rate while you play
Oct 22 The Lab: controllers work (any headset): SteamVR now sees The Lab's controller bindings (a Windows pipe call answered wrongly, #2)
Oct 22 ALVR over Wi-Fi: socket buffers fixed at 4 MB, which ended 270-800 ms frame delay spikes (#4); a new headset's first connection no longer shows double vision (#2, #4)
Oct 22 Vulkan, first steps in our ownvulkan-1.dll : a Windows program draws with depth test, culling, uniform buffers and push constants, and presents to a window. Next: what real games need (No Man's Sky, X-Plane 12)
Oct 22 Elite Dangerous: PS5 DualSense in game; plays flat on the Mac's screen (about 60 fps in game, M1 Max)
Oct 21 Elite Dangerous reaches the headset: official launcher (WPF on our own .NET runtime), sign-in, game, SteamVR (30-35 fps at 1700Γ—1372 per eye)
Oct 18 VeRantyx for Mac 0.1.0 : setup and play without Terminal, signed and notarized, 11 languages
Oct 18 Direct3D 12 steps 1-5: DXIL read without LLVM, translated to Metal, compute, graphics and swap chains
Oct 17 The Lab runs on our own x86-64 β†’ ARM64 translator (the path that replaces Rosetta 2), 52-56 fps
Oct 12 VXRuntime, the Windows runtime, starts from scratch

The fastest way to grow the list of games and headsets is your report, whether it works or not: Report a game or headset β†’ (in the app: Help > Report a problem; it attaches the logs with your user name and Steam ID taken out). Quest and Pico are tested by players only so far.

  1. Download VeRantyx for Mac β€” signed and notarized by Apple. Drag it to Applications. The runtime is inside: you need only macOS and Steam.
  2. Get started in the app: it checks the Mac, gets SteamVR and your games' Windows builds withyour own Steam account (or copies them from a Steam library you already have), and gathers the Microsoft runtime files from their own installers.
  3. Pick your headset and press Play.

That's it. Details, languages (11) and what is checked: MacApp/README.md. Prefer Terminal? scripts/setup_vxrt.sh then scripts/launch_vxrt_alyx.sh β€” see the vxrt guide.

Game Status on VXRuntime Measured
Half-Life: Alyx βœ… Playable β€” played in the headset across level changes and saves 60 fps at the 3K preset (1440Γ—1620 per eye), MacBook Pro M1 Max
Google Earth VR 🟑 Runs in VR, playtest pending 56.7 fps, M1 Max
Elite Dangerous 🟑 Flies on the Mac's screen and in the headset (official launcher; keyboard, mouse, DualSense) flat: about 52-122 fps in game; VR: 30-35 fps at 1700Γ—1372 per eye; M1 Max, Low
The Lab 🟑 Runs in VR (title scene), playtest pending; its controller bindings load since 0.2.0 54.0 fps, M1 Max
Other SteamVR games βšͺ Most still need Windows functions VXRuntime lacks games/ has what is known

Checked on a MacBook Pro M1 Max and a MacBook Air M5. Numbers come from harness runs with their run ids in games/. Not supported: Direct3D 12 games (in progress, below), Vulkan, tessellation, anti-cheat (never worked around).

Headset How Status
Apple Vision Pro (M2 or M5) VeRantyx app: hand tracking + Joy-Con, or bare hands β€” no VR controllers needed βœ… Checked
Apple Vision Pro "ALVR" app from the App Store βœ… Checked (Alyx, Earth VR)
Meta Quest, Pico ALVR 20.x, Wi-Fi or USB cable ❔ Not tested yet β€” we'd love a report

Everything below is in this repository, MIT licensed, and was written for this project.

  • VXRuntime β€” a Windows runtime written from scratch for Apple silicon. No Wine, no wineserver: a PE and the Windows API (kernel32, exceptions, files and registry, windows on AppKit, COM, audio on Core Audio) as native code that Windows programs call directly.VXRuntime/
  • Direct3D 11 β†’ Metal in one step. Our own DXBC β†’ Metal Shading Language translator; geometry shaders and stream output run as compute. Alyx went from ~30 fps under Wine (DXVK β†’ MoltenVK) to 60 fps on the same Mac.
  • Direct3D 12 β†’ Metal, from scratch (early). A DXIL reader with no LLVM, a DXIL β†’ MSL translator andd3d12.dll on Metal: compute, root signatures, descriptor heaps, graphics pipelines, draws, swap chains, heaps, placed resources and GPU queries pass their tests. No D3D12 game runs yet.
  • The real Windows SteamVR on the Mac. vrserver and vrcompositor run on VXRuntime with our driver; textures cross processes as IOSurfaces. Games talk to theMac Steam client through a bridge β€” no Windows Steam, no Chromium.
  • HEVC streaming. VideoToolbox HEVC (10-bit at the 3K preset) to our visionOS app, each frame at the exact pose and frustum it was rendered for β€” or through ALVR's own streaming core to ALVR clients, over Wi-Fi or a USB cable.
  • A notarized SwiftUI Mac app that does the whole setup without Terminal, in 11 languages.
  • Our own x86-64 β†’ ARM64 translator (in progress) for when Rosetta 2 goes away: Google Earth VR has run on it; not used for games by default.TRANSLATOR.md
  • Built for AI coding agents./vxrt-support <game> and/vxrt-tune <game> in Claude Code, Codex, Gemini CLI and Cursor; a harness that measures runs into evidence (observed values with file hashes, sealed in a hash-chained ledger); an MCP server;Command Clips to operate Windows programs without screenshots.AGENTS.md
Branch What it is For Status
main = vxrt Windows games + real SteamVR on VXRuntime Players (via the app) and developers ⭐ Current, developed daily β€” full guide
native Valve's Linux ARM64 Alyx runs natively on macOS (patched Klepton + our OpenVR runtime) Alyx only; the fastest path, no CPU translation Kept as of 2026-10-11
wine Windows build + real SteamVR under Wine 11 , DXVK β†’ MoltenVK Reference / history Kept as of 2026-10-10, ~30 fps

All Mac-side versions share the HEVC encoder (MacEncoder/) and the Vision Pro app ( VisionProClient/).

No Valve, Microsoft or game files are in this repository or its releases. SteamVR and the games come from your own Steam account; Microsoft's runtime DLLs are taken from the redistributable installers your own installs carry, on your Mac only. Licenses: THIRD_PARTY_NOTICES.md. Not affiliated with Valve, Apple, Microsoft, Meta, Nintendo, Sony, ALVR, Glovebox or Klepton.

Help wanted: a Quest or Pico report (works or not), and game profiles with harness runs as evidence (games/README.md). MIT Β© 2026 Ag3497120.

── more in #ai-agents 4 stories Β· sorted by recency
── more on @verantyx 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/i-wrote-a-windows-ru…] indexed:0 read:7min 2026-10-22 Β· β€”