[Bf-blender-cvs] [0ff7a7b3b50] master: Fix T98663: Eevee compilation error cryptomatte shaders.

Jeroen Bakker noreply at git.blender.org
Fri Jun 17 08:40:25 CEST 2022


Commit: 0ff7a7b3b504f8c4c4feac37cd2486d1e41e60cc
Author: Jeroen Bakker
Date:   Fri Jun 17 08:25:21 2022 +0200
Branches: master
https://developer.blender.org/rB0ff7a7b3b504f8c4c4feac37cd2486d1e41e60cc

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