[Bf-blender-cvs] [f36efe0e2ad] blender2.8: Fix mysterious crash when using textureGather on Intel drivers.

mano-wii noreply at git.blender.org
Sat Sep 29 21:57:02 CEST 2018


Commit: f36efe0e2ad5557fdd3f21ebc80e3e9e42533071
Author: mano-wii
Date:   Sat Sep 29 16:56:47 2018 -0300
Branches: blender2.8
https://developer.blender.org/rBf36efe0e2ad5557fdd3f21ebc80e3e9e42533071

Fix mysterious crash when using textureGather on Intel drivers.

The crash occurs in a shader with uniform block of a certain size and misaligned.

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

M	source/blender/draw/intern/draw_common.h
M	source/blender/draw/modes/shaders/common_globals_lib.glsl

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

diff --git a/source/blender/draw/intern/draw_common.h b/source/blender/draw/intern/draw_common.h
index a7de7fdeafa..206639341cf 100644
--- a/source/blender/draw/intern/draw_common.h
+++ b/source/blender/draw/intern/draw_common.h
@@ -113,8 +113,11 @@ typedef struct GlobalsUboStorage {
 	float sizeLampCenter, sizeLampCircle, sizeLampCircleShadow;
 	float sizeVertex, sizeEdge, sizeEdgeFix, sizeFaceDot;
 	float gridDistance, gridResolution, gridSubdivisions, gridScale;
+
+	float pad_globalsBlock;
 } GlobalsUboStorage;
 /* Keep in sync with globalsBlock in shaders */
+BLI_STATIC_ASSERT_ALIGN(GlobalsUboStorage, 16)
 
 void DRW_globals_update(void);
 void DRW_globals_free(void);
diff --git a/source/blender/draw/modes/shaders/common_globals_lib.glsl b/source/blender/draw/modes/shaders/common_globals_lib.glsl
index f1d118e572a..69ba304ca24 100644
--- a/source/blender/draw/modes/shaders/common_globals_lib.glsl
+++ b/source/blender/draw/modes/shaders/common_globals_lib.glsl
@@ -75,4 +75,6 @@ layout(std140) uniform globalsBlock {
 	float gridResolution;
 	float gridSubdivisions;
 	float gridScale;
+
+	float pad_globalsBlock;
 };



More information about the Bf-blender-cvs mailing list