Toon Shading Models, Stylized Rendering Experiments

Those are fantastic news! Thank you so much for keeping this alive. I wonder if porting the shader to the final release of UE5 could be possible, it’ll be fantastic. But yeah so far so good, 4.26.2 will still be very robust for a while.

2 Likes

Hey Kusogaki!

I helped with 4.26.2 and I am happy to help out with this too! I plan to do some cleaning up and was planning to update the fork to 4.27 so I can raise another PR for that too.

Just with the Binaries though, I suppose I am a little unfamiliar with UE hygiene. Specifically what needs to be removed from Binaries exactly? As I can see they are still somewhat there in the older toon branches (4.25Toon).

2 Likes

Hey Murdii, thanks for the response.

ttytt, your merge was the first time I’ve ever integrated/received a pull request. When it merged, I was surprised to find all the binaries added. It might be OK as is actually.

Could you verify that you still have the gitignore (unaltered on your end) that was included in the repo? So long as the official gitignore was in there when you PR’d, it won’t add unnecessary binaries.

Edit: If you have time to add a new fork, that would be excellent - it would save me a ton of time, that I currently don’t have…

Then, later I will add in Chosker’s IBL, and the expansion of the Opaque parameter so we can use Decal Machine decals.

2 Likes

That is okay! It was one of the first times I have done any major work on someone elses Fork too hahaha.

But yup can confirm that the .gitignore from the original UE repo/your fork was not changed so I think the binaries should be fine.

I have created a new fork and made a new branch for 4.27Toon, I tested it by building the source code and opening the ToonMaterials example. So seems to be up to date now! So just waiting for you review on a new PR :slight_smile:

I have tried playing around with maybe implementing the toon shaders into UE 5 for that sweet sweet lumen support, but haven’t been able to get it working just yet :frowning:

4 Likes

Hey folks, for those following this thread the branch has now been updated to 4.27 and is under Kusogaki’s fork on the “4.27Toon” branch :slight_smile:

I am still a bit green with some of particulars of these shaders, I gave the changes a test before raising the pull request so hopefully it all works okay for you all!

3 Likes

Here’s a link to the 4.27 branch.

I’ll make it the default once a few hotfixes get in.

8 Likes

Tested after build 427.

However, the toon shader does not work and it looks like a default shader.

Hey, just wanted to say thanks for keeping this up to date. I’d edit the original post with the active branches but they removed that functionality, so…

2 Likes

They might give you editing permissions if you contact a staff member or reply to this thread: Need to be able to edit old posts - #16 by Doug_Richardson

2 Likes

I built both Murdii’s and then kusogaki77’s and they look great, imported my old projects and the toon shading works just fine but both times imagewrapper dll got corrupted or something, I’m probably trying once more and moving it to another drive in case that’s the issue

Managed to reach @Amanda.Schade for edit permissions on twitter, main post has been updated with @kusogaki77 's repo link but I can’t find @LittleCroak 's. If anyone has a link send me a DM and I’ll get it on the main post

4 Likes

Hey @doomfest , Id say just @kusogaki77’s is fine as I was able to merge mine with theirs and Id say theirs is now the most up to date (also I deleted my fork as now it is updated on Kusogaki’s its kind of not needed :smiley: ). Also mine isn’t anything special, literally just a merge with the new 4.27 stuff, it doesn’t change any of the actual Toon shader goodies :slight_smile: Thanks for all your hard work on this stuff everyone!

3 Likes

Just a quick question, can you compile it using VS2019 instead of 2017 but changing the Platform Toolset instead ? I know VS2019 uses v142 and 2017 uses v141. Or it doesn’t matter for Unreal Engine.

Does anyone have the repo still? All links are dead or gone and this effect/style is exactly what I had been looking for. D:

For the 1000+ time, you need to link your Epic credentials to github, is not a public repo.

this is incredbile and like to thank everyone for keeping this alive. However, I managed to compile from source but was wondering, are these artifacts normal? Sometimes the transition between the shadows are stepped and I was also wondering if there is a way to make it unlit entirely so there is no self shadowing etc. Anyway, are the artifacts normal?:


mainly stepped shadow and faceted areas on the shadow areas.

Sorry for the questions but is it possible to chose how many bends there are etc? cheers.

If by artifacts you mean the softer shadows, you’d might as well do it entirely in post process, which also applicable to vanilla launcher builds

Thanks everyone for all the work on this shader. I like the look of Scarlet Nexus, Tales of Arise, Genshin Impact++ and it’s so hard to copy. This shader has helped me a little on the way in achieving some decent results. :slight_smile:

But I’m having an issue with tricky light situations (4.27).

What works:
Large single color lights in general look amazing on characters. Most modern anime games hardly let ambient lights color their characters, usually 15% at most on top of a solid emissive base. But I fancy when a blue torch makes the character’s skin 90% blue. So this shader is fantastic, such as in this low-rez screenshot from Mahou arms.

The issue:
Small and texture-like lights, or small shadows landing on the front of a character become weird. They end up ‘passing through’ like this:

(Light itself is combined 3 (movable) lights with R/G/B light function. Toon Skin & Default Lit)

The light ‘overextending’ and as a result that odd extra shadow is what I struggle with here. As the light moves around everything (it often looks good, truthfully), so does the shadow.

Is there a way to retain all the good with none of the bad in this example? I’d love to keep the objects lit in a vivid way still.

I’ve tried multiple parameter configurations and none seem to cancel out the wrap-around. If someone can point me in the right direction or knows how to fix how the light hits geometry (like the Default Lit) while maybe keeping some of the cool light effects on the sides I’d be super thankful.

I also can’t get static lighting to work at all, but it’s possible to work around so far. That aside this shader is really good with large lights and shadows, so thanks again. I wish it was easier to change the way light works in Unreal but it also seems like such a complicated thing. :blush:

It seems like the ToonHair material is not working properly on the 4.27Toon version?

Looking at the YouTube video that @doomfest linked in the original post, I was able to get all the values for the material instance of the ToonHair material. From the video, at 1:34, you can see what the hair material should look like using these values for the material instance.

Using @kusogaki77 's 4.27Toon fork of the engine and @doomfest 's Example Project, I put in the values from the video, and my hair material looks like this:
image

I haven’t compiled the 4.26Toon or lower versions of the engine to test out whether or not this is from the 4.27Toon version specifically.

Does anyone know what’s going on here?

1 Like

I finally got my PC up and running, so I merged the 4.27.2 hotfixes into the 4.27Toon branch, and made 4.27Toon the default branch.

I don’t know when I can look into the hair shader issue. I don’t use it and I gotta get my own project into a serviceable state. But I’ll keep it on my radar.

Edit: I had issues compiling. If you run into any, you may want to check the following:

  • VS2019 Community. (VS2017 should work, too, but I don’t know if you need special toolchains or whatever to get it to compile)
  • Have MSBuild enabled in the Individual components VS Installer Settings
  • Disable HeadlessChaos and UnrealFileServer in VS (Go to Build>ConfigurationManager and remove the check under Build)
3 Likes