nihui / waifu2x-ncnn-vulkan

waifu2x converter ncnn version, runs fast on intel / amd / nvidia / apple-silicon GPU with vulkan
MIT License
3.02k stars 211 forks source link

Upscaling large image on Intel GPU and Linux will get black picture instead #6

Closed ArchieMeng closed 5 years ago

ArchieMeng commented 5 years ago

Used the "1.png" as the original image, keep upscaling its upscaled result. The first result (1004 720) seems fine, but the second result (2008 1440) is a black image. The first result: 1_2x The second result: 1_4x

Vulkan info:

===========
VULKAN INFO
===========

Vulkan Instance Version: 1.1.70

Instance Extensions:
====================
Instance Extensions count = 16
    VK_KHR_device_group_creation        : extension revision  1
    VK_KHR_external_fence_capabilities  : extension revision  1
    VK_KHR_external_memory_capabilities : extension revision  1
    VK_KHR_external_semaphore_capabilities: extension revision  1
    VK_KHR_get_physical_device_properties2: extension revision  1
    VK_KHR_get_surface_capabilities2    : extension revision  1
    VK_KHR_surface                      : extension revision 25
    VK_KHR_wayland_surface              : extension revision  6
    VK_KHR_xcb_surface                  : extension revision  6
    VK_KHR_xlib_surface                 : extension revision  6
    VK_KHR_display                      : extension revision 23
    VK_EXT_direct_mode_display          : extension revision  1
    VK_EXT_acquire_xlib_display         : extension revision  1
    VK_EXT_display_surface_counter      : extension revision  1
    VK_EXT_debug_report                 : extension revision  9
    VK_EXT_debug_utils                  : extension revision  1
Layers: count = 10
=======
VK_LAYER_LUNARG_parameter_validation (LunarG Validation Layer) Vulkan version 1.1.70, layer version 1
    Layer Extensions    count = 1
        VK_EXT_debug_report                 : extension revision  6
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 1
            VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_LUNARG_core_validation (LunarG Validation Layer) Vulkan version 1.1.70, layer version 1
    Layer Extensions    count = 1
        VK_EXT_debug_report                 : extension revision  6
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 2
            VK_EXT_debug_marker                 : extension revision  4
            VK_EXT_validation_cache             : extension revision  1

VK_LAYER_LUNARG_object_tracker (LunarG Validation Layer) Vulkan version 1.1.70, layer version 1
    Layer Extensions    count = 1
        VK_EXT_debug_report                 : extension revision  6
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 1
            VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.1.70, layer version 1
    Layer Extensions    count = 1
        VK_EXT_debug_report                 : extension revision  6
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 0

VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.1.70, layer version 1
    Layer Extensions    count = 0
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 0

VK_LAYER_LUNARG_standard_validation (LunarG Standard Validation) Vulkan version 1.1.70, layer version 1
    Layer Extensions    count = 1
        VK_EXT_debug_report                 : extension revision  6
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 2
            VK_EXT_debug_marker                 : extension revision  4
            VK_EXT_validation_cache             : extension revision  1

VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.1.73, layer version 1
    Layer Extensions    count = 0
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 0

VK_LAYER_VALVE_steam_fossilize_32 (Steam Pipeline Caching Layer) Vulkan version 1.1.73, layer version 1
    Layer Extensions    count = 0
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 0

VK_LAYER_VALVE_steam_overlay_32 (Steam Overlay Layer) Vulkan version 1.1.73, layer version 1
    Layer Extensions    count = 0
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 0

VK_LAYER_VALVE_steam_fossilize_64 (Steam Pipeline Caching Layer) Vulkan version 1.1.73, layer version 1
    Layer Extensions    count = 0
    Devices     count = 1
        GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
        Layer-Device Extensions count = 0

Presentable Surfaces:
=====================
GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
Surface type : VK_KHR_xcb_surface
Formats:        count = 2
    B8G8R8A8_SRGB
    B8G8R8A8_UNORM
Present Modes:      count = 3
    IMMEDIATE_KHR
    MAILBOX_KHR
    FIFO_KHR

VkSurfaceCapabilitiesKHR:
=========================
    minImageCount       = 2
    maxImageCount       = 0
    currentExtent:
        width       = 256
        height      = 256
    minImageExtent:
        width       = 256
        height      = 256
    maxImageExtent:
        width       = 256
        height      = 256
    maxImageArrayLayers = 1
    supportedTransform:
        VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR
    currentTransform:
        VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR
    supportedCompositeAlpha:
        VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR
        VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR
    supportedUsageFlags:
        VK_IMAGE_USAGE_TRANSFER_SRC_BIT
        VK_IMAGE_USAGE_TRANSFER_DST_BIT
        VK_IMAGE_USAGE_SAMPLED_BIT
        VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT

