Custom shading model by Plugin

It would be very great, if it possible to make custom shading models without engine modifications.

The reason I request it, because all other engines allow to create custom shaders, but Unreal Engine does not, at least without engine modification. For example, in Unity, we can create new shader by pressing a single button and start writing code.
It would be especially helpful for stylized games.

There are couple ways to create custom looking shading right now without editing sources:

  1. Make an Unlit material and make custom calculations there. But we have to use custom lighting and do not have any access to static lighting data (lightmass, light cache e.t.c.).
  2. Just make some shading over existing PBR.
  3. Make a post process material and use final rendering passes to achieve the desirable look.

But we do have many limitations with these options, especially for mobile games.

So my request is to add functionality so we could create custom shading model by plugin, without any engine modifications, as it makes it harder to support and develop a game in a team.

To make it clear, check out this thread:
https://forums.unrealengine.com/development-discussion/rendering/1537277-toon-shading-models-stylized-rendering-experiments

By the way, another good thing is to expose lighting info to material nodes, so we could make custom looking shading using material editor.

Thank you!

2 Likes

+1 Hope this gets added as soon as possible, right now is painfull to make any non realistic shader or cheap workaround

3 Likes

agree, would be nice to see. Stylized games are just as important as photorealism.

3 Likes

+1. Come on, Epic. You’re so close to greatness…

1 Like

+1 Wow it’s surprising this doesn’t exist. Now i understand why some people use unity instead.

+1 this would be very nice, I’d like to not touch engine code and add anything custom as a plugin or project code if possible

  • 1 I hope the developers add this opportunity in the near future

Hi,

I did look into doing this but most needs are handled by our new Strata tech instead:

Once Strata is the primary material creation tool, we will look again at how we can open them up further for other customisations.

Thanks,
Jon

No the strata material is not for this. Strata is primarily for programmable blending of existing shading models not to allow completely different shading techniques. One most famous example is the Stylized Toon Shading, you cannot create high quality toon rendering with existing ones UE provides; you need to modify engine files for that to work.

5 Likes

Apparently, because of refactoring done to support Strata, base materials are getting a massive increase in instruction count starting in UE 5.1: Shader Instructions 2-3 times more in 5.1.

The introduction of Strata is going to make engine modification more difficult, and if you’re modifying it around UE 5.1, you’re carrying over that performance bug from the refactoring.

Strata may be a net negative for NPR artists/developers using UE. Hopefully things change for the better soon? NPR is very popular in today’s digital entertainment industry, and to see UE struggling to offer support for it is very saddening.

3 Likes

Strata in general is going to be way heavier than regular materials. To be honest I dont see the appeal of it even working with advanced materials everyday myself. Looks like a convoluted way to layer a few materials.

Artists will have a very hard time working with them due to its abstract input complexity and tech people will struggle with an even more complex and fixed pipeline.

Not sure about it at all. To me doesn’t look like an improvement at all, and looks like epic is going to make it the main mat method in the future.