Hello,
I am trying to make a toon shader for this character and other similar ones. I am currently shading this model with an unlit shader to make it look cartoony:
I have found inspiration for toon outline shaders, but nothing quite like what I am looking for. I am wondering if its possible to create a black outline for different “similarly or same colored” areas of the character?
For example this character has 5 or so “main colors”: red, dark red, white, black grey, and brown. Does anyone know if it is possible to create “outlines” for each differently colored area of the model?
Below is an image of the desired output look, as well as an image sowing the “color blocking” for how the desired outline shader might work:
If anyone has any ideas or know how I can get something like this working, that would be awesome!
I’ve tried toon shading in the past. Most of it is based on notes from GuiltyGearXrd. For guilty gear the outline color is based on a darkened version of the main color e.g. white pants => grey outline, brown hair => dark brown outline. To get an outline without inner lines you can still use the inverted hull method but you just push the verts away from the screen. Guilty gear uses this for hair sometimes to remove lines.
You probably wont be able to get the lines looking exactly like you want because the inverted hull wont help with intersecting objects. To get intersecting lines you need a system similar to Blenders ink system, but it’s way to slow to use in a game (it’s based on edges). This was a test I did with intersecting lines.
Another option might be to use a post processer like Pixar did in Ratatouille. This would probably get fairly close to your sample image but its still a bit expensive and a pain to setup. It might also need multiple passes to set the colors. I’d probably just stick with the standard inverted hull.
Probably the easiest way is to just add a solidify modifier in blender to get the toon outline. Then you don’t need any special shaders, you just apply apply a outline color material to each part.
1 Like