I fixed the shader imports in spark.js to work with static analysis, so you can estimate bundle sizes for WebGL and WebGPU.

In practice, though, shaders are imported dynamically. You only pay for what you use, so the actual overhead is tiny.

#webgl #webgpu #sparkjs

I'm excited to announce the release of spark.js 0.1 now with support for WebGL!

https://www.ludicon.com/castano/blog/2026/03/announcing-spark-js-0-1/

#webgl #webgpu #sparkjs

Announcing spark.js 0.1

I'm excited to announce spark.js 0.1, now with WebGL support!

Ignacio Castaño
Live dev test! SparkJS + A-Frame loading a Marble .spz with JXR-Core — in-browser demo of 3D asset loading (warning: low perf). Fun peek into WebXR/WebGL + JS tooling and model pipelines. Check it out and tell us what breaks! #SparkJS #AFrame #Marble #JXR #WebXR #WebGL #JavaScript #OpenSource #Dev #PeerTube #LiveTest #English
https://video.benetou.fr/videos/watch/ce87b094-3a17-458a-99af-0c3364a7e690
SparkJS AFrame component loading Marble .spz with JXR-Core note test

PeerTube

I've put together an updated version of the Sponza scene with uncompressed PNG and compressed AVIF textures. I wrote about the process and compared the results against KTX.

https://www.ludicon.com/castano/blog/2026/02/an-updated-sponza-gltf/

#webgpu #sparkjs

An Updated Sponza glTF – Ignacio Castaño

While working on spark.js, I realized that normal map compression formats weren’t supported in popular frameworks like three.js. I addressed that gap by adding the necessary support to three.js and wrote an article to shed some light on the topic, drawing from my experience in real-time 3D graphics.

https://www.ludicon.com/castano/blog/2026/02/normal-map-compression-revisited/

#webgpu #webgl #threejs #sparkjs

Normal Map Compression Revisited – Ignacio Castaño

Ian Curtis (@XRarchitect)

웹상에서 지속되는(persistent) 월드 모델을 구현했다는 발표. 60초 제한이 없으며 World Labs가 SparkJS, Three.js, Rapier를 조합해 브라우저 기반의 지속적 3D/물리 월드를 제공하는 시도임을 시사.

https://x.com/XRarchitect/status/2018369477495406965

#worldlabs #sparkjs #threejs #rapier #webgl

Ian Curtis (@XRarchitect) on X

Persistent world models on the web. No 60-second time limit. World Labs × SparkJS × Three.js × Rapier 🌎

X (formerly Twitter)