Cel Shading

Cel Shading 1   Cel Shading 2

Description:

This program displays a torus rendered with "cartoon lighting". The dot product between the normal and light vector is performed in object space, and used as a lookup into a 1D texture with "sharp lighting" values. The dot product is computed manually, or using a vertex program. The back faces are then drawn in wireframe mode to create an outline.

The download for this project contains two separate versions, one using NV_vertex_program to perform the lighting calculations and one using ARB_vertex_program.

Requirements:

EXT_compiled_vertex_array
EXT_texture_edge_clamp

Required for vertex program calculations:

NV_vertex_program / ARB_vertex_program

References:

Cel-Shading by Sami "MENTAL" Hamlaoui. From www.gamedev.net

Download:

celshading.zip (263 KB)