Show HN: Zephyr3D – TypeScript WebGPU/WebGL 3D engine with an in‑browser editor

zephyr3d.org

1 points by gavinyork 3 hours ago

Hi HN,

I’ve been working on Zephyr3D, an open-source 3D rendering engine for the modern web, plus a visual editor that runs entirely in the browser.

- Written in TypeScript - Supports WebGL/WebGL2/WebGPU - Comes with a visual editor that runs in the browser (no installation required)

With the recent updates, a few things might be interesting to people here:

Engine & rendering ------------------

- WebGL/WebGPU abstraction with a TypeScript API - PBR rendering - Cluster lighting & Shadow Maps - Clipmap-based terrain for large landscapes - Sky Atmosphere & Height-based fog - FFT water system - Temporal anti-aliasing (TAA) - Screen-space motion blur

The goal is to make it possible to build reasonably complex 3D experiences that run directly in the browser, without native dependencies.

In-browser editor -----------------

The editor is a web app built on top of the engine and runs completely in the browser. It currently supports:

- Project management - Scene editing - Node-based material blueprints - Animation editing - Script binding and a scheduling system - Prefabs for reusing entities across scenes - Preview and one-click publishing to the web

All project data is handled via a virtual file system (VFS) that can plug into different backends (in-memory, IndexedDB, HTTP, ZIP, DataTransfer, etc.), so saving/loading works entirely on the client side.

Links -----

Homepage: https://zephyr3d.org Editor (runs in the browser): https://zephyr3d.org/editor/ GitHub: https://github.com/gavinyork/zephyr3d

I'd love feedback on:

- How the in-browser editor workflow feels (performance, UX, what’s missing) - Whether the VFS approach for project data makes sense for real projects - Any red flags you see in the engine architecture or WebGPU/WebGL abstraction - What would be deal-breakers or must-have features for using this in games, data viz, or other interactive web experiences

I’ll be around to answer questions and can go into more detail about the rendering pipeline, the editor internals, or anything else you’re curious about.