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:
authorJoe Eagar <joeedh@gmail.com>2015-09-14 00:51:36 +0300
committerJoe Eagar <joeedh@gmail.com>2015-09-14 00:52:31 +0300
commitd64b1221c67846bb954855a19c8dd093b83adc8e (patch)
tree698f0523b21858bc7bf59b149fd1e2a2868b8fc8 /source/blender/editors/render
parente443dd4d9768394a61197dc187eb21c65aad7941 (diff)
Fix crash in opengl render caused by gfx being blacklisted for
non-power-of-2 texture support. Note that all I did was pass the correct width/height into glReadPixels; the result may not be the same as if non2 textures were enabled.
Diffstat (limited to 'source/blender/editors/render')
-rw-r--r--source/blender/editors/render/render_opengl.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/editors/render/render_opengl.c b/source/blender/editors/render/render_opengl.c
index c718dfa9229..1654382e7fc 100644
--- a/source/blender/editors/render/render_opengl.c
+++ b/source/blender/editors/render/render_opengl.c
@@ -324,7 +324,7 @@ static void screen_opengl_render_doit(OGLRender *oglrender, RenderResult *rr)
G.f &= ~G_RENDER_OGL;
gp_rect = MEM_mallocN(sizex * sizey * sizeof(unsigned char) * 4, "offscreen rect");
- GPU_offscreen_read_pixels(oglrender->ofs, GL_UNSIGNED_BYTE, gp_rect);
+ GPU_offscreen_read_pixels_wh(oglrender->ofs, sizex, sizey, GL_UNSIGNED_BYTE, gp_rect);
BLI_assert(rectf != NULL);
@@ -380,7 +380,7 @@ static void screen_opengl_render_doit(OGLRender *oglrender, RenderResult *rr)
scene, v3d, ar, sizex, sizey, NULL, winmat,
draw_bgpic, draw_sky, is_persp,
oglrender->ofs, oglrender->fx, &fx_settings, viewname);
- GPU_offscreen_read_pixels(oglrender->ofs, GL_UNSIGNED_BYTE, rect);
+ GPU_offscreen_read_pixels_wh(oglrender->ofs, sizex, sizey, GL_UNSIGNED_BYTE, rect);
}
else {
/* simple accumulation, less hassle then FSAA FBO's */
@@ -396,7 +396,7 @@ static void screen_opengl_render_doit(OGLRender *oglrender, RenderResult *rr)
scene, v3d, ar, sizex, sizey, NULL, winmat,
draw_bgpic, draw_sky, is_persp,
oglrender->ofs, oglrender->fx, &fx_settings, viewname);
- GPU_offscreen_read_pixels(oglrender->ofs, GL_UNSIGNED_BYTE, rect);
+ GPU_offscreen_read_pixels_wh(oglrender->ofs, sizex, sizey, GL_UNSIGNED_BYTE, rect);
for (i = 0; i < sizex * sizey * 4; i++)
accum_buffer[i] = rect[i];
@@ -412,7 +412,7 @@ static void screen_opengl_render_doit(OGLRender *oglrender, RenderResult *rr)
scene, v3d, ar, sizex, sizey, NULL, winmat_jitter,
draw_bgpic, draw_sky, is_persp,
oglrender->ofs, oglrender->fx, &fx_settings, viewname);
- GPU_offscreen_read_pixels(oglrender->ofs, GL_UNSIGNED_BYTE, rect);
+ GPU_offscreen_read_pixels_wh(oglrender->ofs, sizex, sizey, GL_UNSIGNED_BYTE, rect);
for (i = 0; i < sizex * sizey * 4; i++)
accum_buffer[i] += rect[i];