对于vulkan,是否有一些方法可以解决glsl中的宏

对于vulkan,是否有一些方法可以解决glsl中的宏,glsl,vulkan,spir-v,Glsl,Vulkan,Spir V,许多GLSL程序使用宏 #ifdef #else #endif 为了解决不同的配置,在vulkan构建管道布局和描述符集时,是否有一些优雅的方法来解决此问题?在大多数情况下,使用普通if()\else()块和vulkan专用化常量应该可以解决此问题。如果专门化常量在编译时为零,我希望任何明智的编译器都能优化出整个if()basic块。不要这样认为,如果您想动态更改配置,它将有性能损失

许多GLSL程序使用宏

#ifdef
#else
#endif

为了解决不同的配置,在vulkan构建管道布局和描述符集时,是否有一些优雅的方法来解决此问题?

在大多数情况下,使用普通
if()\else()
块和vulkan专用化常量应该可以解决此问题。如果专门化常量在编译时为零,我希望任何明智的编译器都能优化出整个
if()
basic块。

不要这样认为,如果您想动态更改配置,它将有性能损失