Extensible Scalable 3D - Describing three-dimensional web scenes by parameters: the ES3D format and its reference implementation
Year: 2026
Type: preprint
Abstract: Let us start by looking at the web today. 3D (three-dimensional) content is formatted as tessellated triangles as standard. The exporter creates fixed geometry, and raising quality or adding copies of an object substantially increases file size, which is suitable for 3D printing or professional rendering, but hardly necessary for websites. As long as the design looks nearly identical, e.g. each difference is less than a pixel, the render is satisfactory. This paper is an early introduction to ES3D (Extensible Scalable 3D), a declarative scene format that is inspired by the 2D SVG (Scalable Vector Graphics) format. The ES3D file format uses SVG-style paths such as extrude, revolve, swept and involute gears, repetition and seeded procedural placement stored as parameters and the file is converted into triangular mesh on the client’s side. The level of detail is a chordal-error bound, meaning a renderer draws the roughest mesh that fits within one pixel, whilst procedural placement is identical between devices, so each client sees an identical instance. This paper sets out to define the format, its syntaxes and reference implementations. This includes a JavaScript reader which uses WebAssembly kernels, WebGPU and WebGL2 renderers, and a persistent geometry cache. Across nine benchmark scenes with identical triangles, in the six procedural scenes beyond a single cube, minified ES3D documents of 0.6–1.2 kB (gzip) replace instanced glTF files of 83–685 kB, making them roughly 100 to 790 times smaller. Without procedural structure, the scanned mesh remains close to quantised glTF in size (703.5 kB against 743.7 kB). Key findings Parameter-dependent geometry is reliant on the level of scene complexity, not triangle count. In the mentioned benchmarks, 598 bytes hold a forest of 7,401 instances and almost two million triangles, whilst a stress test of 39 million triangles is 581 bytes. On scenes built from shapes, paths and repetition, ES3D files are multiple orders of magnitude smaller than glTF and OBJ, which, with proper setup, can reduce bandwidth required on origin servers, but, as a consequence, the user’s device bears the rendering load. On the two phones tested, ES3D drew the two largest scenes 2.2–3.5 times faster than three.js drew instanced glTF, but mesh bodies like a scan experienced little to no benefits compared to quantised glTF files. ES3D is not a replacement for modern 3D file formats, but is better in specific use cases.
Author: Kalina, Ilia
Language: English
Field: Computer Science
Domain: Physical Sciences
Open Access status: green
OpenAlex ID: W7222239375
Cites:
Cited by:
Related to:
