From f4840e878b95e87d60a8b66fad9a5777ce380dc5 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 21 Mar 2016 16:36:20 +1100 Subject: Fix T47848: Fix regression in sequencer GL render Own changes in 2.77 broke off-screen render with scene render size doesn't match output. --- source/blender/editors/space_view3d/view3d_draw.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'source/blender/editors/space_view3d') diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c index 4d7cc28ca3f..8c2d7877c8c 100644 --- a/source/blender/editors/space_view3d/view3d_draw.c +++ b/source/blender/editors/space_view3d/view3d_draw.c @@ -3309,13 +3309,19 @@ ImBuf *ED_view3d_draw_offscreen_imbuf( RegionView3D *rv3d = ar->regiondata; ImBuf *ibuf; const bool draw_sky = (alpha_mode == R_ADDSKY); - const bool own_ofs = (ofs == NULL); /* view state */ GPUFXSettings fx_settings = v3d->fx_settings; bool is_ortho = false; float winmat[4][4]; + if (ofs && ((GPU_offscreen_width(ofs) != sizex) || (GPU_offscreen_height(ofs) != sizey))) { + /* sizes differ, can't reuse */ + ofs = NULL; + } + + const bool own_ofs = (ofs == NULL); + if (own_ofs) { /* bind */ ofs = GPU_offscreen_create(sizex, sizey, full_samples ? 0 : samples, err_out); -- cgit v1.2.3