首先,我是Vulkan的新手(我使用的是LWJGL提供的绑定)。我知道我应该复制/粘贴更多的代码,但我甚至不知道现在什么是相关的(所以请不要犹豫地问我一些具体的代码)。
我试着做这样的事情:
所以,目前还没有顶点/碎片着色器。
我分配了一个计算管道和一个FrameBuffer。我有一个{Queue/CommandPool/CommandBuffer}用于计算,另一个用于呈现。
当我试图提交图形队列时:
vkQueueSubmit(graphicQueue, renderPipeline.getFrameSubmission().getSubmitInfo(imageIndex));我获得以下错误消息(来自验证):
ERROR OCCURED: Object: VK_NULL_HANDLE (Type = 0) | vkQueueSubmit() call includes a stageMask with VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT bit set when device does not have geometryShader feature enabled. The spec valid usage text states 'If the geometry shaders feature is not enabled, each element of pWaitDstStageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-00076)
ERROR OCCURED: Object: VK_NULL_HANDLE (Type = 0) | vkQueueSubmit() call includes a stageMask with VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT and/or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT bit(s) set when device does not have tessellationShader feature enabled. The spec valid usage text states 'If the tessellation shaders feature is not enabled, each element of pWaitDstStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-00077)我试图将VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,更改为不同的值(比如VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT、VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT.)但什么都没变。
那么,我的用例最好的pWaitDstStageMask是什么呢?
发布于 2018-06-26 10:30:10
好的,我发现了我的问题: pWaitDstStageMask必须是一个与pWaitSemaphores大小相同的数组。
我只打了一个舞台面具,两个信号灯。
https://stackoverflow.com/questions/51035234
复制相似问题