Jump to content

Cel shading

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 174.46.221.17 (talk) at 19:59, 1 July 2013. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

A representation of a space suit from Tintin's Explorers on the Moon with a basic cel-shader (also known as a toon shader) and border detection.

Cel shading (often misspelled as 'cell shading') or toon shading is a type of non-photorealistic rendering and an illumination model designed to make computer graphics appear to be hand-drawn. Cel-shading is often used to mimic the style of a comic book or cartoon. It is somewhat recent, appearing from around the beginning of the twenty-first century. However, the result of cel-shading has a very simplistic feel like that of hand-drawn animation. The name comes from cels (short for celluloid), the clear sheets of acetate which are painted on for use in traditional 2D animation.[1]

Process

The cel-shading process starts with a typical 3D model. Where cel-shading differs from conventional rendering is in its use of non-photorealistic lighting. Conventional (smooth) lighting values are calculated for each pixel and then mapped to a small number of discrete shades to create the characteristic flat look – where the shadows and highlights appear more like blocks of color rather than mixed in a smooth way.

Black "ink" outlines and contour lines can be created using a variety of methods. One popular method is to first render a black outline, slightly larger than the object itself. Backface culling is inverted and the back-facing triangles are drawn in black. To dilate the silhouette, these back faces may be drawn in wireframe multiple times with slight changes in translation. Alternatively, back-faces may be rendered solid-filled, with their vertices translated along their vertex normals in a vertex shader. After drawing the outline, back-face culling is set back to normal to draw the shading and optional textures of the object. Finally, the image is composited via Z-buffering, as the back-faces always lie deeper in the scene than the front-faces. The result is that the object is drawn with a black outline and interior contour lines. The term "cel-shading" is popularly used to refer to the application of this "ink" outlining process in animation and games, although originally the term referred to the shading technique regardless of whether the outline was applied.

The Utah teapot rendered using cel-shading:

The Utah Teapot rendered using cel-shading.

  1. The back faces are drawn with thick lines
  2. The object is drawn with a basic texture
  3. Shading

Steps 2 and 3 can be combined using multi-texturing (see texture mapping).

Another outlining technique is to use 2D image-processing. First, the scene is rendered (with cel-shading) to a screen-sized color texture:

Then, the scene's depth and world-space surface normal information are rendered to screen-sized textures:

A Sobel filter or similar edge-detection filter is applied to the normal/depth textures to generate an edge texture. Texels on detected edges are black, while all other texels are white:

Finally, the edge texture and the color texture are composited to produce the final rendered image:

Cel-shading in video games

Cel-shading in interactive media got its start with Jet Set Radio in 2000 for the Sega Dreamcast. A few games use cel-shading today, including more mature titles such as No More Heroes and Crackdown. The Legend of Zelda: The Wind Waker and Dragon Quest VIII are also popular examples of cel-shaded games. Pokemon X and Y versions will also be cel-shaded.

List of cel-shaded media

Video games

Commercials

See also

References

  1. ^ Hachigian, Jennifer. "Celshader.com FAQ". Retrieved August 2, 2005.