Ignacio Castano🍉
banner
icastano.bsky.social
Ignacio Castano🍉
@icastano.bsky.social
Master swimmer, mountain climber, and stand up coder.
I work on texture processing tools at Ludicon.
Formerly at Roblox, Thekla (The Witness), NVIDIA, OddWorld, Relic, Crytek.
Pinned
The demo I’ve been working on is finally online:

ludicon.com/sparkjs/gltf-demo/

It demonstrates the benefits of real-time texture compression in 3D web apps. It allows you to compare models using traditional KTX2 textures (UASTC and ETC1S) with the same assets compressed as AVIF + Spark.
spark.js⚡ GLTF Demo
A GLTF viewer with Spark⚡ real-time GPU compression.
ludicon.com
While working on spark.js, I realized that common normal map compression formats weren’t supported in popular frameworks like three.js. I added the necessary support to three.js and wrote an article to shed some light on the topic:

ludicon.com/castano/blog...

#webgpu #webgl #threejs #sparkjs
Normal Map Compression Revisited – Ignacio Castaño
www.ludicon.com
February 5, 2026 at 5:04 AM
Reposted by Ignacio Castano🍉
Graphics Programming weekly - Issue 426 - February 1st, 2026 www.jendrikillner.com/post/graphic...
February 2, 2026 at 2:01 PM
Reposted by Ignacio Castano🍉
For what I'm working on, I can change every file, asset, shader, and C++ code and see the changes in <1s.

Shaders take roughly 100ms, C++ code 500ms.

Using my own custom tech and Live++.
I think most game dev teams underestimate how damaging slow workflows are to the ultimate quality of their game.

If it takes 5 minutes to launch the game and see your changes, I think your game is going to be MUCH worse than the alternate timeline where it took 1 minute
January 31, 2026 at 3:17 PM
Reposted by Ignacio Castano🍉
Really worthwhile reading from @icastano.bsky.social! If you're building with WebGPU, spark.js gives you new choices for texture compression that weren't possible with WebGL.

Also, I need to update my older blog post. 😅
Choosing texture formats for WebGPU apps
www.ludicon.com/castano/blog...

Loading large scenes and running out of VRAM? This guide is for you. A follow up to @donmccurdy.com's guide, with a new option: Ship AVIF/WebP over the network, with native block-compressed textures in VRAM

#webgpu #webgl
Choosing Texture Formats for WebGPU applications – Ignacio Castaño
www.ludicon.com
January 28, 2026 at 3:18 PM
Choosing texture formats for WebGPU apps
www.ludicon.com/castano/blog...

Loading large scenes and running out of VRAM? This guide is for you. A follow up to @donmccurdy.com's guide, with a new option: Ship AVIF/WebP over the network, with native block-compressed textures in VRAM

#webgpu #webgl
Choosing Texture Formats for WebGPU applications – Ignacio Castaño
www.ludicon.com
January 27, 2026 at 5:33 AM
I'm excited to announce that @maxonvfx.bsky.social has licensed Spark for their cutting-edge Redshift renderer! Looking forward to supporting their work.
January 12, 2026 at 8:47 PM
Reposted by Ignacio Castano🍉
Fuck Donald Trump
January 3, 2026 at 8:25 AM
Reposted by Ignacio Castano🍉
We have to impeach him.
January 3, 2026 at 7:25 AM
three.js r182 was just released! 🎉

github.com/mrdoob/three.js/rel

I contributed support for RG normal maps, enabling BC5 and EAC_RG normal map compression in both the WebGL and WebGPU renderers.

#webgpu #webgl #threejs
github.com
December 10, 2025 at 7:49 PM
Reposted by Ignacio Castano🍉
After nine years of development, meshoptimizer has reached its first major version, 1.0!

This release focuses on improvements in clusterization and simplification as well as stabilization. Here's a release announcement with more details on past, present and future; please RT!

