diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2017-05-02 16:26:18 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2017-05-02 16:26:18 +0300 |
commit | ec9ce9e11864146dc6748f2388b56f95346a5053 (patch) | |
tree | 57411cf2201caa9a2bf927f4e2914ca31031a407 /source | |
parent | 8c660c780171fe6ddba78b611899fe99064d2a57 (diff) |
Draw Manager: No need of glScissor for external engines
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/draw/engines/external/external_engine.c | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/source/blender/draw/engines/external/external_engine.c b/source/blender/draw/engines/external/external_engine.c index 7edb224ed11..ad7c8ce7da3 100644 --- a/source/blender/draw/engines/external/external_engine.c +++ b/source/blender/draw/engines/external/external_engine.c @@ -142,19 +142,9 @@ static void external_draw_scene(void *UNUSED(vedata)) { const DRWContextState *draw_ctx = DRW_context_state_get(); Scene *scene = draw_ctx->scene; - View3D *v3d = draw_ctx->v3d; RegionView3D *rv3d = draw_ctx->rv3d; ARegion *ar = draw_ctx->ar; - RenderEngineType *type; - GLint scissor[4]; - - rcti border_rect; - bool render_border; - bool clip_border; - - render_border = ED_view3d_calc_render_border(scene, v3d, ar, &border_rect); - clip_border = render_border && !BLI_rcti_compare(&ar->drawrct, &border_rect); /* Create render engine. */ if (!rv3d->render_engine) { @@ -176,27 +166,10 @@ static void external_draw_scene(void *UNUSED(vedata)) gpuPushProjectionMatrix(); ED_region_pixelspace(ar); - if (clip_border) { - /* For border draw, we only need to clear a subset of the 3d view. */ - if (border_rect.xmax > border_rect.xmin && border_rect.ymax > border_rect.ymin) { - glGetIntegerv(GL_SCISSOR_BOX, scissor); - glScissor(border_rect.xmin, border_rect.ymin, - BLI_rcti_size_x(&border_rect), BLI_rcti_size_y(&border_rect)); - } - else { - return; - } - } - /* Render result draw. */ type = rv3d->render_engine->type; type->render_to_view(rv3d->render_engine, draw_ctx->evil_C); - if (clip_border) { - /* Restore scissor as it was before. */ - glScissor(scissor[0], scissor[1], scissor[2], scissor[3]); - } - gpuPopProjectionMatrix(); } |