Blender Git Loki

Git Commits -> Revision 64d96f6

Revision 64d96f6 by Clément Foucault (master)
February 21, 2021, 00:33 (GMT)
EEVEE: Ambient Occlusion: Refactor

- Fix noise/banding artifact on distant geometry.
- Fix overshadowing on un-occluded surfaces at grazing angle producing "fresnel"
like shadowing. Some of it still appears but this is caused to the low number
of horizons per pixel.
- Improve performance by using a fixed number of samples and fixing the
sampling area size. A better sampling pattern is planned to recover
the lost precision on large AO radius.
- Improved normal reconstruction for the AO pass.
- Improve Bent Normal reconstruction resulting in less faceted look on
smoothed geometry.
- Add Thickness heuristic to avoid overshadowing of thin objects.
Factor is currently hardcoded.
- Add bent normal support to Glossy reflections.
- Change Glossy occlusion to give less light leaks from lightprobes.
It can overshadow on smooth surface but this should be mitigated by
using SSR.
- Use Bent Normal for rough Glossy surfaces.
- Occlusion is now correctly evaluated for each BSDF. However this does make
everything slower. This is mitigated by the fact the search is a lot faster
than before.

Commit Details:

Full Hash: 64d96f68d6ef0411383bb46d1a95d47769d927e5
Parent Commit: 6c2e1f3
Lines Changed: +388, -262

9 Modified Paths:

/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl (+272, -192) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_common_lib.glsl (+2, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/closure_eval_diffuse_lib.glsl (+6, -4) (Diff)
/source/blender/draw/engines/eevee/shaders/closure_eval_glossy_lib.glsl (+5, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/closure_eval_lib.glsl (+7, -10) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_gtao_frag.glsl (+77, -36) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_lib.glsl (+6, -12) (Diff)
/source/blender/draw/intern/shaders/common_math_lib.glsl (+6, -0) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_ambient_occlusion.glsl (+7, -1) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021