/AI2h ago

SpAItial AI Launches Open-Source Browser Quake III With Echo-2 Levels

312341.3K
SpAItial AI@SpAItial_AI

Photoreal walls. Real geometry. Bots. WebRTC and all open source.

Here's how built a fully multiplayer, browser-playable Quake III arena where every level is a 3D world created from a single Image using Echo-2 🧵👇

SpAItial AI@SpAItial_AI

SplatArena: Multiplayer arena is LIVE 🚀🚀🚀

Quake3-style combat. Drop in, frag your friends, and play on a world generated by Echo-2.

Play now, directly in your browser: https://arena.spaitial.io/

7:05 AM · Jun 8, 2026 · 1.4K Views
Sentiment
Sentiment building, check back later.
Cluster Engagement
Posts from X
Most Activity
Most Activity
VIEWS60
SpAItial AI@SpAItial_AI

it starts on SpAItial (http://app.spaitial.ai). Generate a 3D world from a photo/prompt → it comes out as a Gaussian Splat (.spz).

The .spz is the only input the game pipeline needs. The scene you generate is the map you play in.

2hViews 60Likes 2
LIKES2
SpAItial AI@SpAItial_AI

This was made possible by amazing open source projects:

-> @playcanvas — splat rendering + splat-transform -> @agonesdev + @kubernetesio — game-server orchestration -> Pion — WebRTC -> ioquake3 + OpenArena — engine + game data -> @NianticSpatial — SPZ -> q3js — the WASM lineage

Full credits: http://arena.spaitial.io/credits

2hViews 30Likes 2
REPLIES1
SpAItial AI@SpAItial_AI

The map builder pipeline turns the .spz into a playable level:

→ splat blob (what you see) → SuGaR Poisson mesh (what you collide with) → .map → BSP via q3map2 (structure + entities) → AAS bot-nav so bots can path → packed into a Q3 .pk3

2hViews 38Likes 2
SpAItial AI@SpAItial_AI

The rendering trick: two stacked canvases.

Back canvas = @playcanvas renders the photoreal splats (.sog, GPU sort, LOD). Front canvas is ioquake3 compiled to WASM draws players, weapons, HUD.

The BSP is invisible, as it only does collision + depth so you don't shoot through walls.

2hViews 16Likes 2
SpAItial AI@SpAItial_AI

The best part: it's all open source (GPLv2). Repo + local setup docs here 👇

https://github.com/spaitial-ai/spaitial_arena_community Build a map from your own .spz and run the whole stack locally. Point Cursor/Claude at the README and it'll walk you through setup.

2hViews 51Likes 1
SpAItial AI@SpAItial_AI

Multiplayer is WebRTC.

Signaling rides through the edge to an in-cluster proxy. Once ICE settles, media is a direct UDP DataChannel browser to game-server pod.

One game = one Agones GameServer pod (q3ded) on Kubernetes, with warm pools per region across EU + US.

2hViews 15Likes 2