GPU Shader Experiments
Real-time procedural 3D scene generation using ray marching and distance field (also known as 'sphere tracing') accelerated rendering techniques.
Waves - plane deformation, simple reflections.
Mountains (in the sunset) - several techniques combined and refined, including real-time fractal noise based terrain generation, natural lighting and height based fogging. Inspiration is again from IQ's amazing work. High-resolution render with anti-aliasing. Nice pink sunset version of same scene. Also a version with reflective water.
Mountains Terrain 1 - more real-time fractal noise based terrain generation, experimenting and learning new noise generation techniques. Trying to add detail to noise in interesting ways. High-resolution render with anti-aliasing.
Mountains Terrain 2 - noise based terrain generation - this one has nice valleys with sharp peaks, details are smoother. Learnt more noise techniques from this article. High-resolution render with anti-aliasing, and another.
Crater Terrain - advanced noise based crater terrain generation. This article has details on using the derivatives from perlin noise to improve the terrain. High-resolution render with anti-aliasing, and another.
Reflective Spheres - real-time reflections, shadows and general old-skool shinyness.
Mandelcube - Borg Cube?! Outside a more solid looking version of the mandelbox fractal.
Trefoil Knot 2 - on a classic checkerboard floor material with noise texture on the knot surface, plus real-time depth-of-field effect when anti-aliasing is enabled.
Polyhedra Playground 3 - textured polyhedra shapes shown as faces, vertices and segments.
Glowing Columns - more sub-surface scattering glow effects on larger objects, with some wizzy camera animation.
Alien Lake - plane deformation with noise textures, reflections and post effects.
Animated CSG shape - animation of various cut out shapes.
Distance Field 1 - my first success once I got the technique working! Pretty basic compared to the others here, but you have to start somewhere right?
Lots of code/ideas for these demos come from reading and experimenting with techniques from the following resources:
The general technique is explained from page 21 onwards in the above PDF link. If you want to understand this stuff read through the PDF and pouet.net links above!
...but they don't work on my machine!
These Web-GL demos work best on Linux or Mac which has good native OpenGL support. Most should work on Windows with a decent GPU.