I created a reference shader with ray-primitive intersection routines on Shadertoy. A simple path tracer is used to visualize the scene.
Yet another Cornell Box: a path tracer in a single fragment shader on Shadertoy. Direct light sampling is used to reduce noise. The scene is rendered using 12 samples per pixel.
By combining the webcam texture and the WebVR functionality of Shadertoy, I was able to create two “Augmented Reality” fragment shaders.
It’s the next week so time for “Raytracing: the next week” by Peter Shirley. Again, I implemented some of the chapters of the book in four shaders on Shadertoy.
I know I’m a bit late to the party, but I had a lot of fun reading “Ray tracing in one weekend” by Peter Shirley yesterday. I implemented some of the chapters of the book in four shaders on Shadertoy.
A simple path tracer is used to render an old watch. The old watch scene is (almost) the same scene as rendered using image-based lighting in my Shadertoy shader “Old watch (IBL)“.
I created a shader quine, a fragment shader without input (textures or models) that produces a copy of its own source code as its output, on Shadertoy. You can find (the full source of) the fragment shader here: https://www.shadertoy.com/view/MlGcRz.
An organic-looking SDF scene in a single, fully procedural, fragment shader. The scene is modelled for this specific camera viewpoint and lighting setup.
“Human Document” – my entry for the Shadertoy Competition 2018. A bit to my surprise, this shader turned out to be the winning entry :)
Paratrooper, a playable DOS game in a fragment shader. You can find (the full source of) the fragment shader here: https://www.shadertoy.com/view/XsyfD3.