Page MenuHome

Eevee rendered viewport asserts if a sunlights shadow 'clip end' is set lower than 'clip start'
Open, Confirmed, LowPublic

Description

System Information
Operating system: fedora 30, 5.1.16-300.fc30.x86_64
Graphics card: nvidia 970m, 430.26 drivers

Blender Version
Broken: 7ad21c3876c2453f11fd509a0157639d615567fc, master, 2019-07-11
Worked: (optional)

Short description of error
Eevee rendered viewport asserts if a sunlights shadow 'clip end' is set lower than 'clip start'

Exact steps for others to reproduce the error

  • open file
  • set viewport to rendered
  • on the selected sun light, in the Properties Editor > Light > Shadow, set End to 4m (Clip Start is 5m -- anything below 5m should assert...)

BLI_assert failed: /blender/source/blender/draw/intern/draw_manager_data.c:1262, draw_view_matrix_state_update(), at 'is_negative_m4(viewmat) == !is_negative_m4(winmat)'

backtrace

1  raise                                                  0x7ffff1b5be75 
2  abort                                                  0x7ffff1b46895 
3  draw_view_matrix_state_update draw_manager_data.c 1262 0x28edf1c      
4  DRW_view_update               draw_manager_data.c 1349 0x28ee393      
5  DRW_view_create               draw_manager_data.c 1296 0x28ee100      
6  eevee_ensure_cascade_views    eevee_lights.c      1327 0x29242b8      
7  EEVEE_draw_shadows            eevee_lights.c      1496 0x2924c28      
8  eevee_draw_background         eevee_engine.c      226  0x2915ff2      
9  drw_engines_draw_background   draw_manager.c      1163 0x28e5121      
10 DRW_draw_render_loop_ex       draw_manager.c      1653 0x28e64bc      
11 DRW_draw_view                 draw_manager.c      1544 0x28e5fa0      
12 view3d_draw_view              view3d_draw.c       1459 0x2dff354      
13 view3d_main_region_draw       view3d_draw.c       1483 0x2dff3f9      
14 ED_region_do_draw             area.c              567  0x2ebe719      
15 wm_draw_window_offscreen      wm_draw.c           616  0x23c6497      
16 wm_draw_window                wm_draw.c           752  0x23c6a16      
17 wm_draw_update                wm_draw.c           934  0x23c6fe2      
18 WM_main                       wm.c                423  0x23c2ff2      
19 main                          creator.c           500  0x1d7e266

Details

Type
Bug

Event Timeline

Philipp Oeser (lichtwerk) triaged this task as Confirmed, Medium priority.

@Clément Foucault (fclem): not sure if this is rather harmless? (release builds seems to survive, but this sounds as if it might have unwanted consequences...)

possible solutions:

  • clamp this in code
  • let RNA handle start/end similar to what is done for scene frame_start, frame_end (in that: setting end < start will decrement start as well; setting start > end will increment end as well...)

feel free to throw back at me, I think I could do both...

Brecht Van Lommel (brecht) lowered the priority of this task from Confirmed, Medium to Confirmed, Low.Jul 14 2019, 7:25 PM