Here is my Ultimate Cel-Shading Shader, free for anyone to use (attribution not required but appreciated).
This is a compilation of my own work, as well as ideas/theory from LightningBoyStudios, Pierre Schiller, Atsushi Tamaki, Lohit Petikam, and Raymond Cripps, and others too numerous to mention. I believe it’s the most comprehensive, flexible, and scalable option out there.
@Reuf_Novalic and @kaamura - hope you find it useful Please let me know if you run into any pain points with the shader, or anything in the documentation that’s poorly wording or confusing!
Thanks to @Charles_Weaver , I’ve made a small update to this- I’ve changed the default hair input color to be black, so it won’t affect anything unless you plug something in. Nothing major, but a small quality-of-life fix ucss_jan23.blend (3.2 MB)
Now, now. I wouldn’t say the toon bsdf is downright horrible, it’s just pretty limited. Sometimes the simple ways are the best. Some of the best anime style artworks are rendered in cycles.
That being said, eevee is a lot more flexible when it comes to toon shaders. Being able to directly modify a shader’s color after it’s calculated is a really powerful tool.
But in the end, it’s all about the artist, not the tool.
I understand your point, but I’ll have to disagree with you on this one. While it’s not as fast as eevee, that doesn’t make it absolutely unusable for animation. It may take longer, but it’s not lacking any functionality.
I personally prefer eevee when it comes down to animation, but my original point still stands – if the artist decides that it’s worth using cycles for a particular work, and they’re willing to wait for it, why not? Every tool has its ups and downs, but it’s the artist’s job to evaluate them.
Nevertheless, I do agree that eevee is better than cycles for NPR shading and stylized animation, but that doesn’t make cycles horrible or a non-option.
I’m sorry if you took this personally, didnt mean to. I was speaking in the context of cel shaded animations exclusively. Doing NPR removes main benefit of Cycles (more accurate lighting). And getting close to speed of Eevee requires some serious hacks. Like computing your own fake lights so the result can be plugged into direct color output and rendered at 1 sample. If Eevee can do the same with just Shader to RGB node, why bother with reinventing the wheel
Even in my limited experience with animation, I saw that iteration speed is everything. Since Blender realtime playback on rigs is quite slow, you’ll be forced to make test renders from time to time. And personally I wouldn’t like for them to take hours
Not at all! I apologize if my reply sounded aggressive in any way. I wasn’t trying to sound argumentative, I just thought the discussion was interesting.
Sorry to bump something super old, I’m completely new here and not sure what the etiquette is. I’d love to use this but for the life of me I can’t get it to work on blender 2.92 even though it says it’s compatible with 2.8-3.4, I’ve tried tinkering with settings but I’m admittedly not that experienced with shaders, no matter what I do it always just outputs one colour. I got it to work in 3.3 pretty easily but everything past 3.0 tends to be laggy for me so I don’t like to use it if I don’t have to. Has anyone else gotten it to work on 2.92?
(Also, to anyone who gets a bunch of jumbled characters when trying to download it from the notion page try using a different browser. No idea why it was happening but that worked for me!)
Did you get it to work finally? That’s interesting. I like using old materials in newer versions. I think, sometimes the nodes change and it might be calling for a node that didn’t exist in 2.92.
I did have an issue recently that I’m trying to solve. Straight on the color goes transparent unless I separate all the selections. Which is fine. When I turn the camera to the rear view of the character I can see through the character. Which, is well, not fine. I’ve tried:
turning off backface culling
adding a solidify modifier. (It gets the splotches all over the mesh)
I’ve never ran into this before but…hopefully its something simple that’s already been figured out. It is a really cool shader.
So. After going over my process. I found that changing the Blend Mode to “Opaque” for each material used stopped making them see through. Sorry. I didn’t want to change too much because there’s all these inputs on the shader.