Eevee Next refraction vs. Shader to RGB - need context

From the start I want to say that I know Eevee Next and NPR rendering is a hot-button topic, and that I’m not looking to instigate a fight or stir the pot. I’ve just been banging my head against the new context that Shader to RGB exists in, and since the devtalk thread is closed I’m looking for a bit of help here.

I’ve been updating my NPR/Toon shaders in Eevee to better conform to the new ray tracer, and the more I learn the happier I’ve been. The point I’m most stuck on is with shaders that rely on transparency or refraction. For materials like water or colored glass, I’ve been using a setup that takes a refracted result, converts it to RGB, then runs it through different node setups to tint the result to whatever color I’m going for. Example below:


Shader to RGB will throw away transparency information, but can still use refraction information, which means that we can do things like tint the result or use Map Range/color ramps to reduce the number of colors. However as far as I can tell Eevee Next’s Shader to RGB will dump refraction information as well:

To show that this isn’t the result of the material settings, here is that same setup without the Shader to RGB:

I’ve spent a couple days trying to find a workaround for this and browsing the closed thread on devtalk, but I haven’t really found anything that’s been helpful. What’s happening under the hood that I’m losing this data now? Has anyone else found a way to retain refraction, or even transparency results in such a way that they can be edited by nodes, or is this just the way things are now?

Is there a reason why you use EEVEE-Next?
Can’t you use a EEVEE. :thinking:

The link below is a link on a similar topic.
I haven’t looked at the whole thing, but I might have some information I need. :slightly_smiling_face:

Blender 4.2 - EEVEE-Next Feedback - Feature & Design Feedback - Developer Forum

Eevee legacy no longer exists in the current version of Blender. I’m using “Eevee Next” to refer to the current version of Eevee. My examples of shaders in Eevee were from version 4.1, but I’m currently working to make shaders for the current version of Blender and beyond.

Additionally, I’ve already read through the thread you linked. It’s the thread I was referring to in my original post. The specific post you linked is mostly just a description of the problem I’m having.

I connected the link incorrectly, so I corrected it. :sweat_smile:
Looking at the link, it seems difficult to use Shader to RGB as before in EVE-Next.

Many people use different versions of blender for many reasons.
Wouldn’t it be better to use a blender that can use EEVEE? :slightly_smiling_face:

I know that I can use the previous version of Eevee, and I do when it suits my needs. However, as I’ve already said, right now I’m building a pack of assets for sale for people who use the current version and beyond so I need solutions that are relevant to new versions.

I also don’t need to be told that shader to RGB is different and more complicated than it was before. That’s the problem I’m looking for help with. I’m simply trying to see if anyone as any new insights from the month or so since that thread has been closed that could help, or if anyone has had any useful workarounds they want to share.

1 Like