diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-11-09 11:03:43 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-11-09 11:03:43 +0300 |
commit | ae91ca7217414038442487ec76f192fd1e5ac584 (patch) | |
tree | 00bf015e3c1e48235723ed1c73acfbfe9e7f1e2b /source/blender/editors/gpencil/drawgpencil.c | |
parent | 521af99f59c2233eaf503e5a878997ccc9051362 (diff) |
OpenGL grease pencil render
Algorith: needed to add some functions since offscreen render doesn't have a context pointer
- draw_gpencil_3dview_ext
- gpencil_data_get_active_v3d
Diffstat (limited to 'source/blender/editors/gpencil/drawgpencil.c')
-rw-r--r-- | source/blender/editors/gpencil/drawgpencil.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/source/blender/editors/gpencil/drawgpencil.c b/source/blender/editors/gpencil/drawgpencil.c index 81ee2378717..dcd57efa926 100644 --- a/source/blender/editors/gpencil/drawgpencil.c +++ b/source/blender/editors/gpencil/drawgpencil.c @@ -744,22 +744,27 @@ void draw_gpencil_2dview (bContext *C, short onlyv2d) /* draw grease-pencil sketches to specified 3d-view assuming that matrices are already set correctly * Note: this gets called twice - first time with only3d=1 to draw 3d-strokes, second time with only3d=0 for screen-aligned strokes */ -void draw_gpencil_3dview (bContext *C, short only3d) +void draw_gpencil_3dview_ext (Scene *scene, ARegion *ar, short only3d) { - ARegion *ar= CTX_wm_region(C); - Scene *scene= CTX_data_scene(C); bGPdata *gpd; int dflag = 0; - + /* check that we have grease-pencil stuff to draw */ - gpd= gpencil_data_get_active(C); // XXX - if (gpd == NULL) return; - + gpd= gpencil_data_get_active_v3d(scene); // XXX + if(gpd == NULL) return; + /* draw it! */ if (only3d) dflag |= (GP_DRAWDATA_ONLY3D|GP_DRAWDATA_NOSTATUS); gp_draw_data(gpd, 0, 0, ar->winx, ar->winy, CFRA, dflag); } +void draw_gpencil_3dview (bContext *C, short only3d) +{ + ARegion *ar= CTX_wm_region(C); + Scene *scene= CTX_data_scene(C); + draw_gpencil_3dview_ext(scene, ar, only3d); +} + /* draw grease-pencil sketches to opengl render window assuming that matrices are already set correctly */ // XXX porting note, ogl render will probably be a window with one 3d region void draw_gpencil_oglrender (bContext *C) |