WebGPU · runs entirely on your machine
MGB64
A native port of a classic 1997 N64 first-person shooter, compiled to WebGPU and running in this tab. Bring your own ROM — the site ships the engine only.
Checking your browser…
Load your ROM
Select your .z64 ROM (exactly 12 MB). It is stored
only in this browser and is never uploaded — there is
no server to receive it.
Controls
Movement
- Move
- WASD
- Look
- Mouse
- Crouch
- C
- Lean (while aiming)
- Q / E
Combat
- Fire
- Left-click / L Shift
- Aim (hold)
- Right-click / R Shift
- Reload
- R
- Use / interact
- F
- Switch weapon
- Mouse wheel
System
- Watch / pause
- Esc / Tab
- Mute audio
- M
- Help (to console)
- H
- FPS overlay
- On by default
Gamepad
Plug in an SDL-compatible controller — the browser exposes it and the engine maps it automatically. Defaults:
- Fire / Aim
- RT / LT
- Jump
- A
- Reload / Use
- B
- Next weapon
- Y
- Prev weapon
- R3 (right-stick click)
- Crouch
- L3 (left-stick click)
- Watch / pause
- Start
About this demo
This is the same engine that ships as the desktop apps, compiled to a single WebGPU/wasm binary. It runs the full solo campaign — pick a ROM and play from the first mission.
What's different from the N64 original
- Mouse-and-keyboard aiming — free-look with the mouse, instead of the original's single analog stick.
- Auto-aim assist is on by default (toggleable in the desktop launcher).
- Lights shoot out consistently — the shoot-out-lights hatch is on by default.
- A small FPS overlay sits in the top-right, on by default.
- Faithful HUD — the aim reticle appears only while aiming, exactly like the N64; there is no persistent crosshair and no minimap.
Browser & privacy
- Needs WebGPU: Chrome / Edge 113+, Safari 26+, or Firefox 141+ on Windows. There is no WebGL fallback — the page tells you up front rather than running degraded.
- Your ROM stays in your browser's Origin-Private File System; it is never uploaded. Forget stored ROM deletes that copy immediately.
- Saves auto-persist to IndexedDB every few seconds and when the tab closes — no manual save needed.