Unity is the indie game engine of choice due to its relative ease of use and ability to output to multiple platforms. Some people complain that Unity games “look the same” but that isn’t true, and very avoidable, if you play with shaders.

First, what’s a shader? A shader is an algorithm that tells computers what something looks like. For example, you can have a dull red apple that looks red in a default shader but in a modified shader that red apple becomes a highly reflective purple apple.

Thankfully, the great people at Unity Gems have a Noobs Guide to Shaders! It covers the basics and goes into how you can use it in your Unity-made games. If you’re new to code you may get a bit of a shock, but you’ll do fine – I think.

You should read this article if:

  • You are new to shader programming in general
  • You want to build shaders to do cool things in your game but you can’t find one that fits your needs
  • Strumpy Shader Editor isn’t helping because you don’t get the basic principles
  • You want to manipulate textures inside your shader

Unity Gems mentions the excellent Strumpy Shader, which is really good. It’s an open source shader editor that is quite powerful, part of me wonders why it’s not just included into Unity. If you know the very basics of shaders than you may want to check out this introduction to Strumpy Shader:

Familiar with shaders?

If you are familiar with shaders but not how they function in Unity, check out Unity’s page of surface shaders.

Of course you can always create and play around with your own.

Lastly, if you have Unity Pro check out to create a dream-like world. This last tutorial makes use of camera effects – and camera effects will have to be a whole other post.