meshoptimizer.org/v1
🐇 meshoptimizer v1.0
Mesh optimization library that makes meshes smaller and faster to render
meshoptimizer.org
December 8, 2025 at 4:56 PM
Reposted by Ignacio Castano🍉
Funding: if your mid/large business uses Dear ImGui - and maybe you are approaching end of year budget/planning etc. - please consider reaching out (PM/email) so I can help you help Dear ImGui !
November 5, 2025 at 8:00 PM
Reposted by Ignacio Castano🍉
New blog post about the development of Radical Pie:
terathon.com/blog/radical...
November 1, 2025 at 10:32 PM
Reposted by Ignacio Castano🍉
When I wrote PGA Illuminated, I had to paste an equation in Illustrator to draw highlights and annotations like these. Not any more. With Radical Pie, they get drawn directly in the equation editor, they auto-resize during edits, and everything stays live when embedding in Word.
October 21, 2025 at 11:23 PM
Reposted by Ignacio Castano🍉
Radical Pie has entered beta testing! I expect the final release to be available by the end of October.
October 3, 2025 at 2:58 AM
Reposted by Ignacio Castano🍉
TIL of VD-Dev, despite sharing past franchise titles with Guillaume Dubail and the late Fernando Velez. These guys were proper savants of their time, unlike those that tend to hit popular culture. I'm in complete awe of their work, Asterix & Obelix was mind-blowing.

www.youtube.com/watch?v=rfOR...
PW Hall of Fame: V.D.-Dev (aka Velez & Dubail) | Punching Weight [SSFF]
YouTube video by Stop Skeletons From Fighting
www.youtube.com
September 24, 2025 at 12:04 PM
Reposted by Ignacio Castano🍉
The demo I’ve been working on is finally online:

ludicon.com/sparkjs/gltf-demo/

It demonstrates the benefits of real-time texture compression in 3D web apps. It allows you to compare models using traditional KTX2 textures (UASTC and ETC1S) with the same assets compressed as AVIF + Spark.
spark.js⚡ GLTF Demo
A GLTF viewer with Spark⚡ real-time GPU compression.
ludicon.com
September 15, 2025 at 11:42 PM
The demo I’ve been working on is finally online:

ludicon.com/sparkjs/gltf-demo/

It demonstrates the benefits of real-time texture compression in 3D web apps. It allows you to compare models using traditional KTX2 textures (UASTC and ETC1S) with the same assets compressed as AVIF + Spark.
spark.js⚡ GLTF Demo
A GLTF viewer with Spark⚡ real-time GPU compression.
ludicon.com
September 15, 2025 at 11:42 PM
Reposted by Ignacio Castano🍉
Remembering MN house speaker Melissa Hortman, her husband Mark and their beloved dog Gilbert. Murdered in June at their home by a rightwing Trump-voting evangelist, who also shot another MN lawmaker and his wife at THEIR home, 9 and 8 times, respectively (miraculously, they survived).
September 11, 2025 at 5:50 AM
Reposted by Ignacio Castano🍉
Writeup by @icastano.bsky.social — very worthwhile comparisons for anyone building texture-heavy applications in WebGPU, with a case study and integration in @threejs.org!
New blog post about my experiences using spark.js with three.js:

www.ludicon.com/castano/blog...

Re-posts and feedback appreciated!
three.js + spark.js – Ignacio Castaño
www.ludicon.com
September 10, 2025 at 3:11 AM
New blog post about my experiences using spark.js with three.js:

www.ludicon.com/castano/blog...

Re-posts and feedback appreciated!
three.js + spark.js – Ignacio Castaño
www.ludicon.com
September 9, 2025 at 7:42 AM
Reposted by Ignacio Castano🍉
I am boycotting #SIGGRAPHAsia 2026 because it will be in Malaysia, where there are serious safety concerns for the LGBTQ+ members of our community, thereby excluding them. I will not attend, submit my work to, or perform any reviews for SIGGRAPH Asia 2026.

Yet, I'm excited about #SIGGRAPHAsia 2025!
September 5, 2025 at 11:37 PM
Reposted by Ignacio Castano🍉
I’m excited to announce the release of Spark 1.3 and the launch of spark.js, our new JavaScript API for real-time GPU texture compression on the web.

ludicon.com/sparkjs
spark.js
Real-Time GPU Texture Codecs for the Web
ludicon.com
August 6, 2025 at 11:04 PM
Hi Vancouver!
August 10, 2025 at 5:59 PM