Toon Paint

 
 
 

Base | Highlights | Rimlights | Render Tree Usage

Category: Toon

Shader Family: Surface Material

Output: Color

This shader renders surfaces with cel-animation style material attributes, such as highlights and rimlights. When used in conjunction with Toon Ink Lens, its companion lens shader, and Toon Host, the material host for Toon-rendered contours, it is capable of rendering a very convincing simulation of cel-animated imagery.

This shader will also function as a shadow shader, but by itself it is only capable of creating shadows at full density (as though cast by a totally opaque surface).

Name

The shader's name. Enter any name you like, or leave the default.

Base

This is the base surface color upon which highlights and rimlights are painted.

Color

The surface is first painted a base color (like an undercoat of primer), before highlights and rimlights are added. This is, in effect, the shadow color of the surface.

Ambience

Influence the base color by the scene's global ambience color.

Enable

Switches ambience on or off.

Amount

The amount of influence by the ambience color. A setting of 0 has no effect.

Compositing

Choose from the available transfer modes to specify a compositing method for combining ambience with the specified base color. The following modes are available:

  • Normal. This is the default. It simply takes the foreground.

  • Add. The foreground is added to the background. Thus, no foreground will be visible if the foreground is black. This is useful for compositing such that the foreground appears to glow.

  • Multiply. Multiplies the foreground by the background. The result is always a color darker than either original foreground or background, much like the result of two overhead transparencies stacked and projected from a single projector.

  • Screen. The inverses of the two color values are multiplied. The result is a foreground brighter than either the original foreground or background.

  • Overlay. Either multiplies or screens, depending on the value of the background underneath. The overall result is that the background is not replaced by the foreground, but is mixed with it, while weighted by the value of the original background.

  • Lighten. Compares the values of the foreground and background and chooses the lighter of the two. The overall result is that the foreground can never do anything except make the background lighter.

  • Darken. Compares the values of the foreground and background and chooses the darker of the two. The overall result is that the foreground can never do anything except make the background darker.

  • Difference. The foreground is subtracted from the background, producing an inverted color effect.

  • Hue. Uses the luminance and saturation of the background and the hue of the foreground.

  • Saturation. Uses the hue and luminance of the background and the saturation of the foreground.

  • Value. Uses the hue and saturation of the background and the luminance (value) of the foreground.

  • Soft Light. If the value of the foreground is greater/less than 50% gray, the underlying background is lightened/darkened by the foreground. This is similar to shining a diffuse light on the image.

  • Hard Light. If the value of the foreground is greater/less than 50% gray, the background is screened/multiplied by the foreground. This is similar to shining a harsh light on the image.

  • Exclusion. Similar (though not identical) to Difference mode.

Shadows Only

Ambience is applied only to those regions of a surface in shadow (hidden from all light sources).

Highlights

Highlights are regions of color painted over the base color according to the lighting affecting the surface. Highlights' coverage of the surface may be adjusted, and their boundaries softened to varying degrees. Highlights are computed correctly for area lights.

Diffuse

This highlight is computed according to surface and lighting directions, like a Lambert shading function. This highlight is most useful for simulating rough surfaces. The glossy highlight is better for simulating shiny surfaces.

Enable

Switches the highlight diffuse color on or off.

Color

The highlight color. This color is painted over the base color according to the specified alpha value (0 being no contribution, and 1 being 100%). If the Illuminance parameter is enabled, the highlight color is scaled (filtered) by the color of illumination received at the point shaded.

Illuminance

When enabled, the highlight color is scaled (filtered) by the color of illumination received at the point shaded. Disabling this parameter results in a highlight whose color is uninfluenced by illumination.

Compositing

Choose from the available transfer modes to specify a compositing method for combining highlight color with the underlying surface color.

The modes are the same as described for the Compositing parameter for the Ambience options on the Base tab in this property editor.

Coverage

The extent of the highlight's coverage of the base. A value of 0 results in no highlight being painted, while a value of 1 results in a highlight which covers all parts of the surface not in shadow.

Softness

Softens the highlight's edge. A setting of 1 results in a highlight that is totally blurred. The blur has a smooth (cubic) falloff profile centered on the highlight's boundary.

Glossy

This highlight is computed according to the surface, light, and viewing directions, with the same response as the Phong shading function given an exponent of 1 (linear profile). This highlight is most useful for simulating shiny (specular) surfaces.

The glossy highlight has the same parameters (with the same functions) as the Diffuse parameters above.

Rimlights

Rimlights, like highlights, are regions of color painted over the base color. Unlike highlights, their location on the surface has nothing to do with lighting in the scene, but is determined by the surface's relation to an incident vector. Rimlights' coverage of the surface may be adjusted, their boundaries softened to varying degrees, and their profiles inverted.

Layer 1

The two rimlights, Layer 1 and Layer 2, are identical. However, Layer 1 is painted first, then Layer 2 is painted, on top of Layer 1.

Enable

Switches the rimlight on or off.

Order

The rimlight may be painted either over or under the highlights.

Color

The rimlight color. This color is painted over the base color and highlights according to the specified alpha value (0 being no contribution, and 1 being 100%).

Compositing

Choose from the available transfer modes to specify a compositing method for combining rimlight color with the underlying surface color.

The modes are the same as described for the Compositing parameter for the Ambience options on the Base tab in this property editor.

Coverage

The extent of the rimlight's coverage of the base. A value of 0 results in no rimlight being painted, while a value of 1 results in a rimlight that covers the entire direction hemisphere.

Softness

Softens the rimlight's edge. A setting of 1 results in a rimlight that is totally blurred. The blur has a smooth (cubic) falloff profile centered on the rimlight's boundary.

Invert

Inverts the rimlight's falloff profile.

Vector

The rimlight effect relies on an incident vector pointed towards the surface in question. Usually this is the camera direction itself but, alternatively, a user-specified vector or one of a variety of presets may be used.

The Custom Vector can be used to create thicker ink contours on the underside of objects and thinner ink contours on top, for example.

Space

The coordinate space (World | Camera | Object) used for specifying the incident vector.

Selecting camera coordinates will compute incident direction relative to the camera ("Upper Right" remaining in the upper right of the rendered image regardless of camera position or orientation, for example).

Using world coordinates will lock the effect to the direction of a surface regardless of its global orientation, while using object coordinates will rotate the effect along with the surface.

Custom Vector

A three-dimensional (x, y, z) vector. The vector is automatically normalized internally.

Layer 2

The Layer 2 rimlight has the same parameters (with the same functions) as the Layer 1 rimlight above.

Render Tree Usage

When used in conjunction with Toon_Ink_Lens, its companion lens shader, and Toon_Host, the material host for Toon-rendered contours, this shader is capable of rendering a very convincing simulation of cel-animated imagery. This shader will also function as a shadow shader, though by itself it is only capable of creating shadows at full density (as though cast by a totally opaque surface).

Creative Commons License Except where otherwise noted, this work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License