Uses the Dot product and the normal to generate lighting and then uses a map range to convert the smooth shading to cell shading. Has a frensel outline which works well on smooth surfaces, but not very well on flat surfaces. Using the normal forshading means that the object will not react to lighting, instead you have to set the angle of the light by rotating the light direction node