==========
VULKANINFO
==========

Vulkan Instance Version: 1.1.121



Instance Extensions:
====================
Instance Extensions	count = 16
	VK_EXT_acquire_xlib_display         : extension revision  1
	VK_EXT_debug_report                 : extension revision  9
	VK_EXT_debug_utils                  : extension revision  1
	VK_EXT_direct_mode_display          : extension revision  1
	VK_EXT_display_surface_counter      : extension revision  1
	VK_KHR_device_group_creation        : extension revision  1
	VK_KHR_display                      : extension revision 21
	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_display_properties2      : 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_xcb_surface                  : extension revision  6
	VK_KHR_xlib_surface                 : extension revision  6
Layers: count = 15
=======
VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

VK_LAYER_KHRONOS_validation (LunarG Validation Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 3
		VK_EXT_debug_report                 : extension revision  9
		VK_EXT_debug_utils                  : extension revision  1
		VK_EXT_validation_features          : extension revision  2
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 2
			VK_EXT_debug_marker                 : extension revision  4
			VK_EXT_validation_cache             : extension revision  1

VK_LAYER_LUNARG_api_dump (LunarG API dump layer) Vulkan version 1.1.121, layer version 2
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

VK_LAYER_LUNARG_assistant_layer (LunarG Validation Layer Factory Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 1
			VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_LUNARG_core_validation (LunarG Validation Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 2
			VK_EXT_debug_marker                 : extension revision  4
			VK_EXT_validation_cache             : extension revision  1

VK_LAYER_LUNARG_demo_layer (LunarG Validation Layer Factory Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 1
			VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_LUNARG_device_simulation (LunarG device simulation layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

VK_LAYER_LUNARG_monitor (Execution Monitoring Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

VK_LAYER_LUNARG_object_tracker (LunarG Validation Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 1
			VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_LUNARG_parameter_validation (LunarG Validation Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 1
			VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_LUNARG_screenshot (LunarG image capture layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

VK_LAYER_LUNARG_standard_validation (LunarG Standard Validation) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 3
		VK_EXT_debug_report                 : extension revision  9
		VK_EXT_debug_utils                  : extension revision  1
		VK_EXT_validation_features          : extension revision  2
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 2
			VK_EXT_debug_marker                 : extension revision  4
			VK_EXT_validation_cache             : extension revision  1

VK_LAYER_LUNARG_starter_layer (LunarG Validation Layer Factory Layer) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 1
		VK_EXT_debug_report                 : extension revision  6
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 1
			VK_EXT_debug_marker                 : extension revision  4

VK_LAYER_LUNARG_vktrace (Vktrace tracing library) Vulkan version 1.1.121, layer version 1
	Layer Extensions	count = 0
	Devices 	count = 1
		GPU id       : 0 (GeForce RTX 2080 Ti)
		Layer-Device Extensions	count = 0

Presentable Surfaces:
=====================
GPU id       : 0 (GeForce RTX 2080 Ti)
Surface type : VK_KHR_xlib_surface
Formats:		count = 2
	SurfaceFormats[0]
		format = B8G8R8A8_UNORM
		colorSpace = SRGB_NONLINEAR_KHR
	SurfaceFormats[1]
		format = B8G8R8A8_SRGB
		colorSpace = SRGB_NONLINEAR_KHR
Present Modes:		count = 3
	FIFO_KHR
	FIFO_RELAXED_KHR
	IMMEDIATE_KHR
VkSurfaceCapabilitiesKHR:
	minImageCount       = 2
	maxImageCount       = 8
	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
	supportedUsageFlags:
		VK_IMAGE_USAGE_TRANSFER_SRC_BIT
		VK_IMAGE_USAGE_TRANSFER_DST_BIT
		VK_IMAGE_USAGE_SAMPLED_BIT
		VK_IMAGE_USAGE_STORAGE_BIT
		VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
		VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
	supportedSurfaceCounters:
		None

GPU id       : 0 (GeForce RTX 2080 Ti)
Surface type : VK_KHR_xcb_surface
Formats:		count = 2
	SurfaceFormats[0]
		format = B8G8R8A8_UNORM
		colorSpace = SRGB_NONLINEAR_KHR
	SurfaceFormats[1]
		format = B8G8R8A8_SRGB
		colorSpace = SRGB_NONLINEAR_KHR
Present Modes:		count = 3
	FIFO_KHR
	FIFO_RELAXED_KHR
	IMMEDIATE_KHR
VkSurfaceCapabilitiesKHR:
	minImageCount       = 2
	maxImageCount       = 8
	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
	supportedUsageFlags:
		VK_IMAGE_USAGE_TRANSFER_SRC_BIT
		VK_IMAGE_USAGE_TRANSFER_DST_BIT
		VK_IMAGE_USAGE_SAMPLED_BIT
		VK_IMAGE_USAGE_STORAGE_BIT
		VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
		VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
	supportedSurfaceCounters:
		None


Groups :
========
	Device Group Properties (Group 0) :
		physicalDeviceCount = 1

			GeForce RTX 2080 Ti (ID: 0)

		subsetAllocation = 0

	Device Group Present Capabilities (Group 0) :

		GeForce RTX 2080 Ti (ID: 0)
		Can present images from the following devices:
			GeForce RTX 2080 Ti (ID: 0)

		Present modes:
			VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR



Device Properties and Extensions :
==================================
GPU0
VkPhysicalDeviceProperties:
===========================
	apiVersion     = 0x40105f  (1.1.95)
	driverVersion  = 1754644480 (0x6895c000)
	vendorID       = 0x10de
	deviceID       = 0x1e04
	deviceType     = DISCRETE_GPU
	deviceName     = GeForce RTX 2080 Ti
	VkPhysicalDeviceLimits:
	-----------------------
		maxImageDimension1D                     = 32768
		maxImageDimension2D                     = 32768
		maxImageDimension3D                     = 16384
		maxImageDimensionCube                   = 32768
		maxImageArrayLayers                     = 2048
		maxTexelBufferElements                  = 0x8000000
		maxUniformBufferRange                   = 0x10000
		maxStorageBufferRange                   = 0xffffffff
		maxPushConstantsSize                    = 256
		maxMemoryAllocationCount                = 4294967295
		maxSamplerAllocationCount               = 4000
		bufferImageGranularity                  = 0x400
		sparseAddressSpaceSize                  = 0xffffffffffffffff
		maxBoundDescriptorSets                  = 32
		maxPerStageDescriptorSamplers           = 1048576
		maxPerStageDescriptorUniformBuffers     = 1048576
		maxPerStageDescriptorStorageBuffers     = 1048576
		maxPerStageDescriptorSampledImages      = 1048576
		maxPerStageDescriptorStorageImages      = 1048576
		maxPerStageDescriptorInputAttachments   = 1048576
		maxPerStageResources                    = 4294967295
		maxDescriptorSetSamplers                = 1048576
		maxDescriptorSetUniformBuffers          = 1048576
		maxDescriptorSetUniformBuffersDynamic   = 15
		maxDescriptorSetStorageBuffers          = 1048576
		maxDescriptorSetStorageBuffersDynamic   = 16
		maxDescriptorSetSampledImages           = 1048576
		maxDescriptorSetStorageImages           = 1048576
		maxDescriptorSetInputAttachments        = 1048576
		maxVertexInputAttributes                = 32
		maxVertexInputBindings                  = 32
		maxVertexInputAttributeOffset           = 0x7ff
		maxVertexInputBindingStride             = 0x800
		maxVertexOutputComponents               = 128
		maxTessellationGenerationLevel          = 64
		maxTessellationPatchSize                        = 32
		maxTessellationControlPerVertexInputComponents  = 128
		maxTessellationControlPerVertexOutputComponents = 128
		maxTessellationControlPerPatchOutputComponents  = 120
		maxTessellationControlTotalOutputComponents     = 4216
		maxTessellationEvaluationInputComponents        = 128
		maxTessellationEvaluationOutputComponents       = 128
		maxGeometryShaderInvocations            = 32
		maxGeometryInputComponents              = 128
		maxGeometryOutputComponents             = 128
		maxGeometryOutputVertices               = 1024
		maxGeometryTotalOutputComponents        = 1024
		maxFragmentInputComponents              = 128
		maxFragmentOutputAttachments            = 8
		maxFragmentDualSrcAttachments           = 1
		maxFragmentCombinedOutputResources      = 16
		maxComputeSharedMemorySize              = 49152
		maxComputeWorkGroupCount[0]             = 2147483647
		maxComputeWorkGroupCount[1]             = 65535
		maxComputeWorkGroupCount[2]             = 65535
		maxComputeWorkGroupInvocations          = 1024
		maxComputeWorkGroupSize[0]              = 1024
		maxComputeWorkGroupSize[1]              = 1024
		maxComputeWorkGroupSize[2]              = 64
		subPixelPrecisionBits                   = 8
		subTexelPrecisionBits                   = 8
		mipmapPrecisionBits                     = 8
		maxDrawIndexedIndexValue                = 4294967295
		maxDrawIndirectCount                    = 4294967295
		maxSamplerLodBias                       = 15.000000
		maxSamplerAnisotropy                    = 16.000000
		maxViewports                            = 16
		maxViewportDimensions[0]                = 32768
		maxViewportDimensions[1]                = 32768
		viewportBoundsRange[0]                  = -65536.000000
		viewportBoundsRange[1]                  =  65536.000000
		viewportSubPixelBits                    = 8
		minMemoryMapAlignment                   = 64
		minTexelBufferOffsetAlignment           = 0x10
		minUniformBufferOffsetAlignment         = 0x40
		minStorageBufferOffsetAlignment         = 0x20
		minTexelOffset                          =  -8
		maxTexelOffset                          =   7
		minTexelGatherOffset                    = -32
		maxTexelGatherOffset                    =  31
		minInterpolationOffset                  = -0.500000
		maxInterpolationOffset                  =  0.437500
		subPixelInterpolationOffsetBits         = 4
		maxFramebufferWidth                     = 32768
		maxFramebufferHeight                    = 32768
		maxFramebufferLayers                    = 2048
		framebufferColorSampleCounts            = 15
		framebufferDepthSampleCounts            = 15
		framebufferStencilSampleCounts          = 31
		framebufferNoAttachmentsSampleCounts    = 31
		maxColorAttachments                     = 8
		sampledImageColorSampleCounts           = 15
		sampledImageDepthSampleCounts           = 15
		sampledImageStencilSampleCounts         = 31
		sampledImageIntegerSampleCounts         = 15
		storageImageSampleCounts                = 15
		maxSampleMaskWords                      = 1
		timestampComputeAndGraphics             = 1
		timestampPeriod                         = 1.000000
		maxClipDistances                        = 8
		maxCullDistances                        = 8
		maxCombinedClipAndCullDistances         = 8
		discreteQueuePriorities                 = 2
		pointSizeRange[0]                       = 1.000000
		pointSizeRange[1]                       = 189.875000
		lineWidthRange[0]                       = 0.500000
		lineWidthRange[1]                       = 10.000000
		pointSizeGranularity                    = 0.125000
		lineWidthGranularity                    = 0.125000
		strictLines                             = 1
		standardSampleLocations                 = 1
		optimalBufferCopyOffsetAlignment        = 0x1
		optimalBufferCopyRowPitchAlignment      = 0x1
		nonCoherentAtomSize                     = 0x40
	VkPhysicalDeviceSparseProperties:
	---------------------------------
		residencyStandard2DBlockShape            = 1
		residencyStandard2DMultisampleBlockShape = 1
		residencyStandard3DBlockShape            = 1
		residencyAlignedMipSize                  = 0
		residencyNonResidentStrict               = 1

VkPhysicalDeviceBlendOperationAdvancedProperties:
=================================================
	advancedBlendMaxColorAttachments               = 8
	advancedBlendIndependentBlend                  = 0
	advancedBlendNonPremultipliedSrcColor          = 1
	advancedBlendNonPremultipliedDstColor          = 1
	advancedBlendCorrelatedOverlap                 = 1
	advancedBlendAllOperations                     = 1

VkPhysicalDevicePointClippingProperties:
========================================
	pointClippingBehavior               = 1

VkPhysicalDevicePushDescriptorProperties:
=========================================
	maxPushDescriptors               = 32

VkPhysicalDeviceDiscardRectangleProperties:
===========================================
	maxDiscardRectangles               = 8

VkPhysicalDeviceMultiviewProperties:
====================================
	maxMultiviewViewCount     = 32
	maxMultiviewInstanceIndex = 134217727

VkPhysicalDeviceMaintenance3Properties:
=======================================
	maxPerSetDescriptors    = 4294967295
	maxMemoryAllocationSize = 4292870144

VkPhysicalDeviceIDProperties:
=========================================
	deviceLUIDValid = false

VkPhysicalDeviceDriverProperties:
=================================
	driverID   = 4
	driverName = NVIDIA
	driverInfo = 418.87.00
	conformanceVersion:
		major    = 1
		minor    = 1
		subminor = 2
		patch    = 3

VkPhysicalDeviceFloatControlsProperties:
========================================
	denormBehaviorIndependence            = ALL_KHR
	roundingModeIndependence              = ALL_KHR
	shaderSignedZeroInfNanPreserveFloat16 = 1
	shaderSignedZeroInfNanPreserveFloat32 = 1
	shaderSignedZeroInfNanPreserveFloat64 = 1
	shaderDenormPreserveFloat16           = 1
	shaderDenormPreserveFloat32           = 0
	shaderDenormPreserveFloat64           = 0
	shaderDenormFlushToZeroFloat16        = 0
	shaderDenormFlushToZeroFloat32        = 0
	shaderDenormFlushToZeroFloat64        = 0
	shaderRoundingModeRTEFloat16          = 1
	shaderRoundingModeRTEFloat32          = 1
	shaderRoundingModeRTEFloat64          = 1
	shaderRoundingModeRTZFloat16          = 0
	shaderRoundingModeRTZFloat32          = 1
	shaderRoundingModeRTZFloat64          = 1

VkPhysicalDeviceTransformFeedbackProperties
===========================================
	maxTransformFeedbackStreams                = 4
	maxTransformFeedbackBuffers                = 4
	maxTransformFeedbackBufferSize             = 18446744073709551615
	maxTransformFeedbackStreamDataSize         = 2048
	maxTransformFeedbackBufferDataSize         = 512
	maxTransformFeedbackBufferDataStride       = 2048
	transformFeedbackQueries                   = 1
	transformFeedbackStreamsLinesTriangles     = 0
	transformFeedbackRasterizationStreamSelect = 1
	transformFeedbackDraw                      = 1

VkPhysicalDeviceDescriptorIndexingProperties
============================================
	maxUpdateAfterBindDescriptorsInAllPools = 4294967295
	shaderUniformBufferArrayNonUniformIndexingNative = 1
	shaderSampledImageArrayNonUniformIndexingNative = 1
	shaderStorageBufferArrayNonUniformIndexingNative = 1
	shaderStorageImageArrayNonUniformIndexingNative = 1
	shaderInputAttachmentArrayNonUniformIndexingNative = 1
	robustBufferAccessUpdateAfterBind = 1
	quadDivergentImplicitLod = 1
	maxPerStageDescriptorUpdateAfterBindSamplers = 1048576
	maxPerStageDescriptorUpdateAfterBindUniformBuffers = 1048576
	maxPerStageDescriptorUpdateAfterBindStorageBuffers = 1048576
	maxPerStageDescriptorUpdateAfterBindSampledImages = 1048576
	maxPerStageDescriptorUpdateAfterBindStorageImages = 1048576
	maxPerStageDescriptorUpdateAfterBindInputAttachments = 1048576
	maxPerStageUpdateAfterBindResources = 4294967295
	maxDescriptorSetUpdateAfterBindSamplers = 1048576
	maxDescriptorSetUpdateAfterBindUniformBuffers = 1048576
	maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 15
	maxDescriptorSetUpdateAfterBindStorageBuffer = 1048576
	maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 16
	maxDescriptorSetUpdateAfterBindSampledImages = 1048576
	maxDescriptorSetUpdateAfterBindStorageImages = 1048576
	maxDescriptorSetUpdateAfterBindInputAttachments = 1048576

VkPhysicalDeviceDepthStencilResolveProperties
============================================
	supportedDepthResolveModes:
		VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR
		VK_RESOLVE_MODE_AVERAGE_BIT_KHR
		VK_RESOLVE_MODE_MIN_BIT_KHR
		VK_RESOLVE_MODE_MAX_BIT_KHR
	supportedStencilResolveModes:
		VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR
		VK_RESOLVE_MODE_MIN_BIT_KHR
		VK_RESOLVE_MODE_MAX_BIT_KHR
	independentResolveNone = 1
	independentResolve     = 1

Device Extensions	count = 75
	VK_EXT_blend_operation_advanced     : extension revision  2
	VK_EXT_conditional_rendering        : extension revision  1
	VK_EXT_conservative_rasterization   : extension revision  1
	VK_EXT_depth_range_unrestricted     : extension revision  1
	VK_EXT_descriptor_indexing          : extension revision  2
	VK_EXT_discard_rectangles           : extension revision  1
	VK_EXT_display_control              : extension revision  1
	VK_EXT_global_priority              : extension revision  2
	VK_EXT_inline_uniform_block         : extension revision  1
	VK_EXT_post_depth_coverage          : extension revision  1
	VK_EXT_sample_locations             : extension revision  1
	VK_EXT_sampler_filter_minmax        : extension revision  1
	VK_EXT_scalar_block_layout          : extension revision  1
	VK_EXT_shader_subgroup_ballot       : extension revision  1
	VK_EXT_shader_subgroup_vote         : extension revision  1
	VK_EXT_shader_viewport_index_layer  : extension revision  1
	VK_EXT_transform_feedback           : extension revision  1
	VK_EXT_vertex_attribute_divisor     : extension revision  3
	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  3
	VK_KHR_depth_stencil_resolve        : extension revision  1
	VK_KHR_descriptor_update_template   : extension revision  1
	VK_KHR_device_group                 : extension revision  3
	VK_KHR_draw_indirect_count          : extension revision  1
	VK_KHR_driver_properties            : 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_maintenance1                 : extension revision  2
	VK_KHR_maintenance2                 : extension revision  1
	VK_KHR_maintenance3                 : extension revision  1
	VK_KHR_multiview                    : extension revision  1
	VK_KHR_push_descriptor              : extension revision  2
	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_atomic_int64          : extension revision  1
	VK_KHR_shader_draw_parameters       : extension revision  1
	VK_KHR_shader_float16_int8          : extension revision  1
	VK_KHR_shader_float_controls        : extension revision  1
	VK_KHR_storage_buffer_storage_class : extension revision  1
	VK_KHR_swapchain                    : extension revision 70
	VK_KHR_swapchain_mutable_format     : extension revision  1
	VK_KHR_variable_pointers            : extension revision  1
	VK_KHR_vulkan_memory_model          : extension revision  2
	VK_NVX_device_generated_commands    : extension revision  3
	VK_NVX_multiview_per_view_attributes: extension revision  1
	VK_NV_clip_space_w_scaling          : extension revision  1
	VK_NV_compute_shader_derivatives    : extension revision  1
	VK_NV_corner_sampled_image          : extension revision  2
	VK_NV_dedicated_allocation          : extension revision  1
	VK_NV_device_diagnostic_checkpoints : extension revision  2
	VK_NV_fill_rectangle                : extension revision  1
	VK_NV_fragment_coverage_to_color    : extension revision  1
	VK_NV_fragment_shader_barycentric   : extension revision  1
	VK_NV_framebuffer_mixed_samples     : extension revision  1
	VK_NV_geometry_shader_passthrough   : extension revision  1
	VK_NV_mesh_shader                   : extension revision  1
	VK_NV_ray_tracing                   : extension revision  3
	VK_NV_representative_fragment_test  : extension revision  1
	VK_NV_sample_mask_override_coverage : extension revision  1
	VK_NV_scissor_exclusive             : extension revision  1
	VK_NV_shader_image_footprint        : extension revision  1
	VK_NV_shader_subgroup_partitioned   : extension revision  1
	VK_NV_shading_rate_image            : extension revision  3
	VK_NV_viewport_array2               : extension revision  1
	VK_NV_viewport_swizzle              : extension revision  1

VkQueueFamilyProperties[0]:
===========================
	queueFlags         = GRAPHICS | COMPUTE | TRANSFER | SPARSE
	queueCount         = 16
	timestampValidBits = 64
	minImageTransferGranularity = (1, 1, 1)
	present support    = true

VkQueueFamilyProperties[1]:
===========================
	queueFlags         = TRANSFER
	queueCount         = 1
	timestampValidBits = 64
	minImageTransferGranularity = (1, 1, 1)
	present support    = false

VkQueueFamilyProperties[2]:
===========================
	queueFlags         = COMPUTE
	queueCount         = 8
	timestampValidBits = 64
	minImageTransferGranularity = (1, 1, 1)
	present support    = false

VkPhysicalDeviceMemoryProperties:
=================================
	memoryHeapCount       = 2
	memoryHeaps[0] :
		size          = 11811160064 (0x2c0000000) (11.00 GiB)
		flags:
			VK_MEMORY_HEAP_DEVICE_LOCAL_BIT
	memoryHeaps[1] :
		size          = 25233619968 (0x5e00a7c00) (23.50 GiB)
		flags:
			None
	memoryTypeCount       = 11
	memoryTypes[0] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: None
			LINEAR: None
	memoryTypes[1] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: color images
			LINEAR: None
	memoryTypes[2] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: D16_UNORM
			LINEAR: None
	memoryTypes[3] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: X8_D24_UNORM_PACK32, D24_UNORM_S8_UINT
			LINEAR: None
	memoryTypes[4] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: D32_SFLOAT
			LINEAR: None
	memoryTypes[5] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: D32_SFLOAT_S8_UINT
			LINEAR: None
	memoryTypes[6] :
		heapIndex     = 1
		propertyFlags = 0x0:
		usable for:
			OPTIMAL: S8_UINT
			LINEAR: None
	memoryTypes[7] :
		heapIndex     = 0
		propertyFlags = 0x1:
			VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
		usable for:
			OPTIMAL: color images, D16_UNORM, X8_D24_UNORM_PACK32, D32_SFLOAT, S8_UINT, D24_UNORM_S8_UINT, D32_SFLOAT_S8_UINT
			LINEAR: None
	memoryTypes[8] :
		heapIndex     = 0
		propertyFlags = 0x1:
			VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
		usable for:
			OPTIMAL: None
			LINEAR: None
	memoryTypes[9] :
		heapIndex     = 1
		propertyFlags = 0x6:
			VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
			VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
		usable for:
			OPTIMAL: None
			LINEAR: None
	memoryTypes[10] :
		heapIndex     = 1
		propertyFlags = 0xe:
			VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
			VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
			VK_MEMORY_PROPERTY_HOST_CACHED_BIT
		usable for:
			OPTIMAL: None
			LINEAR: None

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

VkPhysicalDevice8BitStorageFeatures:
=====================================
	storageBuffer8BitAccess           = 1
	uniformAndStorageBuffer8BitAccess = 1
	storagePushConstant8              = 1

VkPhysicalDevice16BitStorageFeatures:
=====================================
	storageBuffer16BitAccess           = 1
	uniformAndStorageBuffer16BitAccess = 1
	storagePushConstant16              = 1
	storageInputOutput16               = 0

VkPhysicalDeviceSamplerYcbcrConversionFeatures:
===============================================
	samplerYcbcrConversion = 1

VkPhysicalDeviceVariablePointerFeatures:
========================================
	variablePointersStorageBuffer = 1
	variablePointers              = 1

VkPhysicalDeviceBlendOperationAdvancedFeatures:
===============================================
	advancedBlendCoherentOperations = 1

VkPhysicalDeviceMultiviewFeatures:
==================================
	multiview                   = 1
	multiviewGeometryShader     = 1
	multiviewTessellationShader = 1

VkPhysicalDeviceFloat16Int8Features:
====================================
	shaderFloat16 = 1
	shaderInt8    = 1

VkPhysicalDeviceShaderAtomicInt64Features:
==========================================
	shaderBufferInt64Atomics = 1
	shaderSharedInt64Atomics = 1

VkPhysicalDeviceTransformFeedbackFeatures:
==========================================
	transformFeedback = 1
	geometryStreams   = 1

VkPhysicalDeviceScalarBlockLayoutFeatures:
==========================================
	scalarBlockLayout = 1

VkPhysicalDeviceDescriptorIndexingFeatures:
=======================================
	shaderInputAttachmentArrayDynamicIndexing = 1
	shaderUniformTexelBufferArrayDynamicIndexing = 1
	shaderStorageTexelBufferArrayDynamicIndexing = 1
	shaderUniformBufferArrayNonUniformIndexing = 1
	shaderSampledImageArrayNonUniformIndexing = 1
	shaderStorageBufferArrayNonUniformIndexing = 1
	shaderStorageImageArrayNonUniformIndexing = 1
	shaderInputAttachmentArrayNonUniformIndexing = 1
	shaderUniformTexelBufferArrayNonUniformIndexing = 1
	shaderStorageTexelBufferArrayNonUniformIndexing = 1
	descriptorBindingUniformBufferUpdateAfterBind = 1
	descriptorBindingSampledImageUpdateAfterBind = 1
	descriptorBindingStorageImageUpdateAfterBind = 1
	descriptorBindingStorageBufferUpdateAfterBind = 1
	descriptorBindingUniformTexelBufferUpdateAfterBind = 1
	descriptorBindingStorageTexelBufferUpdateAfterBind = 1
	descriptorBindingUpdateUnusedWhilePending = 1
	descriptorBindingPartiallyBound = 1
	descriptorBindingVariableDescriptorCount = 1
	runtimeDescriptorArray = 1

Format Properties:
==================

FORMAT_R4G4_UNORM_PACK8,
FORMAT_R4G4B4A4_UNORM_PACK16,
FORMAT_B4G4R4A4_UNORM_PACK16,
FORMAT_B5G6R5_UNORM_PACK16,
FORMAT_R5G5B5A1_UNORM_PACK16,
FORMAT_B5G5R5A1_UNORM_PACK16,
FORMAT_E5B9G9R9_UFLOAT_PACK32:
	linearTiling   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

	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

FORMAT_R5G6B5_UNORM_PACK16,
FORMAT_A1R5G5B5_UNORM_PACK16:
	linearTiling   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

	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,
FORMAT_R8_SNORM,
FORMAT_R8G8_UNORM,
FORMAT_R8G8_SNORM,
FORMAT_R8G8B8A8_UNORM,
FORMAT_R8G8B8A8_SNORM,
FORMAT_B8G8R8A8_UNORM,
FORMAT_A8B8G8R8_UNORM_PACK32,
FORMAT_A8B8G8R8_SNORM_PACK32,
FORMAT_A2B10G10R10_UNORM_PACK32,
FORMAT_R16_UNORM,
FORMAT_R16_SNORM,
FORMAT_R16_SFLOAT,
FORMAT_R16G16_UNORM,
FORMAT_R16G16_SNORM,
FORMAT_R16G16_SFLOAT,
FORMAT_R16G16B16A16_UNORM,
FORMAT_R16G16B16A16_SNORM,
FORMAT_R16G16B16A16_SFLOAT,
FORMAT_R32G32_SFLOAT,
FORMAT_R32G32B32A32_SFLOAT,
FORMAT_B10G11R11_UFLOAT_PACK32:
	linearTiling   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

	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,
FORMAT_R8_SSCALED,
FORMAT_R8G8_USCALED,
FORMAT_R8G8_SSCALED,
FORMAT_R8G8B8_UNORM,
FORMAT_R8G8B8_SNORM,
FORMAT_R8G8B8_USCALED,
FORMAT_R8G8B8_SSCALED,
FORMAT_R8G8B8_UINT,
FORMAT_R8G8B8_SINT,
FORMAT_B8G8R8_UNORM,
FORMAT_B8G8R8_SNORM,
FORMAT_B8G8R8_USCALED,
FORMAT_B8G8R8_SSCALED,
FORMAT_B8G8R8_UINT,
FORMAT_B8G8R8_SINT,
FORMAT_R8G8B8A8_USCALED,
FORMAT_R8G8B8A8_SSCALED,
FORMAT_B8G8R8A8_USCALED,
FORMAT_B8G8R8A8_SSCALED,
FORMAT_A8B8G8R8_USCALED_PACK32,
FORMAT_A8B8G8R8_SSCALED_PACK32,
FORMAT_A2R10G10B10_SNORM_PACK32,
FORMAT_A2R10G10B10_USCALED_PACK32,
FORMAT_A2R10G10B10_SSCALED_PACK32,
FORMAT_A2R10G10B10_SINT_PACK32,
FORMAT_A2B10G10R10_SNORM_PACK32,
FORMAT_A2B10G10R10_USCALED_PACK32,
FORMAT_A2B10G10R10_SSCALED_PACK32,
FORMAT_A2B10G10R10_SINT_PACK32,
FORMAT_R16_USCALED,
FORMAT_R16_SSCALED,
FORMAT_R16G16_USCALED,
FORMAT_R16G16_SSCALED,
FORMAT_R16G16B16_UNORM,
FORMAT_R16G16B16_SNORM,
FORMAT_R16G16B16_USCALED,
FORMAT_R16G16B16_SSCALED,
FORMAT_R16G16B16_UINT,
FORMAT_R16G16B16_SINT,
FORMAT_R16G16B16_SFLOAT,
FORMAT_R16G16B16A16_USCALED,
FORMAT_R16G16B16A16_SSCALED,
FORMAT_R64_UINT,
FORMAT_R64_SINT,
FORMAT_R64_SFLOAT,
FORMAT_R64G64_UINT,
FORMAT_R64G64_SINT,
FORMAT_R64G64_SFLOAT,
FORMAT_R64G64B64_UINT,
FORMAT_R64G64B64_SINT,
FORMAT_R64G64B64_SFLOAT,
FORMAT_R64G64B64A64_UINT,
FORMAT_R64G64B64A64_SINT,
FORMAT_R64G64B64A64_SFLOAT:
	linearTiling   FormatFeatureFlags:
		None

	optimalTiling  FormatFeatureFlags:
		None

	bufferFeatures FormatFeatureFlags:
		VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8_UINT,
FORMAT_R8_SINT,
FORMAT_R8G8_UINT,
FORMAT_R8G8_SINT,
FORMAT_R8G8B8A8_UINT,
FORMAT_R8G8B8A8_SINT,
FORMAT_A8B8G8R8_UINT_PACK32,
FORMAT_A8B8G8R8_SINT_PACK32,
FORMAT_A2B10G10R10_UINT_PACK32,
FORMAT_R16_UINT,
FORMAT_R16_SINT,
FORMAT_R16G16_UINT,
FORMAT_R16G16_SINT,
FORMAT_R16G16B16A16_UINT,
FORMAT_R16G16B16A16_SINT,
FORMAT_R32G32_UINT,
FORMAT_R32G32_SINT,
FORMAT_R32G32B32A32_UINT,
FORMAT_R32G32B32A32_SINT:
	linearTiling   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

	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,
FORMAT_BC1_RGB_UNORM_BLOCK,
FORMAT_BC1_RGB_SRGB_BLOCK,
FORMAT_BC1_RGBA_UNORM_BLOCK,
FORMAT_BC1_RGBA_SRGB_BLOCK,
FORMAT_BC2_UNORM_BLOCK,
FORMAT_BC2_SRGB_BLOCK,
FORMAT_BC3_UNORM_BLOCK,
FORMAT_BC3_SRGB_BLOCK,
FORMAT_BC4_UNORM_BLOCK,
FORMAT_BC4_SNORM_BLOCK,
FORMAT_BC5_UNORM_BLOCK,
FORMAT_BC5_SNORM_BLOCK,
FORMAT_BC6H_UFLOAT_BLOCK,
FORMAT_BC6H_SFLOAT_BLOCK,
FORMAT_BC7_UNORM_BLOCK,
FORMAT_BC7_SRGB_BLOCK:
	linearTiling   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

	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:
		None

FORMAT_R8G8B8A8_SRGB,
FORMAT_B8G8R8A8_SRGB,
FORMAT_A8B8G8R8_SRGB_PACK32:
	linearTiling   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

	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:
		None

FORMAT_B8G8R8A8_SNORM:
	linearTiling   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

	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_B8G8R8A8_UINT,
FORMAT_B8G8R8A8_SINT,
FORMAT_A2R10G10B10_UINT_PACK32:
	linearTiling   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

	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_A2R10G10B10_UNORM_PACK32:
	linearTiling   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

	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_R32_UINT,
FORMAT_R32_SINT:
	linearTiling   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

	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_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

	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_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_STORAGE_TEXEL_BUFFER_ATOMIC_BIT
		VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R32G32B32_UINT,
FORMAT_R32G32B32_SINT:
	linearTiling   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

	optimalTiling  FormatFeatureFlags:
		None

	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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
		VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
		VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR

	optimalTiling  FormatFeatureFlags:
		None

	bufferFeatures FormatFeatureFlags:
		VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
		VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_D16_UNORM,
FORMAT_X8_D24_UNORM_PACK32,
FORMAT_D32_SFLOAT,
FORMAT_D24_UNORM_S8_UINT,
FORMAT_D32_SFLOAT_S8_UINT:
	linearTiling   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

	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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
		VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
		VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR

	bufferFeatures FormatFeatureFlags:
		None

FORMAT_S8_UINT:
	linearTiling   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

	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_G8B8G8R8_422_UNORM,
FORMAT_B8G8R8G8_422_UNORM,
FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,
FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,
FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,
FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,
FORMAT_G16B16G16R16_422_UNORM,
FORMAT_B16G16R16G16_422_UNORM:
	linearTiling   FormatFeatureFlags:
		VK_FORMAT_FEATURE_SAMPLED_IMAGE_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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
		VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
		VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR

	bufferFeatures FormatFeatureFlags:
		None

FORMAT_G8_B8_R8_3PLANE_420_UNORM,
FORMAT_G8_B8R8_2PLANE_420_UNORM,
FORMAT_G8_B8_R8_3PLANE_422_UNORM,
FORMAT_G8_B8R8_2PLANE_422_UNORM,
FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,
FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,
FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,
FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,
FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,
FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,
FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,
FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,
FORMAT_G16_B16_R16_3PLANE_420_UNORM,
FORMAT_G16_B16R16_2PLANE_420_UNORM,
FORMAT_G16_B16_R16_3PLANE_422_UNORM,
FORMAT_G16_B16R16_2PLANE_422_UNORM:
	linearTiling   FormatFeatureFlags:
		VK_FORMAT_FEATURE_SAMPLED_IMAGE_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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
		VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
		VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR

	bufferFeatures FormatFeatureFlags:
		None

FORMAT_G8_B8_R8_3PLANE_444_UNORM,
FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,
FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,
FORMAT_G16_B16_R16_3PLANE_444_UNORM:
	linearTiling   FormatFeatureFlags:
		VK_FORMAT_FEATURE_SAMPLED_IMAGE_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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
		VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
		VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR

	bufferFeatures FormatFeatureFlags:
		None

FORMAT_R10X6_UNORM_PACK16,
FORMAT_R10X6G10X6_UNORM_2PACK16,
FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,
FORMAT_R12X4_UNORM_PACK16,
FORMAT_R12X4G12X4_UNORM_2PACK16,
FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16:
	linearTiling   FormatFeatureFlags:
		VK_FORMAT_FEATURE_SAMPLED_IMAGE_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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
		VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
		VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR

	bufferFeatures FormatFeatureFlags:
		None

Unsupported formats:
FORMAT_UNDEFINED
FORMAT_R8G8_SRGB
FORMAT_R8G8B8_SRGB
FORMAT_B8G8R8_SRGB
FORMAT_D16_UNORM_S8_UINT
FORMAT_ETC2_R8G8B8_UNORM_BLOCK
FORMAT_ETC2_R8G8B8_SRGB_BLOCK
FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK
FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK
FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK
FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK
FORMAT_EAC_R11_UNORM_BLOCK
FORMAT_EAC_R11_SNORM_BLOCK
FORMAT_EAC_R11G11_UNORM_BLOCK
FORMAT_EAC_R11G11_SNORM_BLOCK
FORMAT_ASTC_4x4_UNORM_BLOCK
FORMAT_ASTC_4x4_SRGB_BLOCK
FORMAT_ASTC_5x4_UNORM_BLOCK
FORMAT_ASTC_5x4_SRGB_BLOCK
FORMAT_ASTC_5x5_UNORM_BLOCK
FORMAT_ASTC_5x5_SRGB_BLOCK
FORMAT_ASTC_6x5_UNORM_BLOCK
FORMAT_ASTC_6x5_SRGB_BLOCK
FORMAT_ASTC_6x6_UNORM_BLOCK
FORMAT_ASTC_6x6_SRGB_BLOCK
FORMAT_ASTC_8x5_UNORM_BLOCK
FORMAT_ASTC_8x5_SRGB_BLOCK
FORMAT_ASTC_8x6_UNORM_BLOCK
FORMAT_ASTC_8x6_SRGB_BLOCK
FORMAT_ASTC_8x8_UNORM_BLOCK
FORMAT_ASTC_8x8_SRGB_BLOCK
FORMAT_ASTC_10x5_UNORM_BLOCK
FORMAT_ASTC_10x5_SRGB_BLOCK
FORMAT_ASTC_10x6_UNORM_BLOCK
FORMAT_ASTC_10x6_SRGB_BLOCK
FORMAT_ASTC_10x8_UNORM_BLOCK
FORMAT_ASTC_10x8_SRGB_BLOCK
FORMAT_ASTC_10x10_UNORM_BLOCK
FORMAT_ASTC_10x10_SRGB_BLOCK
FORMAT_ASTC_12x10_UNORM_BLOCK
FORMAT_ASTC_12x10_SRGB_BLOCK
FORMAT_ASTC_12x12_UNORM_BLOCK
FORMAT_ASTC_12x12_SRGB_BLOCK

