# Is there a way to manually control vertex/face normals to get a more consistent toon shader?

I watched this video about the art style of popular fighting game Guilty Gear Xrd, and something which really interested me was the method that the artists used to get rid of ugly automatic-normal artifacts. They would manually mess with the normals so as to make parts of the model that are round shaded as if they were flat.

The example shown in the video is of a character whose face's normals are grouped on each side, on the chin, and under the eyes so as to make the toon shader look more like a traditional 2D anime.

With modified normals:

Without modified normals:

Notice that this sort of ugly artifacting happens when a toon shader is applied to Suzanne; look at her right eye and nose.

This would be very easily fixable if there were a way to group the normals on the left and right sides of the face.

• It's not technically artifacting, as it is accurate to the mesh. This effect is usually done by transferring normals from a different, simpler object. Blender's Data Transfer modifier can transfer normals to some extent, but it does not give good results due to glitches and crashes, and strange behavior such as marking all your mesh's edges as Sharp. – Ascalon Jul 25 '16 at 6:43
• You may have a look to the 'normal edit' modifier – lemon Jul 25 '16 at 8:58
• i would really like to know the answer to this too – A guest Sep 3 '18 at 8:16
• Are you talking about the shadows? Shadowing is determined from literal geometry, not from normals, and if you want to get rid of shadows, you have to use shadeless shaders-- no diffuse->shader to RGB. Or else, disable shadowing on the material, most easily done in properties/material/settings/shadow mode for Eevee. – Nathan Jan 1 at 1:50

## 2 Answers

Based on the other answer I created a Blender add-on for this exact purpose called TiNA which allows you to more easily transfer normals between objects. TiNA basically turns the somewhat overwhelming Data Transfer Modifier into a set of more comprehensible operations.
There's a special branch for those using Blender 2.80 beta.

 Hotkey           | Operation
------------------|-------------------------------------------------------------------
Alt+N            | Transfer Normals from selection to active object
Shift+Alt+N      | Transfer Normals from active object to all other selected objects
Ctrl+Shift+Alt+N | Clear Custom Normals data for entire selection
Alt+W            | Wrap Normals


In your case you could transfer the normals from a normals source mesh (based on the actual face mesh) by selecting it, then selecting the target object and hitting Alt+N.

you can watch my last tuto I show this with the modifier normal edit. you can rotate normals too by face or by edge or vertex selecting them and doing R+N but the modifier should be what you need normal edit modifier and I saw this tuto yesterday it's more on how to work on each normal Normal Editing & Bevel Tool Modifier

[and about Data Transfer Modifier it's more to correct the effect of the smooth shadding after a boolean for instance. but wow I've just explored it yesterday and the way to use it is really not easy, as to have to separate some parts of your mesh. and doing ctrl+J after it turned bad...I was thinking about an addon. so wow it should be very usefull "TiNA basically turns the somewhat overwhelming Data Transfer Modifier into a set of more comprehensible operations."]