diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-07-03 20:22:00 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-07-03 20:22:15 +0300 |
commit | bb9355e7031404a4e0374ad49928e0fcad1f0aaa (patch) | |
tree | 7750e6d58dea5b8cb0e841b751bbb5d31d315b51 /source/blender/draw/intern/draw_manager.c | |
parent | 79152371c3c259fed9d1106aa8003beef28168e6 (diff) |
View3D: Remove v3d->zbuf
This is because depth test is set before drawing anything now. There is no
case where we want to draw without depth test that is not selection and
this case is not handle by v3d->zbuf anymore.
UI assume depth test is off by default. The DRWManager assume it's on.
This should fix T55623.
Diffstat (limited to 'source/blender/draw/intern/draw_manager.c')
-rw-r--r-- | source/blender/draw/intern/draw_manager.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c index b7326ca5842..ea25739e52d 100644 --- a/source/blender/draw/intern/draw_manager.c +++ b/source/blender/draw/intern/draw_manager.c @@ -877,7 +877,7 @@ static void drw_engines_draw_text(void) PROFILE_START(stime); if (data->text_draw_cache) { - DRW_text_cache_draw(data->text_draw_cache, DST.draw_ctx.v3d, DST.draw_ctx.ar, false); + DRW_text_cache_draw(data->text_draw_cache, DST.draw_ctx.ar); } PROFILE_END_UPDATE(data->render_time, stime); @@ -1237,9 +1237,7 @@ void DRW_draw_render_loop_ex( RegionView3D *rv3d = ar->regiondata; DST.draw_ctx.evil_C = evil_C; - DST.viewport = viewport; - v3d->zbuf = true; /* Setup viewport */ GPU_viewport_engines_data_validate(DST.viewport, DRW_engines_get_hash()); @@ -1658,8 +1656,6 @@ void DRW_draw_select_loop( GPU_viewport_size_set(viewport, (const int[2]){BLI_rcti_size_x(rect), BLI_rcti_size_y(rect)}); DST.viewport = viewport; - v3d->zbuf = true; - DST.options.is_select = true; /* Get list of enabled engines */ @@ -1853,10 +1849,7 @@ void DRW_draw_depth_loop( GPU_framebuffer_bind(g_select_buffer.framebuffer); GPU_framebuffer_clear_depth(g_select_buffer.framebuffer, 1.0f); - bool cache_is_dirty; DST.viewport = viewport; - v3d->zbuf = true; - DST.options.is_depth = true; /* Get list of enabled engines */ @@ -1866,7 +1859,6 @@ void DRW_draw_depth_loop( } /* Setup viewport */ - cache_is_dirty = true; /* Instead of 'DRW_context_state_init(C, &DST.draw_ctx)', assign from args */ DST.draw_ctx = (DRWContextState){ @@ -1885,10 +1877,7 @@ void DRW_draw_depth_loop( drw_engines_init(); DRW_hair_init(); - /* TODO : tag to refresh by the dependency graph */ - /* ideally only refresh when objects are added/removed */ - /* or render properties / materials change */ - if (cache_is_dirty) { + { drw_engines_cache_init(); DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN(depsgraph, ob) |