C Specification
The VkApplicationInfo
structure is defined as:
// Provided by VK_VERSION_1_0
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
-
sType
is a VkStructureType value identifying this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
pApplicationName
isNULL
or is a pointer to a null-terminated UTF-8 string containing the name of the application. -
applicationVersion
is an unsigned integer variable containing the developer-supplied version number of the application. -
pEngineName
isNULL
or is a pointer to a null-terminated UTF-8 string containing the name of the engine (if any) used to create the application. -
engineVersion
is an unsigned integer variable containing the developer-supplied version number of the engine used to create the application. -
apiVersion
must be the highest version of Vulkan that the application is designed to use, encoded as described in https://registry.khronos.org/vulkansc/specs/1.0-extensions/html/vkspec.html#extendingvulkan-coreversions-versionnumbers. The patch version number specified inapiVersion
is ignored when creating an instance object. The variant version of the instance must match that 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
, unless an incompatible variant is requested.
Note
Vulkan SC 1.0 is based on Vulkan 1.2 and thus instance creation may only
fail with |
Note
Providing a |
To provide application parameters at instance creation time, an
application can link one or more VkApplicationParametersEXT
structures to the pNext
chain of the VkApplicationInfo
structure.
If VkApplicationParametersEXT::vendorID
does not correspond to
an ICD that is currently available, or if
VkApplicationParametersEXT::deviceID
is not 0
and does not
correspond to a physical device that is available on the system,
vkCreateInstance will fail and return
VK_ERROR_INCOMPATIBLE_DRIVER
.
If VkApplicationParametersEXT::deviceID
is 0
, the application
parameter applies to all physical devices supported by the ICD identified by
VkApplicationParametersEXT::vendorID
.
If VkApplicationParametersEXT::key
is not a valid
implementation-defined application parameter key for the instance being
created with vendorID
, or if value
is not a valid value for the
specified key
, vkCreateInstance will fail and return
VK_ERROR_INITIALIZATION_FAILED
.
For any implementation-defined application parameter key
that exists
but is not set by the application, the implementation-specific default value
is used.
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.