PocketJS for 3D worlds

One 3D core, from desktop GPUs to 2004 silicon.

Pocket3D cooks a scene once and renders it through wgpu on desktop, sceGu on the PSP, GXM on the Vita and OpenGL ES on a 2011 Nokia. Same bundle, same frames.

Cooked, then streamed

BSP worlds ship as cooked .p3d paks with visibility baked in. Big documents stream: a real Figma file becomes CLUT8 tile pyramids the device pans and zooms at 60 fps without ever parsing the source. Figma at 333 MHz →

Motion that fits the budget

A painter-sorted pipeline keeps overdraw predictable on fixed-function hardware and renders identically on modern GPUs, so a desktop preview is the console frame.

Characters included

A VRM digital human with morph targets and spring-bone physics runs as one native process at 118 MB, where the Electron equivalent needs 2.2 GB. One process, whole character →

Pocket Voxel's town rendered as a voxel diorama with gabled roofs and a player character on the path.

Pocket Voxel's town: a creature-RPG as a walking voxel diorama on a PSP.