[UE5] Anime/Toon/Cel Shading Model (WORKS WITH LAUNCHER ENGINE VERSIONS)

WOW this is amazing, i wan on edge for updating to 5.5 but now im sure about it. cant wait for the video and the updated example project

1 Like

Enjoy! <3

1 Like

Will you create a branch for a launcher compatible version of the 5.5 version?

The 5.5 branch is launcher compatible.

2 Likes

Good to know, I’ll try to use that then :+1:

Can I use this cel shading system for default ue5 or is it just for the built one?

It works with both.

2 Likes

Added 5.5 Example project.

https://www.dropbox.com/scl/fi/7ix5y6zpoxfp970ut67ju/SelShaderExampleUE5.5.zip?rlkey=lqny51fxyt24irntxrdutye2l&dl=1

2 Likes

So i downloaded your repository and placed in the files you told us to, but im confused what am i supposed to do to get the shader and look?

The sample project contains examples you can look at to see how things work.
https://www.dropbox.com/scl/fi/7ix5y6zpoxfp970ut67ju/SelShaderExampleUE5.5.zip?rlkey=lqny51fxyt24irntxrdutye2l&dl=1

I looked at the example already and seen the example material wasn’t post process, Are we not supposed to use post process materials with this?

This shading model isn’t accomplished through a post process, it is done properly by altering the shader compilation instructions to produce these results. You can use post processes with it just like you would any other Unreal project.

Ok

This is really cool. For 5.5, are you setting it up the same with your exposure adjustment settings?

yes.

Well, at the moment we can just use a texture in the BaseColor node and another Texture in the ClearCoat node and see the first one in the illluminated area and the second one in the shadow area…
But what about roughness? or emissive? or all the others parameters? They all overrides the Texture without knowing if is lighted up or not… This is good, but sometimes I would like to control this behaviour: I would like to just use your map that mask where the light is hitting the mesh and where’s not… the problem is that the ClearCoat node is already masked… How can I get the mask of black and white that is masking ClearCoat in shadows and BaseColor in light and use it as I want in runtime?

Unfortunately you can’t. That data is only available at the shading model level.

1 Like

:smiling_face_with_tear: Thanks…
Any suggestions about how to get a mask of that type? In Blender is one of the first and basic node you should use in your shading model and is called ā€œDiffuseā€ā€¦ I can’t believe that in UE5 it’s impossible to replicate that.
(I actually made a mask using the directional light data that is working as I wish, but I need to interact with all the lights in scene… not only the sun).


Thank you for your time.

It is possible, but as I said, only at the shading model level, through modifications like the ones I have made for the one this thread is about. If you want to see how I’ve achieved my system you can look at my file changes here. https://github.com/EpicGames/UnrealEngine/compare/release...envieous:UnrealEngine-SelShader:5.5-Selshader

1 Like

Thank you for your hard work! I have been digging into this problem the past three days and I was unhappy with the results from using post process materials and unlit materials. I tried your shader changes and nailed the NPR look I was going for immediately. So again, thank you! <3

1 Like