Introduction to Shader Toy
October 28, 2017
For those looking to sharpen their GLSL skills I recommend you give ShaderToy a try. It’s a playground which provides a (relatively) simple user-interface (UI) for playing around and testing GLSL snippets as well as a reddit like browsing and voting system. You can publish your snippet and others can vote and comment. The GLSL you write is fragment shader only. There is a list provided in a drop down of available inputs but other than that there is little information on what you are dealing with. I stumbled across pretty good overview on the basics here by Omar Shehata.
When first arriving at ShaderToy the home page will present you with some of the recent-most popular shaders that are currently published. I by no means thought I was an expert but I’ve been around when it comes to shaders. If you felt like me, prepare to be overwhelmed. Some of the work that people are submitting to ShaderToy is…. in no uncertain terms, incredible.
With a fragment shader there is no CPU, there is no hard drive. So, there is no using models exported from software suites like Maya or Blender. Yet, somehow, people are creating 3D scenes which include landscapes, cavernous tunnels, snakes…. even a bloody airplane. All of this is done with for loops and the basic math functions available. I am truly in awe of the ability and tenacity some people have.
I now have a mission. I am going to figure out how people are doing this… I will start from the very bottom and try to work my way up to the level some of these people are on. Stay tuned.