VkSurfaceCapabilities2EXT:
==========================

    supportedSurfaceCounters:
        None

Device Properties and Extensions :
==================================
GPU0
VkPhysicalDeviceProperties:
===========================
    apiVersion     = 0x401050  (1.1.80)
    driverVersion  = 75505672 (0x4802008)
    vendorID       = 0x8086
    deviceID       = 0x5916
    deviceType     = INTEGRATED_GPU
    deviceName     = Intel(R) HD Graphics 620 (Kaby Lake GT2)
    VkPhysicalDeviceLimits:
    -----------------------
        maxImageDimension1D                     = 16384
        maxImageDimension2D                     = 16384
        maxImageDimension3D                     = 2048
        maxImageDimensionCube                   = 16384
        maxImageArrayLayers                     = 2048
        maxTexelBufferElements                  = 0x8000000
        maxUniformBufferRange                   = 0x8000000
        maxStorageBufferRange                   = 0x40000000
        maxPushConstantsSize                    = 128
        maxMemoryAllocationCount                = 4294967295
        maxSamplerAllocationCount               = 65536
        bufferImageGranularity                  = 0x40
        sparseAddressSpaceSize                  = 0x0
        maxBoundDescriptorSets                  = 8
        maxPerStageDescriptorSamplers           = 128
        maxPerStageDescriptorUniformBuffers     = 64
        maxPerStageDescriptorStorageBuffers     = 64
        maxPerStageDescriptorSampledImages      = 128
        maxPerStageDescriptorStorageImages      = 64
        maxPerStageDescriptorInputAttachments   = 64
        maxPerStageResources                    = 250
        maxDescriptorSetSamplers                = 768
        maxDescriptorSetUniformBuffers          = 384
        maxDescriptorSetUniformBuffersDynamic   = 8
        maxDescriptorSetStorageBuffers          = 384
        maxDescriptorSetStorageBuffersDynamic   = 8
        maxDescriptorSetSampledImages           = 768
        maxDescriptorSetStorageImages           = 384
        maxDescriptorSetInputAttachments        = 256
        maxVertexInputAttributes                = 28
        maxVertexInputBindings                  = 28
        maxVertexInputAttributeOffset           = 0x7ff
        maxVertexInputBindingStride             = 0x800
        maxVertexOutputComponents               = 128
        maxTessellationGenerationLevel          = 64
        maxTessellationPatchSize                        = 32
        maxTessellationControlPerVertexInputComponents  = 128
        maxTessellationControlPerVertexOutputComponents = 128
        maxTessellationControlPerPatchOutputComponents  = 128
        maxTessellationControlTotalOutputComponents     = 2048
        maxTessellationEvaluationInputComponents        = 128
        maxTessellationEvaluationOutputComponents       = 128
        maxGeometryShaderInvocations            = 32
        maxGeometryInputComponents              = 64
        maxGeometryOutputComponents             = 128
        maxGeometryOutputVertices               = 256
        maxGeometryTotalOutputComponents        = 1024
        maxFragmentInputComponents              = 112
        maxFragmentOutputAttachments            = 8
        maxFragmentDualSrcAttachments           = 1
        maxFragmentCombinedOutputResources      = 8
        maxComputeSharedMemorySize              = 0x8000
        maxComputeWorkGroupCount[0]             = 65535
        maxComputeWorkGroupCount[1]             = 65535
        maxComputeWorkGroupCount[2]             = 65535
        maxComputeWorkGroupInvocations          = 896
        maxComputeWorkGroupSize[0]              = 896
        maxComputeWorkGroupSize[1]              = 896
        maxComputeWorkGroupSize[2]              = 896
        subPixelPrecisionBits                   = 4
        subTexelPrecisionBits                   = 4
        mipmapPrecisionBits                     = 4
        maxDrawIndexedIndexValue                = 4294967295
        maxDrawIndirectCount                    = 4294967295
        maxSamplerLodBias                       = 16.000000
        maxSamplerAnisotropy                    = 16.000000
        maxViewports                            = 16
        maxViewportDimensions[0]                = 16384
        maxViewportDimensions[1]                = 16384
        viewportBoundsRange[0]                  =-32768.000000
        viewportBoundsRange[1]                  = 32767.000000
        viewportSubPixelBits                    = 13
        minMemoryMapAlignment                   = 4096
        minTexelBufferOffsetAlignment           = 0x1
        minUniformBufferOffsetAlignment         = 0x20
        minStorageBufferOffsetAlignment         = 0x4
        minTexelOffset                          = -8
        maxTexelOffset                          =  7
        minTexelGatherOffset                    =-32
        maxTexelGatherOffset                    = 31
        minInterpolationOffset                  =-0.500000
        maxInterpolationOffset                  = 0.437500
        subPixelInterpolationOffsetBits         = 4
        maxFramebufferWidth                     = 16384
        maxFramebufferHeight                    = 16384
        maxFramebufferLayers                    = 2048
        framebufferColorSampleCounts            = 31
        framebufferDepthSampleCounts            = 31
        framebufferStencilSampleCounts          = 31
        framebufferNoAttachmentsSampleCounts    = 31
        maxColorAttachments                     = 8
        sampledImageColorSampleCounts           = 31
        sampledImageDepthSampleCounts           = 31
        sampledImageStencilSampleCounts         = 31
        sampledImageIntegerSampleCounts         = 1
        storageImageSampleCounts                = 1
        maxSampleMaskWords                      = 1
        timestampComputeAndGraphics             = 0
        timestampPeriod                         = 83.333336
        maxClipDistances                        = 8
        maxCullDistances                        = 8
        maxCombinedClipAndCullDistances         = 8
        discreteQueuePriorities                 = 1
        pointSizeRange[0]                       = 0.125000
        pointSizeRange[1]                       = 255.875000
        lineWidthRange[0]                       = 0.000000
        lineWidthRange[1]                       = 7.992188
        pointSizeGranularity                    = 0.125000
        lineWidthGranularity                    = 0.007812
        strictLines                             = 0
        standardSampleLocations                 = 1
        optimalBufferCopyOffsetAlignment        = 0x80
        optimalBufferCopyRowPitchAlignment      = 0x80
        nonCoherentAtomSize                     = 0x40
    VkPhysicalDeviceSparseProperties:
    ---------------------------------
        residencyStandard2DBlockShape            = 0
        residencyStandard2DMultisampleBlockShape = 0
        residencyStandard3DBlockShape            = 0
        residencyAlignedMipSize                  = 0
        residencyNonResidentStrict               = 0

