This is a real-time ShaderFX shader for Autodesk Maya.

I’ve dabbled with NPR shaders before and this one started out as a request from a colleague of mine, “Do you have any toon shader I could use for my course?”. Seeing as I love working with shaders needless to say this turned out to be a bigger project in the end than I had thought 🙂

This shader is sort of like a Swiss Army Knife toon shader in the sense that it has many features and you choose yourself which ones you want/need to use.

Highlight Features

  • Diffuse, Normal Map, Specular, Gloss and AO Texture support
  • Programmatic Cell Shading
  • Custom Ramp Cell Shading
  • Two Layer Screen Space Crosshatch
  • Hemispherical Ambient Light
  • World Space Position Gradient Coloring
  • Light Range Tinting (Black point/White point)
  • Vertex Color Light Modulation (Tweak tendency to get lit)


Feature Demonstration / Tutorial

Known Issues

  • The outline feature is based on upscaling the original geometry and therefor kind of breaks if you have hard edges in the model.
  • There’s depth sorting issues if you have multiple objects using the outline feature that overlap each other. You can disable the outline feature altogether at the top of the shader under Settings
  • I haven’t figured out any possible way to automaticall get bounding box information for the World Space Position Gradient Coloring feature so you have to set min/max yourself.


 Image #1, character by Joachim Häggström, www.jocke-haggstrom.com

 Image #2, character by Joachim Häggström, www.jocke-haggstrom.com

 Image #3, character by Esbjörn Nord, www.artstation.com/artist/esbjornnord

 Image #4, character by Simon Palmér, www.simonpalmer.se