Page MenuHome

Eevee refractions don't work anymore
Closed, ResolvedPublic

Description

System Information
Operating system: Linux-5.0.12-050012-generic-x86_64-with-neon-18.04-bionic 64 Bits
Graphics card: GeForce GTX 1080 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 430.50

Blender Version
Broken: version: 2.81 (sub 14), branch: master, commit date: 2019-10-08 09:53, hash: rB270562fe125d
Worked: b1baebd0224a806082ffec99fd6db0667e0ef49d

Short description of error
Refractions make the mesh look flat shaded and stop working completely when you zoom out a little bit.
oct8 version:


oct1 version:

Exact steps for others to reproduce the error
Open the attached file and go into material view.

Event Timeline

Addition information for the developers.

I can confirm this issue using 2.81 (sub 14), branch: master, commit date: 2019-10-06 14:05, hash: rB54a9649e2636

This is related to the other recent bump node bug reports.

Setting the shading to flat instead of smooth results in the refraction looking normal.

Replacing the bump node with the displacement node results in the refraction looking normal.

Cranking up the midlevel on the displacement node (about 70 here) results in a similar effect to the bump node issue.


System Information
Operating system: Windows-7-6.1.7601-SP1 64 Bits
Graphics card: GeForce GTX 470/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 391.35

@Clément Foucault (fclem) I've noticed this task was closed as a duplicate and you've fixed it in the T70614 however if I test the file on this page the issue is still there. Can you please test the file attached to this task?

Well I'm not sure this is to be considered a bug. Plugging the bump map into the displacement socket is not supported. And it wasn't even supported before the bump refactor. Only the resulting artifact has changed. Cycles seems to handle this more gracefully but I'm not sure we can consider this a bug.

A more in depth analysis reveals that rB9b034355e4ad introduced it. This is because the geometry nodes added by the bump relinking have the dFdx/dFdy offsets applied to their values. However, the geometry node does need to have the dFdx/dFdy offsets applied if they are used as part of the bump tree (i.e: used as texture coordinate).

More simply put, the problem comes down to this:

I believe this is because the normal is not normalized after applying the dFdx/dFdy offsets.

Clément Foucault (fclem) lowered the priority of this task from Needs Triage by Developer to Confirmed, Medium.