[Bf-blender-cvs] [d69fe52bad6] blender-v3.2-release: Fix T98663: Eevee compilation error cryptomatte shaders.

Jeroen Bakker noreply at git.blender.org
Wed Jun 22 13:03:01 CEST 2022


Commit: d69fe52bad684b40a9419ca37ac88a0d461cb8ce
Author: Jeroen Bakker
Date:   Fri Jun 17 08:25:21 2022 +0200
Branches: blender-v3.2-release
https://developer.blender.org/rBd69fe52bad684b40a9419ca37ac88a0d461cb8ce

Fix T98663: Eevee compilation error cryptomatte shaders.

On MacOS Eevee cyptomatte shaders fails as it doesn't ignore the `attrib_load`
parameter. I validated that removind the parameter works on Linux/AMD and MacOS
Intel. It could be that there are other platforms that require the dummy parameter.

If this should use a forward declaration and implement an emoty function in the
cryptomatte vertex shader.

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

M	source/blender/draw/engines/eevee/eevee_shaders.c

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

diff --git a/source/blender/draw/engines/eevee/eevee_shaders.c b/source/blender/draw/engines/eevee/eevee_shaders.c
index 6fd5d97089d..5709621fc05 100644
--- a/source/blender/draw/engines/eevee/eevee_shaders.c
+++ b/source/blender/draw/engines/eevee/eevee_shaders.c
@@ -718,7 +718,7 @@ GPUShader *EEVEE_shaders_cryptomatte_sh_get(bool is_hair)
   if (e_data.cryptomatte_sh[index] == NULL) {
     DynStr *ds = BLI_dynstr_new();
     BLI_dynstr_append(ds, SHADER_DEFINES);
-    BLI_dynstr_append(ds, "#define attrib_load(a) \n");
+    BLI_dynstr_append(ds, "#define attrib_load() \n");
     if (is_hair) {
       BLI_dynstr_append(ds, "#define HAIR_SHADER\n");
     }



More information about the Bf-blender-cvs mailing list