Amazing. Thank you for doing this. I have wanted to see if it were possible to do a Toon Shader for a long time, but it's something that I have been pushing away from me because I felt that Shaders were not something that I would be able to do at the level I am at, but it seems to be quite simple after all..
@@andresbocchigliere3227 it surely is because it's an unlit shader. I didn't try this one out yet but if you create a lit one it will most likely receive shadows (let's now hope that it doesn't receive it with the normal shading :') but with this code to cast shadows it must be working ig, I'll try this out when I can)
Fantastic video. Every other tutorial I've seen for this type of effect always try incorporating superfluous features which require C# coding and things like that, really appreciate the simplicity of just using CG.
I am blown away by the quality and simplicity of this. I'm new to Unity and 3D rendering in general and this is immensly helpful! I'll share as much as possible :D
How Wind Waker’s cel shading works, is that it shades the object with values from 0-255 (0 being black, and 255 being white), then looks in a texture at the coordinate of the pixel’s color value to find the final color. The texture is about 47.5% black on the left, 47.5% white on the right, and a smooth gradient from black to white in the middle 5% (rough approximation from memory on the percentage). Wind Waker’s cel shading is very interesting, it’s so simple, yet looks so good. Great video btw, cel shading is very interesting, and cool.
After testing the shader a bit in unity i found out that the model is not receiving any shadows from outside sources. For example a building casting a shadow on the ground has no effect on the character that this toon shader has been applied to. Although the shader is visually very good, this sitution makes it some what less useful for practical use. I dont know how to fix this but if anyone can chime in to improve this, it will be appreciated and beneficial for everyone.I am not mentioning that the model does not cast any shadows as someone in the commets below has already provided a fix for that.
Wow this is an excellent tutorial, concrete and simple, yet deep. Thank you for sharing your knowledge. Any chances you give us a little hint on how to add a "transparent" funcion?
Wow, this tutorial is amazing. I love all the customizable options that you added as well! And this only in an 8min video, awesome :D Any chance you could add an outline as well to this? (I know nothing about shaders :p)
It was a little too fast for me, but I'll watch it again until I get it! I've been working with Unity for 9 years now but I've been too lazy to learn shaders. Thank you so much for your video and please keep doing more!
I have an issue with the shader, I’m not sure what it is, but it’s either that sometime it will randomly show what the camera sees as a texture, or it becomes super reflective. Why does this happen?
Hi. can you check the cartoon and the comic reshade of the reshade software, both of them are good but also they bring some visuals problems to the game (you should check that, maybe you can fix those things)
Hello eleonora could I ask if there is a way to add transparency to this shader at all?? If so may I request to see it, it would be a great help. Thank you
Is there anyway i can change the colors of the highlights and shadows? have them set to a specific color. im trying to make a 3d sonic 1 that looks like pixel art and i have the 3d loop im testing this on. the lighting thanks to this tutorial is really good except the colors of the shadows and highlights is slightly off if there was only a way to change that.
Hi, I was just having a small problem, every time I move my back, the shades get dark as if under a shadow but when I get close, they light up as if the light is hitting that object directly
How do you make the object with this shader cast shadow? I added the shader to my gameobjects and suddenly they don't cast shadow anymore. Can you please help me?
It works perfectly for objects with textures, but how do I do it for objects without textures (Just a single base colour)? If I try to do it normally, it works but the object becomes quite light/white
really amazing!! what is the difference with using nodes? i'm starting to try to do this on my models but i want the best performance possible for mobile games :)
There is a bug in the code in the video in the Toon function. The floor method will return an integer that can be larger than 1. As the result from the Toon function should be between 0 and 1 the code will give you black and white and nothing in between. The way to solve it, is by multiplying by the _Detail variable again before returning: return floor(NdotL / _Detail) * _Detail;
Maybe, but for me the provided code didnt work. They way to make it work was to add the addition i mentioned above. In the node graph they block is called posterize, which does exactly the same thing
@@Markkaz88 maybe you didn't declare the property for the strength multiplier correctly. That would explain why the extra multiplication of _Detail made yours look better. Whatever at least it works :) for me the above code works correctly
Hey! I followed this without shader coding experience and the result looks great, thank you! :3 I was wondering if I can somehow access the written toon shader within a curved world shader made in Shader Graph? I am going for a toon shaded round planet and I am not sure if I would be able to translate the written toon shader into the shader graph at my current skill level qwq
Nice tutorial! But how do i let it cast shadows on itself? And is there any way to let the ambient color of the world affect the shaded object? It doesn't seem to do that right now