Device Extensions   count = 35
    VK_KHR_16bit_storage                : extension revision  1
    VK_KHR_8bit_storage                 : extension revision  1
    VK_KHR_bind_memory2                 : extension revision  1
    VK_KHR_create_renderpass2           : extension revision  1
    VK_KHR_dedicated_allocation         : extension revision  1
    VK_KHR_descriptor_update_template   : extension revision  1
    VK_KHR_device_group                 : extension revision  1
    VK_KHR_external_fence               : extension revision  1
    VK_KHR_external_fence_fd            : extension revision  1
    VK_KHR_external_memory              : extension revision  1
    VK_KHR_external_memory_fd           : extension revision  1
    VK_KHR_external_semaphore           : extension revision  1
    VK_KHR_external_semaphore_fd        : extension revision  1
    VK_KHR_get_memory_requirements2     : extension revision  1
    VK_KHR_image_format_list            : extension revision  1
    VK_KHR_incremental_present          : extension revision  1
    VK_KHR_maintenance1                 : extension revision  1
    VK_KHR_maintenance2                 : extension revision  1
    VK_KHR_maintenance3                 : extension revision  1
    VK_KHR_push_descriptor              : extension revision  1
    VK_KHR_relaxed_block_layout         : extension revision  1
    VK_KHR_sampler_mirror_clamp_to_edge : extension revision  1
    VK_KHR_sampler_ycbcr_conversion     : extension revision  1
    VK_KHR_shader_draw_parameters       : extension revision  1
    VK_KHR_storage_buffer_storage_class : extension revision  1
    VK_KHR_swapchain                    : extension revision 68
    VK_KHR_variable_pointers            : extension revision  1
    VK_KHR_multiview                    : extension revision  1
    VK_EXT_display_control              : extension revision  1
    VK_EXT_external_memory_dma_buf      : extension revision  1
    VK_EXT_global_priority              : extension revision  1
    VK_EXT_shader_viewport_index_layer  : extension revision  1
    VK_EXT_shader_stencil_export        : extension revision  1
    VK_EXT_vertex_attribute_divisor     : extension revision  3
    VK_EXT_post_depth_coverage          : extension revision  1

