Toonkit Shaders

I devel­oped my Toonkit shaders because I wasn’t sat­is­fied with the pos­si­bil­i­ties offered by the stan­dard toon shad­ing options in the major 3D pack­ages. The main prob­lem I saw was that they offered too lit­tle con­trol when it came to defin­ing a spe­cific look yet at the same time too much con­trol in places it doesn’t matter.

Toonkit con­tains highly advanced toon shaders which can sim­u­late not only car­toon and anime but many other non-​​photorealistic styles.
Unlike many con­ven­tional toon shaders, Toonkit cre­ates very clean and smooth look­ing ani­ma­tion while avoid­ing jagged shad­ing and that noto­ri­ous “floaty” 3D effect.

The set pro­vides an array of use­ful tools for shad­ing char­ac­ter ani­ma­tion as well as util­i­ties to aid in back­ground matte paint­ing. Toonkit is com­pat­i­ble with the men­tal ray and Ren­der­Man renderers.

  1. ToonHair

    ToonHair deals squarely with rendering anime-style hair.

  2. ToonShader

    ToonShader was developed to accurately simulate the flat look of 2D cartoon or cel animation.

  3. ToonHoldout

    ToonHoldout allows eyes and eyebrows to be rendered above the hair, an effect quite common in anime and manga.

  4. ToonSurface

    ToonSurface adjusts any object’s shading to appear round, even and altogether more visually appealing.

  5. ToonOutline

    This set of material and lens shaders renders high quality cel style outlines and offers more flexibility than mental ray's native contour solution while being much more straightforward to use in daily production.

ToonHair

The lat­est addi­tion to my Toonkit shader library deals squarely with ren­der­ing anime-​​style hair.
Ren­der­ing anime or mange style hair in 3D is decep­tively sim­ple — one might think that any old toon shader would do the trick…

ToonHairToonHairToonHairToonHair

But unfor­tu­nately it is in fact incred­i­bly dif­fi­cult to ren­der believ­able anime hair using con­ven­tional shaders. This is mainly due to the unortho­dox type of spec­u­lar high­light used, which usu­ally stretches around the entire head, often runs in wild zig-​​zag pat­terns or tapers towards the end. This non-​​photorealistic effect has no equiv­a­lent in con­ven­tional shaders.

How­ever, the Toon­Hair shader gives the artist full con­trol over sim­u­lat­ing these uncon­ven­tional high­lights by offer­ing almost half a dozen dif­fer­ent ramps with visual graphs and direct feed­back to con­trol the shad­ing effect in detail. Para­me­ters include ramp color, pro­file, direc­tion, taper­ing, off­set and size.

Usage

This shader is specif­i­cally designed to solve the com­mon prob­lem of ren­der­ing believ­able anime hair with 3D mod­els. It is quite sim­ple to setup but at the same time offers all the con­trol one could want.

In com­bi­na­tion with the Toon­Hold­out shader it is also pos­si­ble to sim­u­late the com­mon effect of ren­der­ing eyes and eye-​​brows above the hair — regard­less of phys­i­cal plausibility.

ToonShader

This com­plex toon shader com­bines a 1D ramp with a 2D tex­tured ramp to cre­ate a car­toon look and other non-​​photorealistic effects.
It uses a small image sam­ple as a 2D ramp which allows the artist to sep­a­rate the color of the base shad­ing, specs and rim lights and to vary the smooth­ness of gra­da­tions between these areas.

toonShadertoonShadertoonShadertoonShader

Even though the shader is com­plex and offers much con­trol, the default set­tings and pre­sets are designed to accu­rately mimic var­i­ous car­toon looks. To achieve this, Toon­Shader offers two dif­fer­ent gra­di­ent ramp con­trols, three types of spec­u­lar high­lights, con­trol over trans­parency, ambi­ent occlu­sion, cus­tom shadow col­ors, inci­dence and incan­des­cence and above all allows the artist to man­u­ally adjust the shad­ing locally by paint­ing ver­tex col­ors. It is also pos­si­ble to cre­ate square or split high­lights for accu­rate car­toon effects.
More­over, each effect is imple­mented as an inde­pen­dent layer which can be tog­gled on or off and may be blended using any com­bi­na­tion of more than 20 blend modes.

As such, this ver­sa­tile shader is not only capa­ble of ren­der­ing con­vinc­ing car­toon char­ac­ters but can also be used to ren­der painterly back­ground objects and mattes.

Usage

Toon­Shader was devel­oped to accu­rately sim­u­late the flat look of 2D car­toon or cel ani­ma­tion. It pro­vides two sep­a­rate meth­ods to drive flat or gra­di­ent shad­ing and pro­vides sep­a­rate con­trols of spec­u­lar high­lights. These may be moved, rotated and scaled inde­pen­dently of the light source.

ToonHoldout

The Toon­Hold­out shader is a spe­cial­ized util­ity node that can be used to make cer­tain objects appear in front of oth­ers even though they would in real­ity be obscured. Specif­i­cally, this shader was devel­oped to ren­der a character’s eyes and eye­brows over her hair.

In manga and anime it is quite com­mon to have eyes and eye­brows ren­dered over the hair, even though this may seem implau­si­ble or phys­i­cally incor­rect.
This setup is extremely com­pli­cated to achieve with­out this shader but adds a lot to cre­ate the illu­sion of hand-​​painted art.

Usage

Using Toon­Hold­out couldn’t be eas­ier: Plug it into the ToonShader’s trans­parency slot and spec­ify the names of the objects you want to see through to and you are good to go!

ToonSurface

This util­ity shader was designed to be used in com­bi­na­tion with the Toon­Shader. Toon­Sur­face adjusts any object’s shad­ing to appear round, even and alto­gether more visu­ally appeal­ing.

ToonSurfaceToonSurface

This shader makes it pos­si­ble to locally fix “wrong” or visu­ally unpleas­ant toon shad­ing with­out hav­ing to adjust the model, sur­face shader, light­ing or normals.

Usage

Small or square cut patches of dark shad­ing rarely appear in hand drawn ani­ma­tion, unlike in CG, where the real­is­tic light­ing model often causes an uneven and gen­er­ally unpleas­ant toon shad­ing look. Con­ven­tional tools make it almost impos­si­ble to coun­ter­act this unde­sir­able effect.

Toon­Sur­face allows an artist to adjust the shad­ing with­out break­ing or alter­ing other parts of the scene.

ToonOutline

Too­nOut­line deals with trac­ing clean con­tour out­lines around objects, seams and creases to sim­u­late a car­toon or manga look.

ToonOutline

This set of mate­r­ial and lens shaders ren­ders high qual­ity cel style out­lines and offers more flex­i­bil­ity than native con­tour solu­tions while being more straight­for­ward to use in daily production.

Usage

In com­bi­na­tion with the Toon­Shader it is pos­si­ble to pro­duce 3D car­toon ani­ma­tion that inte­grates well with tra­di­tional 2D environments.