Games, 3D & AR/VR — interactive / real-time rendering
draftedconfidence: lowearly: 1/12 of this tier graded so far (0 overturned) — the public scorecard →
recommendation
2D / interactive visuals → react-native-skia. Declarative 3D inside a normal app → react-three-fiber (+expo-gl). Real game engine → embed Godot (react-native-godot). AR/VR → ReactVision. RN suits supplemental/interactive experiences more than AAA games.
- simple 2D game loop → react-native-game-engine
- 3D / compute shaders → WebGPU (react-native-wgpu), advanced
- 3D product views / scenes in an app → @react-three/fiber + expo-gl (no engine needed)
- mobile AR or cross-platform VR incl. Meta Quest → ReactVision (@reactvision/react-viro; New Arch required)
- Apple Vision Pro app → react-native-visionos (Callstack fork; check its RN-version lag first)
Low confidence — fast-moving or lightly-vetted domain: treat the pick as a vetted lead and prototype before committing.
Options & tradeoffs
| option | tradeoff | evidence |
|---|---|---|
| react-native-skia | GPU 2D drawing loop; common base for RN games/visuals | |
| react-native-godot (@borndotcom) | embed the Godot engine (RTNGodotView; by Born & Migeran); runs off-thread (separate from RN's JS thread) | |
| WebGPU (react-native-webgpu, formerly react-native-wgpu) | 3D render pipelines on Google's Dawn (by William Candillon, not Software Mansion); UI-thread via Reanimated/worklets; advanced | 19k/wk |
| react-native-game-engine | entity-component loop for simple 2D games; effectively unmaintained (last release v1.2.0, 2020) | 2k/wk |
| @react-three/fiber (three.js) | declarative 3D scenes as React components; v9 runs in RN via expo-gl — the 3D-in-an-app path without a game engine | |
| ReactVision (@reactvision/react-viro) | AR/VR from one RN codebase (iPhone/Android AR + Meta Quest) — the maintained fork of react-viro; New Architecture (Fabric) REQUIRED; active (2.57.x, 2026-07) | 3k/wk |
| react-native-visionos (Callstack) | full RN fork targeting Apple Vision Pro / visionOS SDK (~1.1k★); CAUTION: pinned to RN 0.78 (2025-03), lags core by ~a year — verify parity before betting |
npm weekly downloads (from the corpus's last signals run): @reactvision/react-viro 3k · @react-three/fiber 3.5M · @borndotcom/react-native-godot 646 · react-native-wgpu 19k · react-native-game-engine 2k
Verified notes
Niche; RN suits supplemental/interactive experiences more than AAA games. AR/VR + 3D options added 2026-07-09 (gap flagged by Native Weekly #15's ReactVision feature, promoted on user's call): ReactVision is the maintained Viro lineage (verified vs npm — Fabric required, published 2026-07); react-native-visionos verified vs the Callstack repo (latest v0.78.0, 2025-03 — the version-lag caveat is the load-bearing fact); react-three-fiber v9 verified vs npm. FIRST-PARTY QUEST (2026-07-10, verified vs the official RN blog): React Native now supports Meta Quest / Horizon OS directly via the `expo-horizon-core` config plugin, with Expo Go on the Horizon Store — a first-party 2D-panel path beside ReactVision's immersive AR/VR.
Canonical reading
Editorial annotations on why each piece matters — the articles themselves are the originals; read them there.
The foundational architecture of react-native-skia: JSI for direct C++/JS communication, a custom React reconciler powering the declarative API, and Reanimated-driven animation. The enduring design under RN's 2D GPU drawing — the base for RN games and interactive visuals.
Sources
- github.com/wcandillon/react-native-webgpu
- registry.npmjs.org/@borndotcom/react-native-godot
- registry.npmjs.org/@reactvision/react-viro/latest
- github.com/callstack/react-native-visionos
- reactnative.dev/blog/2026/02/24/react-native-comes…
Depth (in-domain rules) is owned by the react-native-best-practices skill — this entry is selection breadth.
Related in platform-native: native · media · storage · native-ui · keyboard · payments · brownfield · alt-frameworks