I’ve been working on porting Shadertoy shaders for use with r_e_c_u_r.
Shadertoy runs GLSL ES 3.00; r_e_c_u_r (2.0.2 system image) runs GLSL ES 1.00 on a VideoCore IV. Translating the uniform names takes about ten minutes; the hard part is everything else, and almost none of that results in an error. A poorly ported shader compiles, links, runs, and either displays a green or black screen, or crashes, without a single warning either on the machine or in the interface.
I used Claude Code for the task, creating a subagent and a skill that anyone can use to transform shaders. Both can be used with Z-code, Claude Code or any other agentic AI and can be installed manually or as a plugin. It’s still learning, but after one or two iterations, it gets it pretty right depending on the complexity of the shader. Not all shadertoy shaders fit into the rpi. Read the licenses section before using the ported shaders in a show.
Raspberry Pi 3B system with the 2.0.2 image precompiled by @cyberboy666 assembled together with i_n_c_u_r.