VkQueueFamilyProperties[0]:
===========================
    queueFlags         = GRAPHICS | COMPUTE | TRANSFER
    queueCount         = 1
    timestampValidBits = 36
    minImageTransferGranularity = (1, 1, 1)

VkPhysicalDeviceMemoryProperties:
=================================
    memoryHeapCount       = 2
    memoryHeaps[0] :
        size          = 11429983232 (0x2a947b400) (10.65 GiB)
        flags:
            VK_MEMORY_HEAP_DEVICE_LOCAL_BIT
    memoryHeaps[1] :
        size          = 1073741824 (0x40000000) (1024.00 MiB)
        flags:
            VK_MEMORY_HEAP_DEVICE_LOCAL_BIT
    memoryTypeCount       = 2
    memoryTypes[0] :
        heapIndex     = 0
        propertyFlags = 0xf:
            VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
            VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
            VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
            VK_MEMORY_PROPERTY_HOST_CACHED_BIT
    memoryTypes[1] :
        heapIndex     = 1
        propertyFlags = 0xf:
            VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
            VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
            VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
            VK_MEMORY_PROPERTY_HOST_CACHED_BIT

VkPhysicalDeviceFeatures:
=========================
    alphaToOne                              = 1
    depthBiasClamp                          = 1
    depthBounds                             = 0
    depthClamp                              = 1
    drawIndirectFirstInstance               = 1
    dualSrcBlend                            = 1
    fillModeNonSolid                        = 1
    fragmentStoresAndAtomics                = 1
    fullDrawIndexUint32                     = 1
    geometryShader                          = 1
    imageCubeArray                          = 1
    independentBlend                        = 1
    inheritedQueries                        = 1
    largePoints                             = 1
    logicOp                                 = 1
    multiDrawIndirect                       = 1
    multiViewport                           = 1
    occlusionQueryPrecise                   = 1
    pipelineStatisticsQuery                 = 1
    robustBufferAccess                      = 1
    samplerAnisotropy                       = 1
    sampleRateShading                       = 1
    shaderClipDistance                      = 1
    shaderCullDistance                      = 1
    shaderFloat64                           = 1
    shaderImageGatherExtended               = 1
    shaderInt16                             = 1
    shaderInt64                             = 1
    shaderSampledImageArrayDynamicIndexing  = 1
    shaderStorageBufferArrayDynamicIndexing = 1
    shaderStorageImageArrayDynamicIndexing  = 1
    shaderStorageImageExtendedFormats       = 1
    shaderStorageImageMultisample           = 0
    shaderStorageImageReadWithoutFormat     = 0
    shaderStorageImageWriteWithoutFormat    = 1
    shaderTessellationAndGeometryPointSize  = 1
    shaderUniformBufferArrayDynamicIndexing = 1
    sparseBinding                           = 0
    sparseResidency2Samples                 = 0
    sparseResidency4Samples                 = 0
    sparseResidency8Samples                 = 0
    sparseResidency16Samples                = 0
    sparseResidencyAliased                  = 0
    sparseResidencyBuffer                   = 0
    sparseResidencyImage2D                  = 0
    sparseResidencyImage3D                  = 0
    shaderResourceMinLod                    = 0
    shaderResourceResidency                 = 0
    tessellationShader                      = 1
    textureCompressionASTC_LDR              = 1
    textureCompressionBC                    = 1
    textureCompressionETC2                  = 1
    variableMultisampleRate                 = 1
    vertexPipelineStoresAndAtomics          = 1
    wideLines                               = 1

