Blender Git Commit Log

Git Commits -> Revision 4b55abc

Revision 4b55abc by Pablo Dobarro (master)
November 18, 2020, 11:20 (GMT)
Fix T82586: Sculpt normals not updating with EEVEE enabled

The root cause of this bug is that the function that updates the PBVH
normals is drw_sculpt_generate_calls. As now both the overlays and
mesh can be drawn without using pbvh drawing, the normals were not
updating. This patch forces a normals updates also in the no PBVH
drawing code path of the overlays. This was affecting both shading and
sculpt surface sampling in both flat and smooth shading modes.

Having the sculpt normals being updated by the drawing code is a wrong
design which also causes other issues like:

Brushes that sample the surface and do multiple stroke steps between

redraws will sample invalid normals, creating artifacts during the
stroke clearly visible in some brushes.

Brushes that do not need to sample the surface update the normals on

each redraw. This affects performance a lot as in some cases, updating the
normals takes more time than doing the brush deformation. If flat shading
is being used, this is only necessary to do once after the stroke ends.

Reviewed By: fclem
Differential Revision: https://developer.blender.org/D9535

Commit Details:

Full Hash: 4b55abc335558262c1c897738b159b7a0b0ef5f9
Parent Commit: dfa2b0e
Committed By: Clément Foucault
Lines Changed: +13, -0

1 Modified Path:

/source/blender/draw/intern/draw_cache_impl_mesh.c (+13, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021