private void InitRenderParams() { VkSwapchainKHR swapchain = this.swapchain; VkSemaphore semaphore = this.vkSemaphore; VkCommandBuffer[] commandBuffers = this.commandBuffers; submitInfos = VkSubmitInfo.Alloc(2); presentInfos = VkPresentInfoKHR.Alloc(2); for (uint index = 0; index < 2; index++) { //submitInfos[index].waitSemaphoresDstStageMasks.Set(semaphore); submitInfos[index].waitSemaphores = semaphore; submitInfos[index].waitSemaphoresDstStageMasks.Set(VkPipelineStageFlagBits.AllGraphics); submitInfos[index].commandBuffers = commandBuffers[index]; presentInfos[index].swapchains = swapchain; //presentInfo->swapchainsImages.Set(swapchain); presentInfos[index].swapchainsImages.Set(index); } }
public static extern VkResult vkQueuePresentKHR( [In, NativeTypeName("VkQueue")] IntPtr queue, [In] VkPresentInfoKHR *pPresentInfo );