Commit: 1a866d55acce90406e6430f85f3d88335c4f686d
Author: Antony Riakiotakis
Date:   Wed Mar 25 14:43:28 2015 +0100
Branches: master
https://developer.blender.org/rB1a866d55acce90406e6430f85f3d88335c4f686d

Fix crash with computers not supporting high quality depth of field.

===================================================================

M       source/blender/gpu/intern/gpu_compositing.c

===================================================================

diff --git a/source/blender/gpu/intern/gpu_compositing.c 
b/source/blender/gpu/intern/gpu_compositing.c
index 6a7805b..f850b6f 100644
--- a/source/blender/gpu/intern/gpu_compositing.c
+++ b/source/blender/gpu/intern/gpu_compositing.c
@@ -390,7 +390,12 @@ bool GPU_fx_compositor_initialize_passes(
 
        /* create textures for dof effect */
        if (fx_flag & GPU_FX_FLAG_DOF) {
-               bool dof_high_quality = (fx_settings->dof->high_quality != 0);
+               bool dof_high_quality = (fx_settings->dof->high_quality != 0) &&
+                                                               
GPU_geometry_shader_support() && GPU_instanced_drawing_support();
+
+               /* cleanup buffers if quality setting has changed (no need to 
keep more buffers around than necessary ) */
+               if (dof_high_quality != fx->dof_high_quality)
+                       cleanup_fx_dof_buffers(fx);
 
                if (dof_high_quality) {
                        fx->dof_downsampled_w = w / 2;
@@ -469,7 +474,7 @@ bool GPU_fx_compositor_initialize_passes(
                        }
                }
 
-               fx->dof_high_quality = dof_high_quality && 
GPU_geometry_shader_support() && GPU_instanced_drawing_support();
+               fx->dof_high_quality = dof_high_quality;
        }
        else {
                /* cleanup unnecessary buffers */

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to