Format Properties:
==================
FORMAT_UNDEFINED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_R4G4_UNORM_PACK8:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_R4G4B4A4_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_B4G4R4A4_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_R5G6B5_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_B5G6R5_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_R5G5B5A1_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B5G5R5A1_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_A1R5G5B5_UNORM_PACK16:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_R8_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_SRGB:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_R8G8_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8_SRGB:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_R8G8B8_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SRGB:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_B8G8R8_UNORM:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8_SNORM:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8_SINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8_SRGB:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_R8G8B8A8_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8A8_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8A8_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8A8_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8A8_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8A8_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8A8_SRGB:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_B8G8R8A8_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_B8G8R8A8_SNORM:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8A8_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8A8_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8A8_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8A8_SINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_B8G8R8A8_SRGB:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_A8B8G8R8_UNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A8B8G8R8_SNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A8B8G8R8_USCALED_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A8B8G8R8_SSCALED_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A8B8G8R8_UINT_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A8B8G8R8_SINT_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A8B8G8R8_SRGB_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_A2R10G10B10_UNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2R10G10B10_SNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2R10G10B10_USCALED_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2R10G10B10_SSCALED_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2R10G10B10_UINT_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2R10G10B10_SINT_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2B10G10R10_UNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2B10G10R10_SNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2B10G10R10_USCALED_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2B10G10R10_SSCALED_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2B10G10R10_UINT_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_A2B10G10R10_SINT_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_UNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_SNORM:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_USCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_SSCALED:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32A32_UINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32A32_SINT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32A32_SFLOAT:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64_SINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64_SFLOAT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64_SINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64_SFLOAT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64B64_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64B64_SINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64B64_SFLOAT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64B64A64_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64B64A64_SINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R64G64B64A64_SFLOAT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_B10G11R11_UFLOAT_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT
        VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_E5B9G9R9_UFLOAT_PACK32:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT

FORMAT_D16_UNORM:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_X8_D24_UNORM_PACK32:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_D32_SFLOAT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_S8_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_D16_UNORM_S8_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        None
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_D24_UNORM_S8_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_D32_SFLOAT_S8_UINT:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC1_RGB_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC1_RGB_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC1_RGBA_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC1_RGBA_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC2_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC2_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC3_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC3_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC4_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC4_SNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC5_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC5_SNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC6H_UFLOAT_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC6H_SFLOAT_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC7_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_BC7_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ETC2_R8G8B8_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ETC2_R8G8B8_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_EAC_R11_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_EAC_R11_SNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_EAC_R11G11_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_EAC_R11G11_SNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_4x4_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_4x4_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_5x4_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_5x4_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_5x5_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_5x5_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_6x5_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_6x5_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_6x6_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_6x6_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_8x5_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_8x5_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_8x6_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_8x6_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_8x8_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_8x8_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x5_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x5_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x6_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x6_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x8_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x8_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x10_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_10x10_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_12x10_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_12x10_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_12x12_UNORM_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None

FORMAT_ASTC_12x12_SRGB_BLOCK:
    linearTiling   FormatFeatureFlags:
        None
    optimalTiling  FormatFeatureFlags:
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
        VK_FORMAT_FEATURE_BLIT_SRC_BIT
        VK_FORMAT_FEATURE_BLIT_DST_BIT
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
    bufferFeatures FormatFeatureFlags:
        None
ArchieMeng commented 5 years ago

BTW, my computer screen stuck when I was upscaling.

nihui commented 5 years ago

reproducible on my i7-7700 machine, intel hd graphics 630, fedora 29 + mesa 18.3.5 but it doesn't appear on my laptop with intel uhd graphics 620, windows 10

it seems that there is a driver issue in intel linux vulkan driver

f11894 commented 5 years ago

Similar issue occur with AMD GPUs.

Windows 10 Ryzen 2400G VRAM 1GB Vulkan Driver Version 2.0.78 VULKANINFO https://pastebin.com/NhkAYmXh

I assumed that the cause of this issues was due to the small of VRAM capacity, and using the binary that changed the TILE_SIZE value from 400 to 128 did not solve the issue.

f11894 commented 5 years ago

Setting TdrLevel to 0 solved this issue. The cause of this issue was not due to the small amount of VRAM capacity, but was likely due to the GPU processing timed out.

nihui commented 5 years ago

I am working on a new rewrite for tile processing to further reduce gpu memory usage. I will update it as soon as I finished it :)

nihui commented 5 years ago

I may upload a new binary tomorrow after more testing. It should resolve these issue but needs more testing...

nihui commented 5 years ago

20190413 binary release uploaded add a new command line option blocksize to reduce GPU memory usage reduce the amount of commands in one submit to get better operating system responding

the following platforms are tested gtx1070 on windows 10 gtx1070 on fedora 29 gt940m on fedora 29 intel hd graphics 5500 on fedora 29 a10-7850k on windows 10 (block size = 200)

f11894 commented 5 years ago

Thank you. I confirmed that the issue was solved.

nihui commented 5 years ago

@ArchieMeng hi, please try the new version to see if the issue still exists.

Veshurik commented 5 years ago

How about multi processing, if I want to upscale many files at one time?

ArchieMeng commented 5 years ago

@nihui Yes, it works. Thxs!