Page MenuHome

Shadow System Refactor
Closed, ResolvedPublicTO DO

Authored By
Clément Foucault (fclem)
Aug 9 2019, 4:40 PM
"Love" token, awarded by filibis."Love" token, awarded by evilvoland."Love" token, awarded by bnzs."Love" token, awarded by Dabi."Love" token, awarded by jeacom256."Love" token, awarded by Blendork."Love" token, awarded by MetinSeven."Love" token, awarded by eobet."Love" token, awarded by ofuscado."100" token, awarded by satishgoda."Love" token, awarded by YAFU.


The current shadow system has bad defaults and has too many limitations (light leak, does not work with duplis).
I propose to get rid of ESM and VSM and use old style PCF (percentage closer filtering) and let soft shadows jitter get rid of the banding.
Use 16bit depth by default and use smalest bias possible (see slides link).
This would improve the rendering and filtering cost.
Choosing a flat cubemap packing instead of tetrahedron projection would remove a conversion step. To do it, we would have to render a 1px border around the target faces.
Idea: We could discriminate lights based on their screen space size.
For dupli-lights, we would have to create a tagging system with object ids and time-stamps.

Estimate : 3 weeks

Event Timeline

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

May I suggest the following as a test scene, because this might be a probable scenario that beginners of Blender might try out (as I did) and then become a bit disappointed in Eevee:

Clément Foucault (fclem) changed the task status from Unknown Status to Resolved.Sep 6 2019, 12:02 AM
Clément Foucault (fclem) claimed this task.

Commited as rBd8aaf25c23fa