toad.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Mastodon server operated by David Troy, a tech pioneer and investigative journalist addressing threats to democracy. Thoughtful participation and discussion welcome.

Administered by:

Server stats:

273
active users

#WGSL

1 post1 participant0 posts today
Khronos Group<p>Khronos announced the inaugural Shading Languages Symposium, that will take place on February 12-13, 2026, in San Diego, California. The symposium will bring together developers, implementors, researchers, and technical artists to explore the current state and future development of <a href="https://fosstodon.org/tags/shading" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shading</span></a> languages and real-time <a href="https://fosstodon.org/tags/rendering" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rendering</span></a> technologies. The open call for submissions for the symposium closes on October 12, 2025.</p><p><a href="https://khr.io/1le" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">khr.io/1le</span><span class="invisible"></span></a><br><a href="https://fosstodon.org/tags/glsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>glsl</span></a> <a href="https://fosstodon.org/tags/hlsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hlsl</span></a> <a href="https://fosstodon.org/tags/osl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>osl</span></a> <a href="https://fosstodon.org/tags/slang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>slang</span></a> <a href="https://fosstodon.org/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://fosstodon.org/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a></p>
Ricky Reusser<p>Oh, should have tagged <a href="https://mathstodon.xyz/tags/webgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgpu</span></a> <a href="https://mathstodon.xyz/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> so someone can (hopefully) explain why I’m an idiot for thinking I need to do this. Expecting some “just use slang” or something, but as cool as such things are, I’m after the minimum assistance required to make plain WebGPU effective to explore.</p>
bµg<p>It still baffles me that <a href="https://fosstodon.org/tags/GLSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GLSL</span></a> (or even <a href="https://fosstodon.org/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a>) does not have a linearstep() function but only smoothstep(). Same with linear() for parity with mix().</p><p>To this day, I remain convinced most of the smoothstep() uses could be replaced with a linearstep(), but most people don't because it's too much hassle to write it down.</p><p>For the record I mean:<br>linear(a,b,x)=(x-a)/(b-a)<br>linearstep(a,b,x)=saturate(linear(a,b,x))</p>
Shane Celis<p>I'm sure this has been done many times before, but I'm still happy to be bit-twiddling in <a href="https://mastodon.gamedev.place/tags/shaders" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shaders</span></a>. The star is this line:</p><p>(vertex_index &amp; 3u) + (vertex_index &gt;&gt; 2u)</p><p>"Give me the first two bits but add one if the third bit is set.” </p><p>The shader generates a UV-mapped quad (right-triangle pair) from the 0 through 5 vertex indices. The screenshot code is abridged; full code is at the link.</p><p><a href="https://github.com/shanecelis/bevy/blob/add-viewport-post-processing/crates/bevy_core_pipeline/src/viewport_vertex_shader/viewport.wgsl" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/shanecelis/bevy/blo</span><span class="invisible">b/add-viewport-post-processing/crates/bevy_core_pipeline/src/viewport_vertex_shader/viewport.wgsl</span></a> <a href="https://mastodon.gamedev.place/tags/gamedev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamedev</span></a> <a href="https://mastodon.gamedev.place/tags/bevyengine" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bevyengine</span></a> <a href="https://mastodon.gamedev.place/tags/bittwiddling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bittwiddling</span></a> <a href="https://mastodon.gamedev.place/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a></p>
absulit<p>Genuary 6: Make a landscape using only primitive shapes.</p><p>Made with <a href="https://mastodon.social/tags/WebGPU" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebGPU</span></a></p><p><a href="https://mastodon.social/tags/genuary2025" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genuary2025</span></a> <a href="https://mastodon.social/tags/genuary" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genuary</span></a> <a href="https://mastodon.social/tags/genuary6" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genuary6</span></a><br><a href="https://mastodon.social/tags/generativeart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>generativeart</span></a> <a href="https://mastodon.social/tags/creativecoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>creativecoding</span></a> <a href="https://mastodon.social/tags/genart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genart</span></a> <a href="https://mastodon.social/tags/webgl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgl</span></a> <a href="https://mastodon.social/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a><br><a href="https://mastodon.social/tags/abstract" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>abstract</span></a> <a href="https://mastodon.social/tags/abstractart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>abstractart</span></a> <a href="https://mastodon.social/tags/digitalart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>digitalart</span></a> <a href="https://mastodon.social/tags/animation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>animation</span></a> <a href="https://mastodon.social/tags/mograph" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mograph</span></a> <a href="https://mastodon.social/tags/motiongraphics" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>motiongraphics</span></a> <br><a href="https://mastodon.social/tags/math" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>math</span></a> <a href="https://mastodon.social/tags/mathart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mathart</span></a> <a href="https://mastodon.social/tags/javascript" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>javascript</span></a> <a href="https://mastodon.social/tags/surrealism" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>surrealism</span></a> <a href="https://mastodon.social/tags/surrealart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>surrealart</span></a><br><a href="https://mastodon.social/tags/shader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shader</span></a> <a href="https://mastodon.social/tags/loop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>loop</span></a> <a href="https://mastodon.social/tags/cgi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cgi</span></a> <a href="https://mastodon.social/tags/sdf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sdf</span></a> <a href="https://mastodon.social/tags/raymarching" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>raymarching</span></a></p>
David Neto<p>I wrote a post about the three ways to declare pure values in WGSL: const, override, and let.</p><p><a href="https://www.dneto.dev/posts/2025/wgsl-evaluation-phase/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">dneto.dev/posts/2025/wgsl-eval</span><span class="invisible">uation-phase/</span></a></p><p><a href="https://mastodon.gamedev.place/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a> </p><p>I actually wrote most of this in 2023...</p>
absulit<p>Genuary 1: Vertical or horizontal lines only.</p><p>Made with <a href="https://mastodon.social/tags/WebGPU" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebGPU</span></a> </p><p><a href="https://mastodon.social/tags/genuary" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genuary</span></a> <a href="https://mastodon.social/tags/genuary2025" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genuary2025</span></a> <a href="https://mastodon.social/tags/genuary1" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genuary1</span></a> <a href="https://mastodon.social/tags/shader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shader</span></a> <a href="https://mastodon.social/tags/glsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>glsl</span></a> <a href="https://mastodon.social/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> <a href="https://mastodon.social/tags/genart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genart</span></a> <a href="https://mastodon.social/tags/generativeart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>generativeart</span></a> <a href="https://mastodon.social/tags/mograph" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mograph</span></a> <a href="https://mastodon.social/tags/creativecoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>creativecoding</span></a> <a href="https://mastodon.social/tags/animation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>animation</span></a> <a href="https://mastodon.social/tags/javascript" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>javascript</span></a> <a href="https://mastodon.social/tags/mathart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mathart</span></a> <a href="https://mastodon.social/tags/loop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>loop</span></a> <a href="https://mastodon.social/tags/cgi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cgi</span></a> <a href="https://mastodon.social/tags/sdf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sdf</span></a> <a href="https://mastodon.social/tags/video" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>video</span></a> <a href="https://mastodon.social/tags/woman" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>woman</span></a> <a href="https://mastodon.social/tags/window" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>window</span></a> <a href="https://mastodon.social/tags/blackandwhite" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>blackandwhite</span></a></p>
David Neto<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@chandlerc" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>chandlerc</span></a></span> </p><p>Nice talk.<br>Reminds me of functional programming / denotational semantics stuff. Semantics via rewriting to esoterica. Cool.</p><p>At some point WGSL will have pressure to generalize and I'd like to keep all this in mind when that happens.</p><p><a href="https://mastodon.gamedev.place/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a></p>
Az<p>Anyway if you're ever looking for an art direction for your video game, just ask me to write some basic post processing effect and I'll give you some cool looking, video card dependent, random bug, no, art style for free.</p><p><a href="https://mastodon.gamedev.place/tags/rust" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rust</span></a> <a href="https://mastodon.gamedev.place/tags/rustlang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rustlang</span></a> <a href="https://mastodon.gamedev.place/tags/rendering" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rendering</span></a> <a href="https://mastodon.gamedev.place/tags/wgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgpu</span></a> <a href="https://mastodon.gamedev.place/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a></p>
Az<p>I'm slowly finding time to work on my toy renderer again after starting a new job a month ago.<br>It welcomed me with some new amazing cool looking graphics bugs, here's my favorites from today.</p><p><a href="https://mastodon.gamedev.place/tags/rust" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rust</span></a> <a href="https://mastodon.gamedev.place/tags/rustlang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rustlang</span></a> <a href="https://mastodon.gamedev.place/tags/rendering" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rendering</span></a> <a href="https://mastodon.gamedev.place/tags/wgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgpu</span></a> <a href="https://mastodon.gamedev.place/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a></p>
absulit<p>I've been updating my <a href="https://mastodon.social/tags/webgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgpu</span></a> library recently and one of the updates has been a better demos/examples page,</p><p>so now I can share directly this Droste Effect demo, source code included:</p><p><a href="https://absulit.github.io/points/examples/index.html#droste_effect_1" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">absulit.github.io/points/examp</span><span class="invisible">les/index.html#droste_effect_1</span></a></p><p>* not mobile friendly yet</p><p><a href="https://mastodon.social/tags/javascript" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>javascript</span></a> <a href="https://mastodon.social/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> <a href="https://mastodon.social/tags/shaders" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shaders</span></a> <a href="https://mastodon.social/tags/softwaredevelopment" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwaredevelopment</span></a> <a href="https://mastodon.social/tags/generativeart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>generativeart</span></a> <a href="https://mastodon.social/tags/development" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>development</span></a> <a href="https://mastodon.social/tags/digitalart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>digitalart</span></a></p>
doomy 🦀<p>ok <a href="https://mastodon.social/tags/bevy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bevy</span></a> <a href="https://mastodon.social/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> users, drop ur favorite wgsl "getting started" tutorials/blogs. i find a lot of them are written with for an audience that already knows graphics programming but is new to wgsl, instead of someone who is new to both</p>
Kornel<p>I'm positively surprised how well designed WebGPU and <a href="https://mastodon.social/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a> are.</p>
Troels<p>How do people test <a href="https://freeradical.zone/tags/WebGPU" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebGPU</span></a> programs/shaders in CI? Can Chrome or Firefox run headless on a server in a closet? Is there a <a href="https://freeradical.zone/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a> implementation that does not need a physical GPU?</p>
Shane Celis<p>I like the wgsl shading language, but the no swizzle assignment feels bad. <a href="https://mastodon.gamedev.place/tags/shaders" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shaders</span></a> <a href="https://mastodon.gamedev.place/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a></p>
absulit<p><a href="https://mastodon.social/tags/Eclipse" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Eclipse</span></a> in <a href="https://mastodon.social/tags/webgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgpu</span></a></p><p><a href="https://mastodon.social/tags/generativeart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>generativeart</span></a> <a href="https://mastodon.social/tags/creativecoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>creativecoding</span></a> <a href="https://mastodon.social/tags/genart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>genart</span></a> <a href="https://mastodon.social/tags/webgl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgl</span></a> <a href="https://mastodon.social/tags/abstract" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>abstract</span></a> <a href="https://mastodon.social/tags/abstractart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>abstractart</span></a> <a href="https://mastodon.social/tags/digitalart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>digitalart</span></a> <a href="https://mastodon.social/tags/animation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>animation</span></a> <a href="https://mastodon.social/tags/mograph" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mograph</span></a> <a href="https://mastodon.social/tags/motiongraphics" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>motiongraphics</span></a> <a href="https://mastodon.social/tags/80s" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>80s</span></a> <a href="https://mastodon.social/tags/90s" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>90s</span></a> <a href="https://mastodon.social/tags/math" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>math</span></a> <a href="https://mastodon.social/tags/mathart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mathart</span></a> <a href="https://mastodon.social/tags/javascript" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>javascript</span></a> <a href="https://mastodon.social/tags/surrealism" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>surrealism</span></a> <a href="https://mastodon.social/tags/surrealart" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>surrealart</span></a> <a href="https://mastodon.social/tags/shader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shader</span></a> <a href="https://mastodon.social/tags/glsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>glsl</span></a> <a href="https://mastodon.social/tags/loop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>loop</span></a> <a href="https://mastodon.social/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> <a href="https://mastodon.social/tags/computeshader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>computeshader</span></a> <a href="https://mastodon.social/tags/cgi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cgi</span></a> <a href="https://mastodon.social/tags/sun" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sun</span></a> <a href="https://mastodon.social/tags/solareclipse" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>solareclipse</span></a> <a href="https://mastodon.social/tags/costarica" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>costarica</span></a></p>
Amy forgot her drawing tablet<p>🎉<span> Just cross-compiled my first WGSL SDF function from my node graph </span>🎉<span><br><br>(I had to add the connections manually, and there were some ID collisions but it works)<br><br></span><a href="https://mk.amanita.zone/tags/SDF" rel="nofollow noopener" target="_blank">#SDF</a><span> </span><a href="https://mk.amanita.zone/tags/WGSL" rel="nofollow noopener" target="_blank">#WGSL</a></p>
David Neto<p>My team started looking at subgroup support for <a href="https://mastodon.gamedev.place/tags/WebGPU" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebGPU</span></a> again. We pushed it out of the initial <a href="https://mastodon.gamedev.place/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a> feature set due to our staffing load and suspected non portability. Revisiting it now.</p><p>Sadly, and frustratingly, implementations don't do what programmers think should happen. We are seeing very very nonportable behavior.</p><p>Still collecting data across devices and platforms that we will share soon enough.</p>
Karsten Schmidt<p>Realtime <a href="https://mastodon.thi.ng/tags/WebGL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebGL</span></a> <a href="https://mastodon.thi.ng/tags/DEM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DEM</span></a> visualization/editor using <a href="http://shadergraph.thi.ng" rel="nofollow noopener" target="_blank"><span class="invisible">http://</span><span class="">shadergraph.thi.ng</span><span class="invisible"></span></a></p><p>This web-based shader graph editor started in 2020 and is in urgent need to be developed further (i.e. to support loading &amp; saving of projects, <a href="https://mastodon.thi.ng/tags/GLSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GLSL</span></a> &amp; <a href="https://mastodon.thi.ng/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a> export). The tool is really more about visual algebra and prototyping in general and so isn't _specifically_ aimed at DEM visualizations, but it provides several useful operators to facilitate such (at least for pre-viz purposes and/or to create custom aesthetics). For example, there're generators for ambient occlusion maps, normal maps, bump mapping, elevation-based color gradients etc. Altogether, there're 36 customizable generators &amp; operators, some also animated. Images (up to 4K res) can be imported via drag &amp; drop. Currently only supports JPG/PNG, GeoTIFF will have to be pre-converted for now. If there's interest, I can record a quick video walkthrough of the tool...</p><p>The editor &amp; all shader operators are written in <a href="https://mastodon.thi.ng/tags/TypeScript" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TypeScript</span></a>, with the latter being transpiled to GLSL via <a href="https://thi.ng/shader-ast" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="">thi.ng/shader-ast</span><span class="invisible"></span></a>.</p><p>The attached screenshots show some of the graphs/workflows I've used to produce visualizations &amp; artwork for prints. You can (maybe, who can say these days?) also find more examples (incl. videos) on my old Twitter:</p><p><a href="https://twitter.com/search?q=from%3A%40thing_umbrella+shadergraph&amp;f=live" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">twitter.com/search?q=from%3A%4</span><span class="invisible">0thing_umbrella+shadergraph&amp;f=live</span></a></p><p>2/3</p>
Raph Levien<p>I just published a blog post, "A note on Metal shader converter": <a href="https://raphlinus.github.io/gpu/2023/06/12/shader-converter.html" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">raphlinus.github.io/gpu/2023/0</span><span class="invisible">6/12/shader-converter.html</span></a></p><p>As I discuss in the post, in the long term I'm hopeful for a future with robust GPU compute infrastructure, based on well-documented standards and rigorous testing so that we can be confident that GPU hardware will actually run our code (including sophisticated lock-free algorithms). We have a long way to go, and I think <a href="https://mastodon.online/tags/WGSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WGSL</span></a> is a better path toward that future than proprietary GPU languages.</p>