diff options
Diffstat (limited to 'source/blender/editors/render')
-rw-r--r-- | source/blender/editors/render/render_internal.c | 12 | ||||
-rw-r--r-- | source/blender/editors/render/render_opengl.c | 2 |
2 files changed, 8 insertions, 6 deletions
diff --git a/source/blender/editors/render/render_internal.c b/source/blender/editors/render/render_internal.c index 541512a7cbb..be1a52242c3 100644 --- a/source/blender/editors/render/render_internal.c +++ b/source/blender/editors/render/render_internal.c @@ -760,12 +760,12 @@ static int render_view3d_disprect(Scene *scene, ARegion *ar, View3D *v3d, Region /* returns true if OK */ static bool render_view3d_get_rects(ARegion *ar, View3D *v3d, RegionView3D *rv3d, rctf *viewplane, RenderEngine *engine, - float *r_clipsta, float *r_clipend, bool *r_ortho) + float *r_clipsta, float *r_clipend, float *r_pixsize, bool *r_ortho) { if (ar->winx < 4 || ar->winy < 4) return false; - *r_ortho = ED_view3d_viewplane_get(v3d, rv3d, ar->winx, ar->winy, viewplane, r_clipsta, r_clipend); + *r_ortho = ED_view3d_viewplane_get(v3d, rv3d, ar->winx, ar->winy, viewplane, r_clipsta, r_clipend, r_pixsize); engine->resolution_x = ar->winx; engine->resolution_y = ar->winy; @@ -819,13 +819,13 @@ static void render_view3d_startjob(void *customdata, short *stop, short *do_upda RenderData rdata; rctf viewplane; rcti cliprct; - float clipsta, clipend; + float clipsta, clipend, pixsize; bool orth, restore = 0; char name[32]; G.is_break = FALSE; - if (false == render_view3d_get_rects(rp->ar, rp->v3d, rp->rv3d, &viewplane, rp->engine, &clipsta, &clipend, &orth)) + if (false == render_view3d_get_rects(rp->ar, rp->v3d, rp->rv3d, &viewplane, rp->engine, &clipsta, &clipend, &pixsize, &orth)) return; rp->stop = stop; @@ -875,6 +875,8 @@ static void render_view3d_startjob(void *customdata, short *stop, short *do_upda else RE_SetWindow(re, &viewplane, clipsta, clipend); + RE_SetPixelSize(re, pixsize); + /* database free can crash on a empty Render... */ if (rp->keep_data == 0 && rstats->convertdone) RE_Database_Free(re); @@ -1002,7 +1004,7 @@ static int render_view3d_changed(RenderEngine *engine, const bContext *C) update |= PR_UPDATE_VIEW; } - render_view3d_get_rects(ar, v3d, rv3d, &viewplane, engine, &clipsta, &clipend, &orth); + render_view3d_get_rects(ar, v3d, rv3d, &viewplane, engine, &clipsta, &clipend, NULL, &orth); RE_GetViewPlane(re, &viewplane1, &disprect1); if (BLI_rctf_compare(&viewplane, &viewplane1, 0.00001f) == 0) diff --git a/source/blender/editors/render/render_opengl.c b/source/blender/editors/render/render_opengl.c index 231f5bc8eb4..e4fe8cb5d34 100644 --- a/source/blender/editors/render/render_opengl.c +++ b/source/blender/editors/render/render_opengl.c @@ -191,7 +191,7 @@ static void screen_opengl_render_apply(OGLRender *oglrender) rctf viewplane; float clipsta, clipend; - int is_ortho = ED_view3d_viewplane_get(v3d, rv3d, sizex, sizey, &viewplane, &clipsta, &clipend); + int is_ortho = ED_view3d_viewplane_get(v3d, rv3d, sizex, sizey, &viewplane, &clipsta, &clipend, NULL); if (is_ortho) orthographic_m4(winmat, viewplane.xmin, viewplane.xmax, viewplane.ymin, viewplane.ymax, -clipend, clipend); else perspective_m4(winmat, viewplane.xmin, viewplane.xmax, viewplane.ymin, viewplane.ymax, clipsta, clipend); } |