WebGL viewer

Scene graph, culling, and a binary draw-command stream computed in Zig/wasm; the bridge replays it on WebGPU when available, with a WebGL2 fallback.

  • two canvases driven by ONE stateful chunk (the 0x1000 rule)
  • WebGPU-first renderer, WebGL2 fallback — same draw-command stream
  • vmesh + prefiltered .venv assets fetched via gl_load
  • Cook-Torrance PBR under image-based lighting

Guide: WebGL

verve.gl

Rotating unlit cube — scene graph, culling state, and a binary draw-command stream all computed in Zig/wasm; JS is a dumb interpreter over linear memory — WebGPU when available, WebGL2 fallback.

Unlit cube

Asset pipeline — PBR + image-based lighting

vmesh + prefiltered .venv fetched via gl_load; readers parse views; Cook-Torrance PBR under image-based lighting with direct lights.