Page MenuHome

Eevee: Use manual derivatives for better quality bump.

Authored by Clément Foucault (fclem) on Aug 19 2019, 8:33 PM.



We basically duplicate the height map branch plugged into the bump node,
and tag each node in each branch as dx/dy/ref using the ssr_id (hack).

Then we add a one pixel offset on the texture coordinates if the node is
tagged as dx or dy.

The dx/dy branches are plugged into (new) hidden sockets on the bump node.

This match cycles bump better but have a performance impact. Also, complex
nodetrees can now become instruction limited and not compile anymore*.

  • : This is not a limitation introduced by this patch but a driver limitation that

this patch makes it more likely to bump into.

Diff Detail

rB Blender

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.
This revision was automatically updated to reflect the committed changes.