f12c7c9603cc43cf2709a423658226d27bdea011
Co-authored-by: Heaust Azure <heaust.azure@gmail.com> Amp-Thread-ID: https://ampcode.com/threads/T-01a01380-b478-77d0-84a0-102880a5c5ae
Yawn
Yawn Core is two things: a generic structure-of-arrays arena in a SharedArrayBuffer, and a render-graph worker that turns externally supplied WGSL into an up-front WebGPU loadout.
JSO or FXNode → AST → S-expression → graph worker → WebGPU
↑
any thread → direct shared row writes ┘
Messages allocate { name, rows, stride, format } arrays and load graphs. Existing render data is changed by writing f32, u32, or i32 rows directly. Allocations are 64-byte aligned, row strides are multiples of 16 bytes, and compatible non-overlapping transient textures share physical allocations.
WGSL, pipelines, glTF import, and conventional mesh/camera/material handles live in addons/; core contains no shader or scene model.
npm start
This opens the docs. The complete runnable example is at /playground.
Description
a blazing fast gpu rendering core for high performance or resource constrained web applications
528 MiB
Languages
TypeScript
53.9%
Rust
41%
JavaScript
4.7%
Shell
0.4%