To avoid creating infinitely many semaphores, I’m trying to prove when a semaphore has been reset by vkQueuePresentKHR. My assumption is:
vkAcquireNextImageKHRwill only return a pointer to an image that has successfully reached the semaphore reset point for that image of a previousvkQueuePresentKHRcall.
Thanks for the comment stinky. However, your assumption, though a fair expectation, is not ‘safe’.
Vulkan does not define any event for presentation->waitSemaphore availability, only presentation->image availability.
You may be able slip by with your assumption, but there is no guarantees as of Vulkan 1.3, and you should instead rely on the vkAcquireNextImageKHR fence parameter where the signaled fence guarantees semaphore availability.
If you have any more questions, feel free to ask. I love answering your questions. Just ask me your hard ones next time. (:
Do you realize that you’re responding to a thread from “5 years ago”? Kaisha hasn’t posted since then and probably isn’t even seeing your replies. That thread is done.
In the future, please do not append new content to many-years old threads. Start a new topic and link to that thread. I moved your post here and did that for you above.