diff options
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_draw.c')
-rw-r--r-- | source/blender/editors/space_view3d/view3d_draw.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c index 3140ae76d4b..66113ec4941 100644 --- a/source/blender/editors/space_view3d/view3d_draw.c +++ b/source/blender/editors/space_view3d/view3d_draw.c @@ -78,6 +78,7 @@ #include "ED_armature.h" #include "ED_keyframing.h" +#include "ED_gpencil.h" #include "ED_mesh.h" #include "ED_screen.h" #include "ED_space_api.h" @@ -1092,6 +1093,7 @@ void backdrawview3d(Scene *scene, ARegion *ar, View3D *v3d) { RegionView3D *rv3d= ar->regiondata; struct Base *base = scene->basact; + rcti winrct; /*for 2.43 release, don't use glext and just define the constant. this to avoid possibly breaking platforms before release.*/ @@ -1137,6 +1139,9 @@ void backdrawview3d(Scene *scene, ARegion *ar, View3D *v3d) glDisable(GL_DITHER); + region_scissor_winrct(ar, &winrct); + glScissor(winrct.xmin, winrct.ymin, winrct.xmax - winrct.xmin, winrct.ymax - winrct.ymin); + glClearColor(0.0, 0.0, 0.0, 0.0); if(v3d->zbuf) { glEnable(GL_DEPTH_TEST); @@ -1416,7 +1421,8 @@ static void draw_bgpic(Scene *scene, ARegion *ar, View3D *v3d) glMatrixMode(GL_MODELVIEW); glPushMatrix(); - glaDefine2DArea(&ar->winrct); +// glaDefine2DArea(&ar->winrct); + ED_region_pixelspace(ar); glEnable(GL_BLEND); @@ -2078,8 +2084,8 @@ void view3d_main_area_draw(const bContext *C, ARegion *ar) } /* draw grease-pencil stuff */ -// if (v3d->flag2 & V3D_DISPGP) -// draw_gpencil_3dview(ar, 1); + //if (v3d->flag2 & V3D_DISPGP) + draw_gpencil_3dview((bContext *)C, 1); BDR_drawSketch(C); @@ -2095,9 +2101,9 @@ void view3d_main_area_draw(const bContext *C, ARegion *ar) if(rv3d->persp>1) drawviewborder(scene, ar, v3d); if(rv3d->rflag & RV3D_FLYMODE) drawviewborder_flymode(ar); - /* draw grease-pencil stuff */ + /* draw grease-pencil stuff - needed to get paint-buffer shown too (since it's 2D) */ // if (v3d->flag2 & V3D_DISPGP) -// draw_gpencil_3dview(ar, 0); + draw_gpencil_3dview((bContext *)C, 0); drawcursor(scene, ar, v3d); |