Application Started
Entering WinMain
RegisterClass: OK
CreateMenu: OK
CreateAcceleratorTable: OK
CreateWindow: OK
CreateStatusBar: OK
vkCreateInstance: OK
vkGetInstanceProcAddr: OK
vkCreateDebugUtilsMessengerEXT: OK
vkEnumeratePhysicalDevices - First Pass: OK
vkEnumeratePhysicalDevices - Second Pass: OK
GetPhysicalDeviceProperties: NVIDIA GeForce GTX 1650
GetPhysicalDeviceProperties: Intel(R) UHD Graphics 630
vkCreateWin32SurfaceKHR: OK
vkGetPhysicalDeviceQueueFamilyProperties - First Pass: OK
Memory Allocating: OK
vkGetPhysicalDeviceQueueFamilyProperties - Second Pass: OK
Memory Allocating: OK
vkGetPhysicalDeviceSurfaceSupportKHR: OK
Queue Family Selected Successfully
vkCreateDevice: OK
vkGetDeviceQueue (Graphics Queue): OK
vkGetDeviceQueue (Present Queue): OK
vkGetPhysicalDeviceSurfaceCapabilitiesKHR: OK
Extent Chosen Successfully
vkGetPhysicalDeviceSurfaceFormatsKHR - First Pass: OK
Memory Allocating: OK
vkGetPhysicalDeviceSurfaceFormatsKHR - Second Pass: OK
Format Chosen Successfully
vkGetPhysicalDeviceSurfacePresentModesKHR - First Pass: OK
Memory Allocating: OK
vkGetPhysicalDeviceSurfacePresentModesKHR - Second Pass: OK
Present Mode Chosen Successfully
vkCreateSwapchainKHR: OK
vkGetSwapchainImagesKHR - First Pass: OK
Memory Allocating: OK
vkGetSwapchainImagesKHR - Second Pass: OK
Memory Allocating: OK
vkCreateImageView: OK
vkCreateImageView: OK
vkCreateRenderPass: OK
vkCreatePipelineLayout: OK
Loading Vertex Shader: OK
vkCreateShaderModule (Vertex): OK
Loading Fragment Shader: OK
vkCreateShaderModule (Fragment): OK
vkCreateGraphicsPipelines: OK
vkCreateCommandPool: OK
vkCreateSemaphoreImageAvailable: OK
vkCreateSemaphoreRenderFinished: OK
vkCreateFence: OK
Memory Allocating: OK
vkAllocateCommandBuffers: OK
Memory Allocating: OK
vkCreateFramebuffer: OK
vkCreateFramebuffer: OK
Record Command BuffersvkBeginCommandBuffer: OK
vkCmdBeginRenderPass: OK
vkCmdBindPipeline: OK
vkCmdDraw
vkCmdDraw(): Dynamic viewport(s) (0x1) are used by pipeline state object, but were not provided via calls to vkCmdSetViewport().
The Vulkan spec states: If the bound graphics pipeline state was created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled then vkCmdSetViewport must have been called and not subsequently invalidated in the current command buffer prior to this drawing command (https://docs.vulkan.org/spec/latest/chapters/drawing.html#VUID-vkCmdDraw-None-07831)

vkCmdDraw(): Dynamic scissor(s) (0x1) are used by pipeline state object, but were not provided via calls to vkCmdSetScissor().
The Vulkan spec states: If the bound graphics pipeline state was created with the VK_DYNAMIC_STATE_SCISSOR dynamic state enabled then vkCmdSetScissor must have been called and not subsequently invalidated in the current command buffer prior to this drawing command (https://docs.vulkan.org/spec/latest/chapters/drawing.html#VUID-vkCmdDraw-None-07832)
: OK
vkCmdEndRenderPass: OK
vkEndCommandBuffer: OK
vkBeginCommandBuffer: OK
vkCmdBeginRenderPass: OK
vkCmdBindPipeline: OK
vkCmdDraw
vkCmdDraw(): Dynamic viewport(s) (0x1) are used by pipeline state object, but were not provided via calls to vkCmdSetViewport().
The Vulkan spec states: If the bound graphics pipeline state was created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled then vkCmdSetViewport must have been called and not subsequently invalidated in the current command buffer prior to this drawing command (https://docs.vulkan.org/spec/latest/chapters/drawing.html#VUID-vkCmdDraw-None-07831)

vkCmdDraw(): Dynamic scissor(s) (0x1) are used by pipeline state object, but were not provided via calls to vkCmdSetScissor().
The Vulkan spec states: If the bound graphics pipeline state was created with the VK_DYNAMIC_STATE_SCISSOR dynamic state enabled then vkCmdSetScissor must have been called and not subsequently invalidated in the current command buffer prior to this drawing command (https://docs.vulkan.org/spec/latest/chapters/drawing.html#VUID-vkCmdDraw-None-07832)
: OK
vkCmdEndRenderPass: OK
vkEndCommandBuffer: OK
UpdateWindow: OK
Entering Message Loop
DrawScene called
vkAcquireNextImageKHR
vkAcquireNextImageKHR(): semaphore Invalid VkSemaphore Object 0x7ff61a6c616a.
The Vulkan spec states: If semaphore is not VK_NULL_HANDLE, semaphore must be a valid VkSemaphore handle (https://docs.vulkan.org/spec/latest/chapters/VK_KHR_surface/wsi.html#VUID-vkAcquireNextImageKHR-semaphore-parameter)

vkAcquireNextImageKHR(): Couldn't find VkSemaphore Object 0x7ff61a6c616a. This should not happen and may indicate a bug in the application.

vkAcquireNextImageKHR(): Couldn't find VkSemaphore Object 0x7ff61a6c616a. This should not happen and may indicate a bug in the application.
: OK

vkWaitForFences(): waitAll (4294967295) is neither VK_TRUE nor VK_FALSE. Applications MUST not pass any other values than VK_TRUE or VK_FALSE into a Vulkan implementation where a VkBool32 is expected.
vkResetFences: OK
vkQueueSubmit
vkQueueSubmit(): pSubmits[0].pWaitSemaphores[0] queue (VkQueue 0x21060f7e1d0) is waiting on semaphore (VkSemaphore 0xe000000000e) that has no way to be signaled.
The Vulkan spec states: All elements of the pWaitSemaphores member of all elements of pSubmits created with a VkSemaphoreType of VK_SEMAPHORE_TYPE_BINARY must reference a semaphore signal operation that has been submitted for execution and any semaphore signal operations on which it depends must have also been submitted for execution (https://docs.vulkan.org/spec/latest/chapters/cmdbuffers.html#VUID-vkQueueSubmit-pWaitSemaphores-03238)
: OK
vkQueuePresentKHR: OK
WM_CLOSE received
vkDestroyFence
vkDestroyFence(): can't be called on VkFence 0x100000000010 that is currently in use by VkQueue 0x21060f7e1d0.
The Vulkan spec states: All queue submission commands that refer to fence must have completed execution (https://docs.vulkan.org/spec/latest/chapters/synchronization.html#VUID-vkDestroyFence-fence-01120)
: OK
vkDestroySemaphoreRenderFinished
vkDestroySemaphore(): can't be called on VkSemaphore 0xf000000000f that is currently in use by VkQueue 0x21060f7e1d0.
The Vulkan spec states: All submitted batches that refer to semaphore must have completed execution (https://docs.vulkan.org/spec/latest/chapters/synchronization.html#VUID-vkDestroySemaphore-semaphore-05149)
: OK
vkDestroySemaphoreImageAvailable
vkDestroySemaphore(): can't be called on VkSemaphore 0xe000000000e that is currently in use by VkQueue 0x21060f7e1d0.
The Vulkan spec states: All submitted batches that refer to semaphore must have completed execution (https://docs.vulkan.org/spec/latest/chapters/synchronization.html#VUID-vkDestroySemaphore-semaphore-05149)
: OK
vkDestroyCommandPool
vkDestroyCommandPool(): (VkCommandBuffer 0x210633f7b30) is in use.
The Vulkan spec states: All VkCommandBuffer objects allocated from commandPool must not be in the pending state (https://docs.vulkan.org/spec/latest/chapters/cmdbuffers.html#VUID-vkDestroyCommandPool-commandPool-00041)

vkDestroyCommandPool(): (VkCommandBuffer 0x210633d6840) is in use.
The Vulkan spec states: All VkCommandBuffer objects allocated from commandPool must not be in the pending state (https://docs.vulkan.org/spec/latest/chapters/cmdbuffers.html#VUID-vkDestroyCommandPool-commandPool-00041)
: OK
vkDestroyPipeline: OK
vkDestroyShaderModule (Fragment): OK
vkDestroyShaderModule (Vertex): OK
vkDestroyPipelineLayout: OK
vkDestroyRenderPass: OK
vkDestroySwapchainKHR: OK
vkDestroyDevice
vkDestroyDevice(): Object Tracking - For VkDevice 0x21060d901f0, VkFramebuffer 0x110000000011 has not been destroyed.
The Vulkan spec states: All child objects created on device that can be destroyed or freed must have been destroyed or freed prior to destroying device (https://docs.vulkan.org/spec/latest/chapters/devsandqueues.html#VUID-vkDestroyDevice-device-05137)

vkDestroyDevice(): Object Tracking - For VkDevice 0x21060d901f0, VkFramebuffer 0x120000000012 has not been destroyed.
The Vulkan spec states: All child objects created on device that can be destroyed or freed must have been destroyed or freed prior to destroying device (https://docs.vulkan.org/spec/latest/chapters/devsandqueues.html#VUID-vkDestroyDevice-device-05137)
: OK
vkDestroySurfaceKHR: OK
vkDestroyInstance
vkDestroyInstance(): Object Tracking - For VkInstance 0x2101950a4c0, VkDebugUtilsMessengerEXT 0x10000000001 has not been destroyed.
The Vulkan spec states: All child objects that were created with instance or with a VkPhysicalDevice retrieved from it, and that can be destroyed or freed, must have been destroyed or freed prior to destroying instance (https://docs.vulkan.org/spec/latest/chapters/initialization.html#VUID-vkDestroyInstance-instance-00629)
: OK
WM_DESTROY received
Calling ExitProcess
