Generative art is all what Shadertoy is about. I think this video explains quite well what it is.
Tim Holman - Generative Art Speedrun
As this Three.js page explains very well, you will not here develop a full 3D application, but short GLSL programs for fun or to experiment and learn about 3D rendering technics.
I can see shaders in the following main categories (personal point of view)
- Masterpieces
- Here the creator tries to sum of many different technics in the same shader. Need weeks of work. The creator wants to prove and show his artistic and technical skills.
- Nice Illustrations of functions and algorithms
- Tutorial, here the creator wants to make a visualisation of what he learnt and wants to communicate, like construction of polyhedrons or the rendering of clouds.
- Reproduction
- The author tries to reproduce a picture, or a scene of a movie for example, for the pleasure.
- Golfing
- Making very short program, the pleasure is to find how its works with so few characters !
- VJing (Video Jockey)
- Some shaders like spychedelic fractals may be used during “parties”.
- Results of live coding parties.
- Memorize some formulas and retype them quickly, you will impress your audience.
- Playable games and emulators
- No idea how they can even do it !
- Optical illusions
- Fun ! But be prepared for headhatches if you look at it too long.