Page MenuHome

Render looks differently in preview and render
Closed, ResolvedPublicKNOWN ISSUE

Description

System Information
Operating system: Linux-4.15.0-72-generic-x86_64-with-debian-buster-sid 64 Bits
Graphics card: GeForce GTX 1070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 435.21

Blender Version
Broken: version: 2.82 (sub 6), branch: master, commit date: 2020-01-14 23:08, hash: rB3edd8d5b075a

Short description of error
Render looks differently in preview and render, that makes unpredictable results on render

Exact steps for others to reproduce the error

  • Use the file:

  • First check Cycles render preview

  • Then render

Note, that tiny line appears on surface of the model. So render has unpredictable artifacts, that are not shown in preview.

Notes
If model was triangulated manually (X -> Limited dissolve, then Ctrl+T), artifacts do not appear.
Model generated by converting curve to mesh.

Event Timeline

I can confirm.

Rendering out a normal pass, the value of the Blue Channel changes from 0.00000 to -0.00000 on that line.

Here is the result of separating the channels in the compositor and running the normal layer's blue channel through a math node set to Less Than 0.00

@Brecht Van Lommel (brecht) So I am guessing this is a precision issue where F12 render uses a different precision than Viewport Shading: Rendered?

I am not sure if this is a known limitation or a bug so I will leave it up to a developer with more knowledge in this area.


Triaging Note: When using the Map Range node, the default From Min and To Min values are 0.00. Using the right then left arrow keys with the the values are as follows: 0.00 -> 0.100 -> -3.72529e-09
It doesn't go back to 0.00 as I expected it to do. Included in case this is helpful information for possibly solving this issue.


I then took a closer look at the model and saw that there are 4 faces that make up that line.

I had missed this before as the wireframe overlay setting was 0.5

Merging those faces

Fixes the issue of the line appearing in the render

It does so by setting the normal layer B channel to -0.00000


System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce GTX 470/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 388.13

Blender Version
Broken: version: 2.83 (sub 0), branch: master, commit date: 2020-01-15 06:16, hash: rB6c0eeb15698a

Michael Soluyanov (crantisz) renamed this task from Triangulation works differently in preview and render to Render looks differently in preview and render.Jan 17 2020, 7:47 AM
Michael Soluyanov (crantisz) updated the task description. (Show Details)
Philipp Oeser (lichtwerk) changed the task status from Needs Triage to Confirmed.Jan 20 2020, 11:42 AM

Can also confirm, thise very thin triangle(s) somewhat behave differently.

Brecht Van Lommel (brecht) changed the subtype of this task from "Report" to "Known Issue".Jan 21 2020, 6:34 PM

This is likely a raytracing precision issue, maybe a difference between the dynamic viewport BVH and static BVH for final render. In general long thin triangles can be problematic.

There is some work underway to improve issues like this, see D6250: Fix T43835, T54284: Cycles with no ray offsetting. More a known issue than a bug.

Brecht Van Lommel (brecht) triaged this task as Low priority.Jan 21 2020, 6:34 PM
Thomas Dinges (dingto) closed this task as Resolved.Nov 24 2022, 4:43 PM
Thomas Dinges (dingto) claimed this task.

Cannot confirm this anymore with Blender 3.4, but was likely fixed in 3.2 already, see https://wiki.blender.org/wiki/Reference/Release_Notes/3.1/Cycles#Ray_Tracing_Precision