// Copyright (c) 2014-2016 Khronos Group. This work is licensed under a // Creative Commons Attribution 4.0 International License; see // http://creativecommons.org/licenses/by/4.0/ vkCreateDevice(3) ================= Name ---- vkCreateDevice - Create a new device instance. C Specification --------------- // refBegin vkCreateDevice Create a new device instance. A logical device is created as a _connection_ to a physical device. To create a logical device, call: include::../api/protos/vkCreateDevice.txt[] Parameters ---------- * pname:physicalDevice must: be one of the device handles returned from a call to fname:vkEnumeratePhysicalDevices (see <>). * pname:pCreateInfo is a pointer to a slink:VkDeviceCreateInfo structure containing information about how to create the device. * pname:pAllocator controls host memory allocation as described in the <> chapter. * pname:pDevice points to a handle in which the created sname:VkDevice is returned. Description ----------- Multiple logical devices can: be created from the same physical device. Logical device creation may: fail due to lack of device-specific resources (in addition to the other errors). If that occurs, fname:vkCreateDevice will return ename:VK_ERROR_TOO_MANY_OBJECTS. include::../validity/protos/vkCreateDevice.txt[] See Also -------- slink:VkAllocationCallbacks, slink:VkDevice, slink:VkDeviceCreateInfo, slink:VkPhysicalDevice Document Notes -------------- For more information, see the Vulkan Specification at URL https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#vkCreateDevice This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification,not directly. include::footer.txt[]