Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_draw.c')
-rw-r--r--source/blender/editors/space_view3d/view3d_draw.c16
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);