Page MenuHome

World Light Extraction
Confirmed, LowPublicTO DO

Tokens
"Love" token, awarded by gintszilbalodis."Love" token, awarded by SHEIKH."Love" token, awarded by Shimoon."Love" token, awarded by zhruith."Love" token, awarded by captGuimbal."Love" token, awarded by CobraA."Like" token, awarded by Striletsky."Love" token, awarded by ogierm."Love" token, awarded by corpse."Love" token, awarded by Alphisto."Love" token, awarded by andruxa696."Love" token, awarded by helderfcs."Love" token, awarded by monio."Love" token, awarded by mistajuliax."Love" token, awarded by tibor81."Love" token, awarded by rawalanche."Love" token, awarded by amonpaike."Love" token, awarded by bnzs."Love" token, awarded by szap."Love" token, awarded by ofuscado."Love" token, awarded by franMarz.
Assigned To
None
Authored By

Description

Eevee world probe is not suited for very high frequency details and even less for sunlight. For this we want to introduce a threshold. All light under the threshold would be pushed to the world diffuse/reflection probe. All light above the threshold would be moved to an importance sample map and used to position a (virtual) sun light that represent the missing energy from the probe.

We can position the sun in 2 ways: randomly per sample using the importance map, or fixed using a Spherical harmonic decomposition.
The first one offers more precise lighting (can work with multiple light source) when the second one offers more stable lighting (good for a sun).

The good thing is that this virtual sunlight can be shadowed! Thus making most of the light coming from the environment shadowed.

This should fix this sort discrepancy between cycles and eevee:

Estimate : 2 weeks

Event Timeline

Clément Foucault (fclem) lowered the priority of this task from 90 to Low.Aug 9 2019, 5:23 PM
Clément Foucault (fclem) created this task.

I did some exploration of the idea. (see P1099)

(This in WIP a lot of things are not working correctly, mainly light intensity)


It seems promising but doing it on CPU accurately is not feasible in an interactive manner.
So final implementation should be done on GPU.