[Bf-blender-cvs] [c14af6b4d72] temp-vulkan-shader: Prefix push constants to work around double macro expansion.

Jeroen Bakker noreply at git.blender.org
Mon Dec 12 11:06:43 CET 2022


Commit: c14af6b4d72d36cb144f1bcf76a505198f580549
Author: Jeroen Bakker
Date:   Mon Dec 12 09:47:04 2022 +0100
Branches: temp-vulkan-shader
https://developer.blender.org/rBc14af6b4d72d36cb144f1bcf76a505198f580549

Prefix push constants to work around double macro expansion.

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

M	source/blender/gpu/vulkan/vk_shader.cc

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

diff --git a/source/blender/gpu/vulkan/vk_shader.cc b/source/blender/gpu/vulkan/vk_shader.cc
index c4dfbc4b19d..368c529fbf5 100644
--- a/source/blender/gpu/vulkan/vk_shader.cc
+++ b/source/blender/gpu/vulkan/vk_shader.cc
@@ -741,7 +741,7 @@ std::string VKShader::resources_declare(const shader::ShaderCreateInfo &info) co
     ss << "layout(push_constant) uniform constants\n";
     ss << "{\n";
     for (const ShaderCreateInfo::PushConst &uniform : info.push_constants_) {
-      ss << "  " << to_string(uniform.type) << " " << uniform.name;
+      ss << "  " << to_string(uniform.type) << " pc_" << uniform.name;
       if (uniform.array_size > 0) {
         ss << "[" << uniform.array_size << "]";
       }
@@ -749,7 +749,7 @@ std::string VKShader::resources_declare(const shader::ShaderCreateInfo &info) co
     }
     ss << "} PushConstants;\n";
     for (const ShaderCreateInfo::PushConst &uniform : info.push_constants_) {
-      ss << "#define " << uniform.name << " (PushConstants." << uniform.name << ")\n";
+      ss << "#define " << uniform.name << " (PushConstants.pc_" << uniform.name << ")\n";
     }
   }



More information about the Bf-blender-cvs mailing list