Blender Git Commit Log
Git Commits -> Revision 60ddea7
Revision 60ddea7 by Clément Foucault (master) May 26, 2018, 21:28 (GMT) |
Workbench: Shadows: Add frustum check and camera occlusion test. If the object is manifold and the camera is in the shadow side, we can use the depth fail method to fix the inverted shadow glitch. Unfortunately this does not really work for non-manifold. Implementation details: We try to be as efficient as we can, we precompute camera near plane projected into 2D shadow space so we can test for intersection with the shadow boundbox easily. As the intersection test is done in 2D it's pretty fast. Unfortunately, this means the shadow bounds are all aligned to the same space and are not the smallest bound we could extract. |
Commit Details:
Full Hash: 60ddea7758128283f3ed3a15a2f8448691a811a8
Parent Commit: 975828e
Lines Changed: +207, -28
5 Modified Paths:
/source/blender/draw/engines/workbench/workbench_deferred.c (+51, -28) (Diff)
/source/blender/draw/engines/workbench/workbench_private.h (+14, -0) (Diff)
/source/blender/draw/engines/workbench/workbench_studiolight.c (+134, -0) (Diff)
/source/blender/draw/intern/draw_manager_exec.c (+6, -0) (Diff)
/source/blender/draw/intern/DRW_render.h (+2, -0) (Diff)
/source/blender/draw/engines/workbench/workbench_private.h (+14, -0) (Diff)
/source/blender/draw/engines/workbench/workbench_studiolight.c (+134, -0) (Diff)
/source/blender/draw/intern/draw_manager_exec.c (+6, -0) (Diff)
/source/blender/draw/intern/DRW_render.h (+2, -0) (Diff)