diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2017-11-14 22:49:13 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2017-11-14 22:49:33 +0300 |
commit | bc648af4e1bb9635d6d4fa6ef5d196607a47d2fb (patch) | |
tree | 4d8636677f6611fa5281351395b29944c61f01a9 /source/blender/gpu | |
parent | f23a595228bd56da87385e80922aefb5c72e9877 (diff) |
Fix Opengl Error with glBlitFramebuffer
This was caused by 93936b8643b9c4f77fe13d35b41ecaa246843dd8
From GL spec :
GL_INVALID_OPERATION is generated if mask contains GL_DEPTH_BUFFER_BIT or GL_STENCIL_BUFFER_BIT and the source and destination depth and stencil formats do not match.
So blitting framebuffer with depth or stencil require the SAME FORMAT.
Diffstat (limited to 'source/blender/gpu')
-rw-r--r-- | source/blender/gpu/intern/gpu_framebuffer.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/gpu/intern/gpu_framebuffer.c b/source/blender/gpu/intern/gpu_framebuffer.c index 884a305bd02..5aa7e5e8008 100644 --- a/source/blender/gpu/intern/gpu_framebuffer.c +++ b/source/blender/gpu/intern/gpu_framebuffer.c @@ -532,9 +532,11 @@ void GPU_framebuffer_blit( if (use_depth) { BLI_assert(GPU_texture_depth(read_tex) && GPU_texture_depth(write_tex)); + BLI_assert(GPU_texture_format(read_tex) == GPU_texture_format(write_tex)); } else if (use_stencil) { BLI_assert(GPU_texture_stencil(read_tex) && GPU_texture_stencil(write_tex)); + BLI_assert(GPU_texture_format(read_tex) == GPU_texture_format(write_tex)); } /* read from multi-sample buffer */ |