diff options
author | Jacques Lucke <jacques@blender.org> | 2021-06-14 13:44:13 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2021-06-14 13:44:13 +0300 |
commit | dddcf1e9bbf4a6d1f4ff03eaf0cb7e9228b18ec5 (patch) | |
tree | c20defa7efd54c933d20a296abefe567909bb6c0 /source/blender/draw/intern/draw_manager.c | |
parent | 3b162b7c185d089e93d892169a458d552196b7b6 (diff) | |
parent | c9dc55301cd7903b7ef7c045d337ada29aa809a1 (diff) |
Merge branch 'master' into temp-compact-node-prototypetemp-compact-node-prototype
Diffstat (limited to 'source/blender/draw/intern/draw_manager.c')
-rw-r--r-- | source/blender/draw/intern/draw_manager.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c index a088c27d3f3..37f6bbf52b5 100644 --- a/source/blender/draw/intern/draw_manager.c +++ b/source/blender/draw/intern/draw_manager.c @@ -1473,6 +1473,14 @@ void DRW_draw_callbacks_post_scene(void) GPU_depth_test(GPU_DEPTH_LESS_EQUAL); } + else { + if (v3d && ((v3d->flag2 & V3D_SHOW_ANNOTATION) != 0)) { + GPU_depth_test(GPU_DEPTH_NONE); + /* XXX: as scene->gpd is not copied for COW yet */ + ED_annotation_draw_view3d(DEG_get_input_scene(depsgraph), depsgraph, v3d, region, true); + GPU_depth_test(GPU_DEPTH_LESS_EQUAL); + } + } } struct DRWTextStore *DRW_text_cache_ensure(void) @@ -2601,8 +2609,7 @@ static void drw_draw_depth_loop_impl(struct Depsgraph *depsgraph, void DRW_draw_depth_loop(struct Depsgraph *depsgraph, ARegion *region, View3D *v3d, - GPUViewport *viewport, - bool use_opengl_context) + GPUViewport *viewport) { /* Reset before using it. */ drw_state_prepare_clean_for_draw(&DST); @@ -2618,7 +2625,7 @@ void DRW_draw_depth_loop(struct Depsgraph *depsgraph, } } - drw_draw_depth_loop_impl(depsgraph, region, v3d, viewport, use_opengl_context); + drw_draw_depth_loop_impl(depsgraph, region, v3d, viewport, false); } /** @@ -2634,7 +2641,7 @@ void DRW_draw_depth_loop_gpencil(struct Depsgraph *depsgraph, use_drw_engine(&draw_engine_gpencil_type); - drw_draw_depth_loop_impl(depsgraph, region, v3d, viewport, true); + drw_draw_depth_loop_impl(depsgraph, region, v3d, viewport, false); } void DRW_draw_select_id(Depsgraph *depsgraph, ARegion *region, View3D *v3d, const rcti *rect) @@ -2725,7 +2732,6 @@ void DRW_draw_depth_object( { RegionView3D *rv3d = region->regiondata; - DRW_opengl_context_enable(); GPU_matrix_projection_set(rv3d->winmat); GPU_matrix_set(rv3d->viewmat); GPU_matrix_mul(object->obmat); @@ -2784,7 +2790,6 @@ void DRW_draw_depth_object( GPU_matrix_set(rv3d->viewmat); GPU_depth_test(GPU_DEPTH_NONE); GPU_framebuffer_restore(); - DRW_opengl_context_disable(); } /** \} */ |