1
我想在我的C创建一个VkBool32 ++代码:它允许使用VkBool32作为推常量吗?
VkBool32 myBool = VK_FALSE;
,并推动它通过推常量GLSL:
vkCmdPushConstants(..., sizeof(myBool), &myBool);
这是由一个统一的存储类中的布尔收到:
layout(push_constant) uniform PushConstants
{
bool myBool;
} pushConts;
第一次测试似乎工作,并有预期的行为。但Vulkan Spec允许这么做吗?
VkBool32只是一个uint32_t所以你只是传递了一个32位uint,这绝对是可能的。我不记得它是如何从着色器一侧看起来的,并且最好查看一下bool变量在SPIR-V代码内如何转换。也许它也只是一个32位uint。我会仔细看看的。 – Ekzuzy