I am submitting work to a queue with a fence, but the fence is never signalled, and I don’t understand why/how this is possible. VkQueueSubmit is returning VK_SUCCESS and the submitted work is being done.
pseudo:
WaitForFence (UINT64_MAX timeout) (Fence was created at startup with signalled flag)
ResetFence
Build CommandBuffer
vkQueueSubmit with Fence.
When the program returns back to step 1 (on the next frame) WaitForFence hangs (I’m assuming because the fence is unsignalled).
Note: The queue is also used elsewhere (but never with this fence).
Do you have validation layers set up and verified working?
What OS, GPU, and driver version do you have?
Problem with pseudocode is you are showing what you want to see instead of what is actually happening.
In the end if you are stuck, it is most effective to construct a minimal example.