Why doesn't the Vulkan specification define VkDeviceSize?
Please note that the Vulkan specification does not indicate, for example, the value of any of its counters. What for? Because they are listed in vk.xml, which is used to generate vulkan.h.
The same goes for VkDeviceSize. Just like for all the other types that Volcano defines.
Yes, the OpenGL specification specified specific sizes for various types. But Vulcan does not, and this is not necessary.
How should we know if it is possible to convert between VkDeviceSizeand a size_t?
, , :
size_t, , VkDeviceSize.
VkDeviceSize, , size_t.
, , VkDeviceSize, vkAllocateMemory ( , / .., ). , size_t, VkDeviceSize, ... ?
, , , , , . , VkDeviceSize. , size_t , , , .
, , .
# 2 vkGetPhysicalDeviceMemoryProperties. size_t , , ... , size_t ? , , VkDeviceSize?
, ?
. ? - Vulkan .
Vulkan - . , Vulkan 1.0, Vulkan 1.1. 1.2. .
VkDeviceSize , ( ) . Vulkan, -, , :
API , , , , - .
, .
, VkDeviceSize . , , . , , , .