EEVEE NPR Prototype - Feedback

I’ll ask the same question, but in a different way based on the answer above:

What value/parameter is that input expecting, or even allowing?

Is it just RGB (as a named attribute, or … A color channel linked from elsewhere), or also something else?

And while I did understand above where you wrote it is a lot like repeat zones in geometry nodes, I will note that I have never spent more than about 3 minutes trying to learn how repeat zones in geometry notes work.

(I know geonodes themselves, but repeats have been more difficult to understand and I’ve not decided to invest the time to learn it yet.)

So, there is a potential foundational knowledge gap that other artists may also have when trying to use the NPR. NPR does need to be somewhat easy to understand on its own basis (without hoping that the user has already figured out how geometry nodes work.)

1 Like

I have the following setup:

Blue cube has an AOV output called “blue”.

The purple area, over the blue cylinder, is desired. However, I don’t wish for the black&white cylinder to be affected by the shade object. Here’s a mockup of the desired result.

I’ve tried various things, including adding an AOV output for the blackwhite cylinder and trying to sort of mix it in ways with the other AOV, but nothing successful there. Any ideas on how to accomplish this?

Both the input and the output must have the same name.
They’re the same property, so you can’t have non-matching properties between the begin zone node and the end zone node.

This works the same in geometry nodes, the code for the UI is literally the same.

About the name, I don’t love it either. I’m open to suggestions.

Note, however, that new properties will have the same name by default. That’s why I chose an overly-generic name, because otherwise, if the user doesn’t bother to rename new properties, they end with something like this:


Which I find kind of weird. Zone IO works for any type.

1 Like

It doesn’t expect anything, the engine does nothing with it, other than ensuring that you have access to it every iteration and exposing it in the output node.
This is kind of like asking what value does the engine expect for an AOV. The engine or the compositor does not expect anything, they just ensure you have access to it so you can do whatever you want with it.

Not sure how to explain it better, there are probably some good tutorials out there for geometry nodes zones that do a much better job than me at explaining it. :sweat_smile:

Yes, I agree with this to some degree.
At some point I would expect adding built-in nodes for basic use-cases to ease the entry-barrier.
I don’t want to add more complexity than needed, but I wouldn’t want to limit users to whatever we provide by default either.

2 Likes

It’s hard to say just from an image.
If the purple shape is behind the b&w cylinder, I think this might be a bug.

Its true, but you can not just create Float socket, you need to creater socket and change its type. Maybe there could be an sub-menu to choose the type of input/output so name will be more correct.
But for now- just connect a link to Extend (last gray socket in the node) so both name and the type will be copied. And double click on the socket name in node body to edit it if you don’t like it.

2 Likes

AH - sorry, i suppose that message did read like a “what? bug?” notation. The purple shape is partially in front of the BW cylinder; i was just hoping for a way to … how to say it - for the purple shape to only be casting itself onto the blue cylinder, and not everything. Like, an inclusion/exclusion sort of thing.

(Basically, I’m still trying to recreate the goo engine screenspace color key effect)

(So - no, not a bug as you feared)

1 Like

I think this is what you want:

Here the front/right Cube outputs Blue to the Shadow Color AOV and 1 to the Shadow Mix AOV.
The back/left Cube doesn’t use AOVs at all.

2 Likes

Wow… I was so close at one point; I kept trying to get a 1 value involved, but never occurred to me to put two AOVs on the cube.

Outstanding. This is so very great, thank you.

1 Like


What’s the normal input for? i see no difference even if i connect something to it

Multiple layers of NPR refraction… very exciting to see this works so well!

6 Likes

This curvating-like effect above a certain value can produce an effect similar to crystal refraction (although it is not real, it is more suitable for stylization) hhh
In addition, the ability to directly obtain light intensity and color helps to make more experiential effects, and the operation is much more convenient and intuitive than before;
But there is always one regret: the NPR module still does not provide a means of transparency (as mentioned before, refraction has its own refraction does not work, can not completely replace transparency)




27 Likes

May I see the blend file to this please? I’d like to study and and try to expand with you on this idea.

I don’t know the best intended connections, but here’s something I got working.

2 Likes

It’s used internally for shadow bias and for the Shadow Mask calculation.
If you’re adding your own shading on top it may not result in any visible difference, though.

In most cases it’s probably best to leave the default and use your custom normal only for your custom shading computation, though.

Thanks for sharing, it looks awesome! :grinning:

About objects refracting onto themselves, it’s a tricky problem to solve.
It’s not impossible, but certainly not viable for the prototype.

1 Like

Hopefully soon, sadly. Production quality would mean sun lamp would be the only thing we can use. That is, of course, that’s the least affected but still visible upclose?

I really liked your idea, so I tried creating something with it as well. Unfortunately, I’m new to the forums, so I can’t embed videos/pictures yet. :frowning:
That said, I have to say I really like the assets already!

9 Likes

Small update:
The sample assets now ship directly as built-in node groups, no need to download them separately.
The plan is to try to ship functionality as node-groups instead of built-in nodes when possible.

8 Likes

Hi all, I’m looking forward to NPR development in blender but here’s some question I want to ask.

Will there be a friendly UI for users who don’t want to learn the NODE building setup to achieve an NPR style in blender?