Page MenuHome

Adding very weak emissions to the scene weakens the highlights in cycles render
Confirmed, NormalPublicBUG

Description

System Information
Operating system:macOS 10.15.2
Graphics card:Radeon Pro 580X 8 GB

Blender Version
Broken:2.82 Beta 2020-01-22 12:36 Hash:a60a623a1ac5
Worked: (optional)

Short description of error
Adding very weak emissions to the scene weakens the highlights in cycles render

Exact steps for others to reproduce the error

Uploaded blend file has strong emission, very weak emission and background light.
Very weak emissions have keyframes, 1 frame has a value of 0, and 2 frame have a value of 0.001.
Comparing the rendered images shows that the highlights of the 2 frame is weaker than the highlights of the 1 frame.
It seems strange that the highlights get weaker if you add a very weak emission that does not affect the scene.
Not included in the video, but placing very weak emissions close to strong emissions has the same effect.
If you add weak radiation, I think it will be a bit brighter, but the result will be darker.

Event Timeline

It would be easier to test it if you simplified that scene. There are 88 thousand objects. I tried to delete the layer with those cubes but it takes Blender forever.

I upload a light sized file

Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Confirmed.Fri, Jan 24, 1:29 PM
Germano Cavalcante (mano-wii) changed the subtype of this task from "Report" to "Bug".

I can confirm.
Operating system: Windows-10-10.0.18941 64 Bits
Graphics card: Radeon (TM) RX 480 Graphics ATI Technologies Inc. 4.5.13559 Core Profile Context 26.20.12028.2

The problem is seen in both GPU and CPU

I don't think that this is a bug, but a known limitation of Monte Carlo ray tracing.
Cycles has 2 sampling methods.

Path Tracing
The Path Tracing integrator is a pure path tracer; at each hit it will bounce light in one direction and pick one light to receive lighting from.
Branched Path Tracing
The non-progressive Branched Path Tracing integrator offers finer control over sampling. It is similar to Path Tracing, but at the first hit it will split the path for different surface components and will take all lights into account for shading instead of just one.

You have a light with a strength of 678.4, the world background at 1, and then you add a light with a strength of 0.001. Frame 1: Ever pixel sample is either lit by the 678.4 light or the world background at 1, chosen at random. Frame 2: you add in another light source at 0.001. The result is that it will bring the overall lighting intensity down, because it is using up the random samples that would have gone to the other light sources.

If you switch to Branched Path Tracing, which takes all lights into account, you will see that the additional light makes the scene brighter.


Emissive materials have Multiple Importance Sampling on by default.

Materials with emission shaders can be configured to use Multiple Importance Sampling (Material Settings). This means that they will get rays sent directly towards them, rather than ending up there based on rays randomly bouncing around. For very bright mesh light sources, this can reduce noise significantly. However, when the emission is not particularly bright, this will take samples away from other brighter light sources for which it is important to find them this way.

Turn off Multiple Importance Sampling for the 0.001 light, even when using Path Tracing, and Frame 1 & 2 are identical, as the 0.001 light is too minuscule to contribute any change.