Into Shadertoy and Shaders useful links and tips

Danil
2 min readMay 11, 2021

Links and small descriptions to useful shader-related stuff.

Shadertoy is a great place to create and discover amazing shader-related projects. https://www.shadertoy.com/

iquilezles.org — I highly recommend all materials and articles on this website, created by Inigo Quilez.
Articles include very useful materials such as 2D SDF and 3D SDF, intersectors functions for analytic raycasting, smoothstep like functions, and many others worth checking.

shadertoyunofficial.wordpress.com — lots of useful tips and materials about Shadertoy and shaders, created by Fabrice NEYRET.
Usual tricks in Shadertoy some basics and not very obvious tips, Special Shadertoy features info about Shadertoy variables and resources format.
Shadertoy media files Shadertoy resources like images and others.
(Shadertoy audio texture more detailed explained here)
Avoiding compiler crash and Compatibility issues in Shadertoy and webGLSL.

thebookofshaders.com/examples/ — Examples Gallery.
MotionToolKit useful examples to create realistic motion. Shaping functions.

hg_sdf — 3D SDF library.

Khronos OpenGL-Refpages — list of all GLSL functions with description and limitations.

SPIR-V Extended Instructions for GLSL (Vulkan) — list of GLSL functions for Vulkan.

Shadertoy alternative and similar websites:

vertexshaderart.com — WebGL particles shaders.

neort.io — WebGL and also allows uploading HTML and video content.

glslsandbox.com — WebGL fragment shaders.

twigl.app and thebookofshaders.com — allow you to create and share links to your single WebGL shader.

For more complex projects itch.io or newgrounds.com or other similar services can be used, a service that allows uploading web projects, even github/gitlab pages that have a similar purpose. For the offline web-template look below.

Offline Shadertoy related applications:

For my offline shader development — text editor with shader-viewer/render is enough, complex software has way too many bugs to deal with.

vulkan-shadertoy-launcher — very minimal application to render shadertoy shaders, using C with Vulkan API. Support Linux and Windows.

shadertoy-to-video-with-FBO — python script, rendering Shadertoy shaders to video frame by frame, using OpenGL. Support Linux and Windows.

For more complex projects — I recommend using 3D-engine with GUI Editor, I use Godot Engine. This video shows how to create Shadertoy logic in the Godot engine.

Web export templates:

Minimal single shader web template —100 lines of code single HTML file include shaders. Second minimal example — with shaders in files and textures loading.

Particle shader with transform feedback, support vertexshaderart-like logic — -live example and source code in zip.
For more complex projects I always use the Godot Web-export template.

--

--