VkResult - Vulkan command return codes
Description
SUCCESS Command successfully completed
NOT_READY A fence or query has not yet completed
TIMEOUT A wait operation has not completed in the specified time
EVENT_SET An event is signaled
EVENT_RESET An event is unsignaled
INCOMPLETE A return array was too small for the result
SUBOPTIMAL_KHR A swapchain no longer matches the surface properties exactly, but can still be used to present to the surface successfully.
THREAD_IDLE_KHR A deferred operation is not complete but there is currently no work for this thread to do at the time of this call.
THREAD_DONE_KHR A deferred operation is not complete but there is no work remaining to assign to additional threads.
OPERATION_DEFERRED_KHR A deferred operation was requested and at least some of the work was deferred.
OPERATION_NOT_DEFERRED_KHR A deferred operation was requested and no operations were deferred.
PIPELINE_COMPILE_REQUIRED A requested pipeline creation would have required compilation, but the application requested compilation to not be performed.
PIPELINE_BINARY_MISSING_KHR The application attempted to create a pipeline binary by querying an internal cache, but the internal cache entry did not exist.
INCOMPATIBLE_SHADER_BINARY_EXT The provided binary shader code is not compatible with this device.
In the initial version of the
VK_EXT_shader_objectextension, this return code was named ERROR_INCOMPATIBLE_SHADER_BINARY_EXT and improperly described as an error code. The name has been changed, but the old name is retained as an alias for compatibility with old code.ERROR_OUT_OF_HOST_MEMORY A host memory allocation has failed.
ERROR_OUT_OF_DEVICE_MEMORY A device memory allocation has failed.
ERROR_INITIALIZATION_FAILED Initialization of an object could not be completed for implementation-specific reasons.
ERROR_DEVICE_LOST The logical or physical device has been lost. See Lost Device
ERROR_MEMORY_MAP_FAILED Mapping of a memory object has failed.
ERROR_LAYER_NOT_PRESENT A requested layer is not present or could not be loaded.
ERROR_EXTENSION_NOT_PRESENT A requested extension is not supported.
ERROR_FEATURE_NOT_PRESENT A requested feature is not supported.
ERROR_INCOMPATIBLE_DRIVER The requested version of Vulkan is not supported by the driver or is otherwise incompatible for implementation-specific reasons.
ERROR_TOO_MANY_OBJECTS Too many objects of the type have already been created.
ERROR_FORMAT_NOT_SUPPORTED A requested format is not supported on this device.
ERROR_FRAGMENTED_POOL A pool allocation has failed due to fragmentation of the pool’s memory. This must only be returned if no attempt to allocate host or device memory was made to accommodate the new allocation. This should be returned in preference to ERROR_OUT_OF_POOL_MEMORY, but only if the implementation is certain that the pool allocation failure was due to fragmentation.
ERROR_SURFACE_LOST_KHR A surface is no longer available.
ERROR_NATIVE_WINDOW_IN_USE_KHR The requested window is already in use by Vulkan or another API in a manner which prevents it from being used again.
ERROR_OUT_OF_DATE_KHR A surface has changed in such a way that it is no longer compatible with the swapchain, and further presentation requests using the swapchain will fail. Applications must query the new surface properties and recreate their swapchain if they wish to continue presenting to the surface.
ERROR_INCOMPATIBLE_DISPLAY_KHR The display used by a swapchain does not use the same presentable image layout, or is incompatible in a way that prevents sharing an image.
ERROR_INVALID_SHADER_NV One or more shaders failed to compile or link. More details are reported back to the application via
VK_EXT_debug_reportif enabled.ERROR_OUT_OF_POOL_MEMORY A pool memory allocation has failed. This must only be returned if no attempt to allocate host or device memory was made to accommodate the new allocation. If the failure was definitely due to fragmentation of the pool, ERROR_FRAGMENTED_POOL should be returned instead.
ERROR_INVALID_EXTERNAL_HANDLE An external handle is not a valid handle of the specified type.
ERROR_FRAGMENTATION A descriptor pool creation has failed due to fragmentation.
ERROR_INVALID_DEVICE_ADDRESS_EXT A buffer creation failed because the requested address is not available.
ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS A buffer creation or memory allocation failed because the requested address is not available. A shader group handle assignment failed because the requested shader group handle information is no longer valid.
ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT An operation on a swapchain created with FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT failed as it did not have exclusive full-screen access. This may occur due to implementation-dependent reasons, outside of the application’s control.
ERROR_PRESENT_TIMING_QUEUE_FULL_EXT A present operation on a swapchain created with SWAPCHAIN_CREATE_PRESENT_TIMING_BIT_EXT failed due to insufficient space in the swapchain’s internal results queue to hold requested present timing data.
ERROR_VALIDATION_FAILED A command failed because invalid usage was detected by the implementation or a validation layer. This may result in the command not being dispatched to the ICD.
ERROR_COMPRESSION_EXHAUSTED_EXT An image creation failed because internal resources required for compression are exhausted. This must only be returned when fixed-rate compression is requested.
VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR The requested ImageUsageFlags are not supported.
VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR The requested video picture layout is not supported.
VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR A video profile operation specified via VkVideoProfileInfoKHR::
videoCodecOperationis not supported.VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR Format parameters in a requested VkVideoProfileInfoKHR chain are not supported.
VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR Codec-specific parameters in a requested VkVideoProfileInfoKHR chain are not supported.
VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR The specified video Std header version is not supported.
VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR The specified Video Std parameters do not adhere to the syntactic or semantic requirements of the used video compression standard, or values derived from parameters according to the rules defined by the used video compression standard do not adhere to the capabilities of the video compression standard or the implementation.
ERROR_NOT_PERMITTED The driver implementation has denied a request to acquire a priority above the default priority (QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT) because the application does not have sufficient privileges.
ERROR_NOT_ENOUGH_SPACE_KHR The application did not provide enough space to return all the required data.
ERROR_UNKNOWN An unknown error has occurred; either the application has provided invalid input, or an implementation failure has occurred.
If a command returns a runtime error, unless otherwise specified any
output parameters will have undefined contents, except that if the
output parameter is a structure with sType and pNext fields, those
fields will be unmodified. Any structures chained from pNext will also
have undefined contents, except that sType and pNext will be
unmodified.
VK_ERROR_OUT_OF_*_MEMORY errors do not modify any currently existing
Vulkan objects. Objects that have already been successfully created
can still be used by the application.
As a general rule, Free, Release, and Reset commands do not return
ERROR_OUT_OF_HOST_MEMORY, while any other command with a return code
may return it. Any exceptions from this rule are described for those
commands.
ERROR_UNKNOWN will be returned by an implementation when an unexpected error occurs that cannot be attributed to valid behavior of the application and implementation. Under these conditions, it may be returned from any command returning a Result.
ERROR_UNKNOWN is not expected to ever be returned if the application behavior is valid, and if the implementation is bug-free. If ERROR_UNKNOWN is returned, the application should be checked against the latest validation layers to verify correct behavior as much as possible. If no issues are identified it could be an implementation issue, and the implementor should be contacted for support.
Any command returning a Result may return ERROR_VALIDATION_FAILED if a violation of valid usage is detected.
Performance-critical commands generally do not have return codes. If a
runtime error occurs in such commands, the implementation will defer
reporting the error until a specified point. For commands that record
into command buffers (vkCmd*) runtime errors are reported by
endCommandBuffer.
See Also
Instances6Eq, Ord, Read, Show, Storable, Zero
Eq ResultDefined in vulkan-3.27 · Vulkan.Core10.Enums.ResultOrd ResultDefined in vulkan-3.27 · Vulkan.Core10.Enums.ResultRead ResultDefined in vulkan-3.27 · Vulkan.Core10.Enums.ResultShow ResultDefined in vulkan-3.27 · Vulkan.Core10.Enums.ResultStorable ResultDefined in vulkan-3.27 · Vulkan.Core10.Enums.ResultZero ResultDefined in vulkan-3.27 · Vulkan.Core10.Enums.Result