正在为此寻找Vulkan替代方案;在OpenGL中有一种方法可以获得所有制服的列表&着色器程序使用的属性?
Vulkan作为一般规则,没有查询API以获取您提供给API的任何信息。如果你给API一些东西,并且你需要了解一些数据,那么你应该记得它是什么。
SPIR-V包含着色器使用的各种资源和接口的所有定义。SPIR-V是一个非常明确的格式。既然你把SPIR-V交给了Vulkan,你就有充分的机会知道所有的";制服&attribs";在该着色器中。所以Vulkan没有着色器查询API。
有几种工具可以对SPIR-V二进制文件进行内省以提取此类信息。但Vulkan本身并不是其中之一。