C Specification
The VkApplicationInfo structure is defined as:
typedef struct VkApplicationInfo {
    VkStructureType    sType;
    const void*        pNext;
    const char*        pApplicationName;
    uint32_t           applicationVersion;
    const char*        pEngineName;
    uint32_t           engineVersion;
    uint32_t           apiVersion;
} VkApplicationInfo;Members
- 
sTypeis the type of this structure.
- 
pNextisNULLor a pointer to an extension-specific structure.
- 
pApplicationNameisNULLor is a pointer to a null-terminated UTF-8 string containing the name of the application.
- 
applicationVersionis an unsigned integer variable containing the developer-supplied version number of the application.
- 
pEngineNameisNULLor is a pointer to a null-terminated UTF-8 string containing the name of the engine (if any) used to create the application.
- 
engineVersionis an unsigned integer variable containing the developer-supplied version number of the engine used to create the application.
- 
apiVersionmust be the highest version of Vulkan that the application is designed to use, encoded as described in https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#extendingvulkan-coreversions-versionnumbers. The patch version number specified inapiVersionis ignored when creating an instance object. Only the major and minor versions of the instance must match those requested inapiVersion.
Description
Vulkan 1.0 implementations were required to return
VK_ERROR_INCOMPATIBLE_DRIVER if apiVersion was larger than 1.0.
Implementations that support Vulkan 1.1 or later must not return
VK_ERROR_INCOMPATIBLE_DRIVER for any value of apiVersion.
| Note Because Vulkan 1.0 implementations may fail with
 | 
As long as the instance supports at least Vulkan 1.1, an application can use different versions of Vulkan with an instance than it does with a device or physical device.
| Note The Khronos validation layers will treat  For example, if the instance supports Vulkan 1.1 and three physical devices
support Vulkan 1.0, Vulkan 1.1, and Vulkan 1.2, respectively, and if the
application sets  
 If we modify the above example so that the application sets  | 
Implicit layers must be disabled if they do not support a version at least
as high as apiVersion.
See the Vulkan Loader Specification and
Architecture Overview document for additional information.
| Note Providing a  | 
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.
Copyright
Copyright (c) 2014-2020 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.