Coder Social home page Coder Social logo

khronosgroup / vulkan-tools Goto Github PK

View Code? Open in Web Editor NEW
355.0 59.0 151.0 44.51 MB

Vulkan Development Tools

License: Apache License 2.0

CMake 1.37% Shell 0.04% C++ 50.21% C 39.20% GLSL 0.07% Objective-C 0.54% Objective-C++ 0.26% Python 8.18% NSIS 0.13%
vulkan

vulkan-tools's Introduction

KhronosGroup/Vulkan-Tools

This project provides Vulkan tools and utilities that can assist development by enabling developers to verify their applications correct use of the Vulkan API.

Intro

The following components are available in this repository:

Contact Information

Information for Developing or Contributing:

Please see the CONTRIBUTING.md file in this repository for more details. Please see the GOVERNANCE.md file in this repository for repository management details.

How to Build and Run

BUILD.md includes directions for building all components as well as running the vkcube demo applications.

Version Tagging Scheme

Updates to this repository which correspond to a new Vulkan specification release are tagged using the following format: v<version> (e.g., v1.3.266).

Note: Marked version releases have undergone thorough testing but do not imply the same quality level as SDK tags. SDK tags follow the vulkan-sdk-<version>.<patch> format (e.g., vulkan-sdk-1.3.266.0).

This scheme was adopted following the 1.3.266 Vulkan specification release.

License

This work is released as open source under a Apache-style license from Khronos including a Khronos copyright.

See LICENSE.txt for a full list of licenses used in this repository.

Acknowledgements

While this project has been developed primarily by LunarG, Inc., there are many other companies and individuals making this possible: Valve Corporation, funding project development; Google providing significant contributions to the validation layers; Khronos providing oversight and hosting of the project.

vulkan-tools's People

Contributors

charles-lunarg avatar chrisforbes avatar cnorthrop avatar courtney-g avatar courtney-lunarg avatar daveh-lunarg avatar davidlunarg avatar dustin-lunarg avatar greg-lunarg avatar ianatlunarg avatar ianelliottus avatar jeremy-lunarg avatar jeremyk-lunarg avatar jon-lunarg avatar juan-lunarg avatar jzulauf-lunarg avatar karl-lunarg avatar krooze avatar lenny-lunarg avatar mark-lunarg avatar marky-lunarg avatar mikes-lunarg avatar null77 avatar olvaffe avatar renelindsay avatar richard-lunarg avatar shannon-lunarg avatar stroyan avatar tobine avatar tonybarbour avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vulkan-tools's Issues

FindVulkanHeaders.cmake might not set VulkanRegistry_DIR (macOS)

I provide VULKAN_HEADERS_INSTALL_DIR and VULKAN_LOADER_INSTALL_DIR paths. I want to use those dependencies in the repositories I cloned/built instead of duplicating them with update_deps.py. In this case problem appears in this call (cmake/FindVulkanHeaders.cmake):
find_path(VulkanHeaders_INCLUDE_DIR
NAMES vulkan/vulkan.h
HINTS
${VULKAN_HEADERS_INSTALL_DIR}/include
"$ENV{VULKAN_HEADERS_INSTALL_DIR}/include"
"$ENV{VULKAN_SDK}/include")
This function uses global VULKAN_LOADER_INSTALL_DIR to set VulkanHeaders_INCLUDE_DIR value. It is possible because VulcanLoader has vulkan.framework package, so find_path ignores hints and VulkanHeaders_INCLUDE_DIR will point to "..../loader/vulkan.framework/Headers".
Obviously, there is no "share/vulkan/registry" folder in the vulkan.framework, so VulkanRegistry_DIR will be not defined.
In order to make find_path use hints (it should search VULKAN_HEADERS_INSTALL_DIR for VulkanHeaders), I added NO_DEFAULT_PATH parameter, like this:
find_path(VulkanHeaders_INCLUDE_DIR
NAMES vulkan/vulkan.h
HINTS
${VULKAN_HEADERS_INSTALL_DIR}/include
"$ENV{VULKAN_HEADERS_INSTALL_DIR}/include"
"$ENV{VULKAN_SDK}/include"
NO_DEFAULT_PATH)
After that cmake worked fine with all the provided parameters (VULKAN_HEADERS_INSTALL_DIR, VULKAN_LOADER_INSTALL_DIR, MOLTENVK_REPO_ROOT etc).

Would it be an appropriate fix?

vulkaninfo html output not valid html5

vulkaninfo html output shows validation errors at https://validator.w3.org.
Notably:

  1. missing charset
  2. div tag not allowed in summary tag. Should probably use span...

vulkaninfo: on MacOS vulkaninfo repeats Presentable Surface Formats

In section 'Presentable Surfaces' under subsection 'Formats' vulkaninfo claims there are 32 formats, but repeats the same 4.

Presentable Surfaces:

GPU id : 0 (Intel(R) Iris(TM) Plus Graphics 640)
Surface type : VK_MVK_macos_surface
Formats: count = 32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32
B8G8R8A8_UNORM
B8G8R8A8_SRGB
R16G16B16A16_SFLOAT
A2R10G10B10_UNORM_PACK32

@cdavis5e informed us that: That's because, if you enable VK_EXT_swapchain_colorspace, MoltenVK now reports some of the color spaces defined therein. The other 28, then, are for each additional color space beyond VK_COLOR_SPACE_SRGB_NONLINEAR_KHR that we support. But vulkaninfo does not print the color space for each enumerated format.

Cube Cmake error during downloading with glslangValidator.py

macOS
10.14 Beta (18A326g)

cmake -DCMAKE_BUILD_TYPE=Debug -DVULKAN_LOADER_INSTALL_DIR=/Users/but0n/vulkansdk/macOS/lib/ -DMOLTENVK_REPO_ROOT=/Users/but0n/vulkansdk/macOS/lib/ ..
-- Using cmake find_program to look for glslangValidator
   Downloading glslangValidator binary from glslang releases dir
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1317, in do_open
    encode_chunked=req.has_header('Transfer-encoding'))
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1229, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1275, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1224, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1016, in _send_output
    self.send(msg)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 956, in send
    self.connect()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1392, in connect
    server_hostname=server_hostname)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 412, in wrap_socket
    session=session
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 850, in _create
    self.do_handshake()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 1108, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/but0n/Github/Vulkan-Tools/cube/scripts/fetch_glslangvalidator.py", line 63, in <module>
    urllib.request.urlretrieve(GLSLANG_COMPLETE_URL, GLSLANG_OUTFILENAME)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 247, in urlretrieve
    with contextlib.closing(urlopen(url, data)) as fp:
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1319, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)>
CMake Warning (dev) in CMakeLists.txt:
  No cmake_minimum_required command is present.  A line of code such as

    cmake_minimum_required(VERSION 3.10)

  should be added at the top of the file.  The version specified may be lower
  if you wish to support older CMake versions for this project.  For more
  information run "cmake --help-policy CMP0000".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring done
CMake Error at macOS/cubepp/cubepp.cmake:36 (add_executable):
  Cannot find source file:

    /Users/but0n/Github/Vulkan-Tools/cube/staging-json/MoltenVK_icd.json

  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
  .hxx .in .txx
Call Stack (most recent call first):
  CMakeLists.txt:213 (include)


CMake Warning (dev) at macOS/cubepp/cubepp.cmake:49 (add_dependencies):
  Policy CMP0046 is not set: Error on non-existent dependency in
  add_dependencies.  Run "cmake --help-policy CMP0046" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  The dependency target "MoltenVK_icd-staging-json" of target "cubepp" does
  not exist.
Call Stack (most recent call first):
  CMakeLists.txt:213 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at macOS/cube/cube.cmake:48 (add_dependencies):
  Policy CMP0046 is not set: Error on non-existent dependency in
  add_dependencies.  Run "cmake --help-policy CMP0046" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  The dependency target "MoltenVK_icd-staging-json" of target "cube" does not
  exist.
Call Stack (most recent call first):
  CMakeLists.txt:183 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Error: CMake can not determine linker language for target: cubepp
CMake Error: Cannot determine link language for target "cubepp".
CMake Error: CMake can not determine linker language for target: cube
CMake Error: Cannot determine link language for target "cube".
-- Generating done
-- Build files have been written to: /Users/but0n/Github/Vulkan-Tools/cube

Can't finish compilation on Debian 10

After a successfull CMake configuration I have errors while trying to compile:

[ 23%] Built target vkcube
[ 47%] Built target vkcubepp
[ 52%] Building C object vulkaninfo/CMakeFiles/vulkaninfo.dir/vulkaninfo.c.o
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c: In function โ€˜AppGpuInitโ€™:
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:1098:23: error: โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXTโ€™ undeclared (first use in this function); did you mean โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXTโ€™?
             {.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT,
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:1098:23: note: each undeclared identifier is reported only once for each function it appears in
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:1099:33: error: โ€˜VkPhysicalDeviceYcbcrImageArraysFeaturesEXTโ€™ undeclared (first use in this function); did you mean โ€˜VkPhysicalDeviceMemoryPriorityFeaturesEXTโ€™?
              .mem_size = sizeof(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT)},
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                 VkPhysicalDeviceMemoryPriorityFeaturesEXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:1100:23: error: โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXTโ€™ undeclared (first use in this function); did you mean โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXTโ€™?
             {.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT,
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:1101:33: error: โ€˜VkPhysicalDeviceHostQueryResetFeaturesEXTโ€™ undeclared (first use in this function); did you mean โ€˜VkPhysicalDeviceBufferAddressFeaturesEXTโ€™?
              .mem_size = sizeof(VkPhysicalDeviceHostQueryResetFeaturesEXT)}};
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                 VkPhysicalDeviceBufferAddressFeaturesEXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c: In function โ€˜AppDumpSurfaceCapabilitiesโ€™:
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2082:43: error: โ€˜VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHRโ€™ undeclared (first use in this function); did you mean โ€˜VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHRโ€™?
                 } else if (work->sType == VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR &&
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                           VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2082:40: warning: comparison between pointer and integer
                 } else if (work->sType == VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR &&
                                        ^~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2083:50: error: โ€˜VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAMEโ€™ undeclared (first use in this function); did you mean โ€˜VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAMEโ€™?
                            CheckExtensionEnabled(VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME, gpu->inst->inst_extensions,
                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                  VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2083:50: warning: passing argument 1 of โ€˜CheckExtensionEnabledโ€™ from incompatible pointer type [-Wincompatible-pointer-types]
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:582:47: note: expected โ€˜const char *โ€™ but argument is of type โ€˜struct pNextChainBuildingBlockInfo *โ€™
 static bool CheckExtensionEnabled(const char *extension_to_check, const char **extension_list, uint32_t extension_count) {
                                   ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2085:21: error: unknown type name โ€˜VkSurfaceProtectedCapabilitiesKHRโ€™; did you mean โ€˜VkSurfaceCapabilitiesKHRโ€™?
                     VkSurfaceProtectedCapabilitiesKHR *protected_surface_capabilities = (VkSurfaceProtectedCapabilitiesKHR *)place;
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                     VkSurfaceCapabilitiesKHR
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2085:90: error: โ€˜VkSurfaceProtectedCapabilitiesKHRโ€™ undeclared (first use in this function); did you mean โ€˜VkSurfaceCapabilitiesKHRโ€™?
 kSurfaceProtectedCapabilitiesKHR *protected_surface_capabilities = (VkSurfaceProtectedCapabilitiesKHR *)place;
                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                                     VkSurfaceCapabilitiesKHR
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2085:125: error: expected expression before โ€˜)โ€™ token
 R *protected_surface_capabilities = (VkSurfaceProtectedCapabilitiesKHR *)place;
                                                                         ^

/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2085:124: error: invalid operands to binary * (have โ€˜struct pNextChainBuildingBlockInfo *โ€™ and โ€˜struct pNextChainBuildingBlockInfo *โ€™)
 R *protected_surface_capabilities = (VkSurfaceProtectedCapabilitiesKHR *)place;
                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^

/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2085:89: warning: initialization of โ€˜int *โ€™ from incompatible pointer type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wincompatible-pointer-types]
 VkSurfaceProtectedCapabilitiesKHR *protected_surface_capabilities = (VkSurfaceProtectedCapabilitiesKHR *)place;
                                                                     ^

/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2091:63: error: request for member โ€˜supportsProtectedโ€™ in something not a structure or union
                                 protected_surface_capabilities->supportsProtected);
                                                               ^~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2089:33: warning: format โ€˜%uโ€™ expects argument of type โ€˜unsigned intโ€™, but argument 3 has type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wformat=]
                                 "\t\t\t\t\t\t\t<details><summary>supportsProtected = <span class='val'>%" PRIuLEAST32
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2091:33:
                                 protected_surface_capabilities->supportsProtected);
                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:36:
/usr/include/inttypes.h:109:23: note: format string is defined here
 # define PRIuLEAST32 "u"
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2095:106: error: request for member โ€˜supportsProtectedโ€™ in something not a structure or union
 portsProtected = %" PRIuLEAST32 "\n", protected_surface_capabilities->supportsProtected);
                                                                     ^~

/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:2095:32: warning: format โ€˜%uโ€™ expects argument of type โ€˜unsigned intโ€™, but argument 2 has type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wformat=]
                         printf("\tsupportsProtected = %" PRIuLEAST32 "\n", protected_surface_capabilities->supportsProtected);
                                ^~~~~~~~~~~~~~~~~~~~~~~~~                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:36:
/usr/include/inttypes.h:109:23: note: format string is defined here
 # define PRIuLEAST32 "u"
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c: In function โ€˜AppGpuDumpFeaturesโ€™:
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3221:44: error: โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXTโ€™ undeclared (first use in this function); did you mean โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXTโ€™?
             } else if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT &&
                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                            VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3221:41: warning: comparison between pointer and integer
             } else if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT &&
                                         ^~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3222:61: error: โ€˜VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAMEโ€™ undeclared (first use in this function); did you mean โ€˜VK_EXT_HDR_METADATA_EXTENSION_NAMEโ€™?
                        CheckPhysicalDeviceExtensionIncluded(VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME, gpu->device_extensions,
                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                             VK_EXT_HDR_METADATA_EXTENSION_NAME
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3222:61: warning: passing argument 1 of โ€˜CheckPhysicalDeviceExtensionIncludedโ€™ from incompatible pointer type [-Wincompatible-pointer-types]
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:591:62: note: expected โ€˜const char *โ€™ but argument is of type โ€˜struct pNextChainBuildingBlockInfo *โ€™
 static bool CheckPhysicalDeviceExtensionIncluded(const char *extension_to_check, VkExtensionProperties *extension_list,
                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3224:17: error: unknown type name โ€˜VkPhysicalDeviceYcbcrImageArraysFeaturesEXTโ€™; did you mean โ€˜VkPhysicalDeviceMemoryPriorityFeaturesEXTโ€™?
                 VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *ycbcr_image_arrays_features =
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 VkPhysicalDeviceMemoryPriorityFeaturesEXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3225:22: error: โ€˜VkPhysicalDeviceYcbcrImageArraysFeaturesEXTโ€™ undeclared (first use in this function); did you mean โ€˜VkPhysicalDeviceMemoryPriorityFeaturesEXTโ€™?
                     (VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *)structure;
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      VkPhysicalDeviceMemoryPriorityFeaturesEXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3225:67: error: expected expression before โ€˜)โ€™ token
                     (VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *)structure;
                                                                   ^
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3225:66: error: invalid operands to binary * (have โ€˜struct pNextChainBuildingBlockInfo *โ€™ and โ€˜struct pNextChainBuildingBlockInfo *โ€™)
                     (VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *)structure;
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3225:21: warning: initialization of โ€˜int *โ€™ from incompatible pointer type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wincompatible-pointer-types]
                     (VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *)structure;
                     ^
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3231:56: error: request for member โ€˜ycbcrImageArraysโ€™ in something not a structure or union
                             ycbcr_image_arrays_features->ycbcrImageArrays);
                                                        ^~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3229:29: warning: format โ€˜%uโ€™ expects argument of type โ€˜unsigned intโ€™, but argument 3 has type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wformat=]
                             "\t\t\t\t\t\t<details><summary>ycbcrImageArrays = <span class='val'>%" PRIuLEAST32
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3231:29:
                             ycbcr_image_arrays_features->ycbcrImageArrays);
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:36:
/usr/include/inttypes.h:109:23: note: format string is defined here
 # define PRIuLEAST32 "u"
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3236:98: error: request for member โ€˜ycbcrImageArraysโ€™ in something not a structure or union
 tycbcrImageArrays = %" PRIuLEAST32 "\n", ycbcr_image_arrays_features->ycbcrImageArrays);
                                                                     ^~

/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3236:28: warning: format โ€˜%uโ€™ expects argument of type โ€˜unsigned intโ€™, but argument 2 has type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wformat=]
                     printf("\tycbcrImageArrays = %" PRIuLEAST32 "\n", ycbcr_image_arrays_features->ycbcrImageArrays);
                            ^~~~~~~~~~~~~~~~~~~~~~~~                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:36:
/usr/include/inttypes.h:109:23: note: format string is defined here
 # define PRIuLEAST32 "u"
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3238:44: error: โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXTโ€™ undeclared (first use in this function); did you mean โ€˜VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXTโ€™?
             } else if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT &&
                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                            VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3238:41: warning: comparison between pointer and integer
             } else if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT &&
                                         ^~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3239:61: error: โ€˜VK_EXT_HOST_QUERY_RESET_EXTENSION_NAMEโ€™ undeclared (first use in this function); did you mean โ€˜VK_EXT_DEBUG_REPORT_EXTENSION_NAMEโ€™?
                        CheckPhysicalDeviceExtensionIncluded(VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, gpu->device_extensions,
                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                             VK_EXT_DEBUG_REPORT_EXTENSION_NAME
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3239:61: warning: passing argument 1 of โ€˜CheckPhysicalDeviceExtensionIncludedโ€™ from incompatible pointer type [-Wincompatible-pointer-types]
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:591:62: note: expected โ€˜const char *โ€™ but argument is of type โ€˜struct pNextChainBuildingBlockInfo *โ€™
 static bool CheckPhysicalDeviceExtensionIncluded(const char *extension_to_check, VkExtensionProperties *extension_list,
                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3241:17: error: unknown type name โ€˜VkPhysicalDeviceHostQueryResetFeaturesEXTโ€™; did you mean โ€˜VkPhysicalDeviceBufferAddressFeaturesEXTโ€™?
                 VkPhysicalDeviceHostQueryResetFeaturesEXT *host_query_reset_features =
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 VkPhysicalDeviceBufferAddressFeaturesEXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3242:22: error: โ€˜VkPhysicalDeviceHostQueryResetFeaturesEXTโ€™ undeclared (first use in this function); did you mean โ€˜VkPhysicalDeviceBufferAddressFeaturesEXTโ€™?
                     (VkPhysicalDeviceHostQueryResetFeaturesEXT *)structure;
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      VkPhysicalDeviceBufferAddressFeaturesEXT
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3242:65: error: expected expression before โ€˜)โ€™ token
                     (VkPhysicalDeviceHostQueryResetFeaturesEXT *)structure;
                                                                 ^
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3242:64: error: invalid operands to binary * (have โ€˜struct pNextChainBuildingBlockInfo *โ€™ and โ€˜struct pNextChainBuildingBlockInfo *โ€™)
                     (VkPhysicalDeviceHostQueryResetFeaturesEXT *)structure;
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3242:21: warning: initialization of โ€˜int *โ€™ from incompatible pointer type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wincompatible-pointer-types]
                     (VkPhysicalDeviceHostQueryResetFeaturesEXT *)structure;
                     ^
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3248:54: error: request for member โ€˜hostQueryResetโ€™ in something not a structure or union
                             host_query_reset_features->hostQueryReset);
                                                      ^~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3246:29: warning: format โ€˜%uโ€™ expects argument of type โ€˜unsigned intโ€™, but argument 3 has type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wformat=]
                             "\t\t\t\t\t\t<details><summary>hostQueryReset = <span class='val'>%" PRIuLEAST32
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3248:29:
                             host_query_reset_features->hostQueryReset);
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:36:
/usr/include/inttypes.h:109:23: note: format string is defined here
 # define PRIuLEAST32 "u"
/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3253:94: error: request for member โ€˜hostQueryResetโ€™ in something not a structure or union
 f("\thostQueryReset = %" PRIuLEAST32 "\n", host_query_reset_features->hostQueryReset);
                                                                     ^~

/storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:3253:28: warning: format โ€˜%uโ€™ expects argument of type โ€˜unsigned intโ€™, but argument 2 has type โ€˜struct pNextChainBuildingBlockInfo *โ€™ [-Wformat=]
                     printf("\thostQueryReset = %" PRIuLEAST32 "\n", host_query_reset_features->hostQueryReset);
                            ^~~~~~~~~~~~~~~~~~~~~~                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /storage3/Game Development/Repositories/Vulkan/Vulkan-Tools/vulkaninfo/vulkaninfo.c:36:
/usr/include/inttypes.h:109:23: note: format string is defined here
 # define PRIuLEAST32 "u"
make[2]: *** [vulkaninfo/CMakeFiles/vulkaninfo.dir/build.make:63: vulkaninfo/CMakeFiles/vulkaninfo.dir/vulkaninfo.c.o

I even tried to look up for VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT but based on this https://github.com/KhronosGroup/Vulkan-Docs/blob/35e7bee5f0f50b7c1634cd205ded035acea43ad9/appendices/VK_EXT_ycbcr_image_arrays.txt, it seems to be a Vulkan extension, but why wasn't it defined in vulkan.h header? I suppose Debian is providing me outdated Vulkan drivers that aren't compatible with Vulkan-Tools.

Is this expected behavior? If not, maybe you can point me a fix or suggest me a Linux OS which is fully supported by Vulkan. I already moved from Debian 9 (Stable) to 10 (Testing) just to be able to get the latest Vulkan drivers.

Information about my system

OS: Debian 10 buster
Kernel: x86_64 Linux 4.19.0-5-amd64
CPU: AMD Ryzen 7 1700 Eight-Core @ 16x 3GHz
GPU: Radeon RX 590 Series (POLARIS10, DRM 3.27.0, 4.19.0-5-amd64, LLVM 7.0.1)

Cheers!

Confusing error message from spirv-val

The spirv gist can be found here but I also created a graph from the spv file which I think is easier to read.

I get the following error message:

error: line 150: block 80 branches to the selection construct, but not to the selection header 83
%bb0_1 = OpLabel

Is the error message actually correct? I probably violated some rule but I don't think that %80 is the problem.

Note: I generated the spv file myself.

vulkaninfo --html Presentable Surfaces section confusing

The "Presentable Surfaces" section currently lists GPUs multiple times when listing multiple surface types.

Potential fix would be to list a "Surface Type" subsection under each GPU in the "Presentable Surfaces" section that would contain the properties and capabilities of each surface type.

vulkaninfo: Add support for vkGetPhysicalDeviceFeatures2KHR pNext extension queries

There are extension features and properties that are available through the pNext chain in calls to vkGetPhysicalDeviceFeatures2 that could be reported by vulkaninfo. Specifically, I would like to see VkPhysicalDeviceDescriptorIndexingFeaturesEXT and VkPhysicalDeviceDescriptorIndexingPropertiesEXT, but there are probably others with other interests.

Vulkaninfo could list which queues support present

When vulkaninfo is listing the capabilities of each of the queue families (GRAPHICS, COMPUTE, etc), it would be nice if it also listed whether the queue family supports present. A call to GetPhysicalDeviceSurfaceSupportKHR is all it would take.

The cube directory should be renamed to vkcube

PR #88 renames cube to vkcube, and cubepp to vkcubepp, but because the spec points to the cube source code, changing the directory name or source file name would break the link in the spec. The directory name should be changed to vkcube and should be coordinated with changing the link in the spec

vkcube --c 250 sometimes doesn't display a window

On some systems, vkcube --c 250 runs instantly and a window is not seen. On other systems, the window is seen and runs in approximately 4.3 seconds, or 60 fps.

The problem has occurred on a Ubuntu 16.04 system with nVidia driver 418.43. (Not sure on which nVidia graphics card was used.)

The same command, run on a different Ubuntu 16.04 system with nVidia driver 418.56 with a GeForce 660Ti did not show the problem.

The problem has also been observed on Ubunty 18.04 with Intel graphics, using an older Mesa Vulkan driver.

Latest Version of Vulkaninfo shows Presentable Surface as None, working fine on 1.1.73

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

Vulkan Instance Version: 1.1.74

WARNING: [Loader Message] Code 0 : loader_add_layer_properties: Can not find 'layer' object in manifest JSON file /usr/local/share/vulkan/explicit_layer.d/VkICD_mock_icd.json. Skipping this file.

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_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
Layers: count = 14

VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.1.74, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 0
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 0

VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.1.73, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 0
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 0

VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.1.74, layer version 1
Layer Extensions count = 0
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 0
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 0

VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.1.73, layer version 1
Layer Extensions count = 0
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 0
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 0

VK_LAYER_LUNARG_core_validation (LunarG Validation Layer) Vulkan version 1.1.74, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 2
VK_EXT_debug_marker : extension revision 4
VK_EXT_validation_cache : extension revision 1
GPU id : 1 (Intel(R) HD Graphics 630 (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_core_validation (LunarG Validation Layer) Vulkan version 1.1.73, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 2
VK_EXT_debug_marker : extension revision 4
VK_EXT_validation_cache : extension revision 1
GPU id : 1 (Intel(R) HD Graphics 630 (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.74, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4

VK_LAYER_LUNARG_object_tracker (LunarG Validation Layer) Vulkan version 1.1.73, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4

VK_LAYER_LUNARG_parameter_validation (LunarG Validation Layer) Vulkan version 1.1.74, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4

VK_LAYER_LUNARG_parameter_validation (LunarG Validation Layer) Vulkan version 1.1.73, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 1
VK_EXT_debug_marker : extension revision 4

VK_LAYER_LUNARG_standard_validation (LunarG Standard Validation) Vulkan version 1.1.74, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 2
VK_EXT_debug_marker : extension revision 4
VK_EXT_validation_cache : extension revision 1
GPU id : 1 (Intel(R) HD Graphics 630 (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_standard_validation (LunarG Standard Validation) Vulkan version 1.1.73, layer version 1
Layer Extensions count = 1
VK_EXT_debug_report : extension revision 6
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 2
VK_EXT_debug_marker : extension revision 4
VK_EXT_validation_cache : extension revision 1
GPU id : 1 (Intel(R) HD Graphics 630 (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_32 (Steam Overlay Layer) Vulkan version 1.0.3, layer version 1
Layer Extensions count = 0
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 0
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 0

VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.0.3, layer version 1
Layer Extensions count = 0
Devices count = 2
GPU id : 0 (GeForce GTX 1050 Ti)
Layer-Device Extensions count = 0
GPU id : 1 (Intel(R) HD Graphics 630 (Kaby Lake GT2))
Layer-Device Extensions count = 0

**Presentable Surfaces:

None found**

Groups :

Device Group Properties (Group 0) :
	physicalDeviceCount = 1

		GeForce GTX 1050 Ti (ID: 0)

	subsetAllocation = 0


Device Group Properties (Group 1) :
	physicalDeviceCount = 1

		Intel(R) HD Graphics 630 (Kaby Lake GT2) (ID: 0)

	subsetAllocation = 0

Device Properties and Extensions :

GPU0
VkPhysicalDeviceProperties:

apiVersion     = 0x401046  (1.1.70)
driverVersion  = 1661337600 (0x63060000)
vendorID       = 0x10de
deviceID       = 0x1c8c
deviceType     = DISCRETE_GPU
deviceName     = GeForce GTX 1050 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                  = 8
	maxPerStageDescriptorSamplers           = 4000
	maxPerStageDescriptorUniformBuffers     = 12
	maxPerStageDescriptorStorageBuffers     = 4096
	maxPerStageDescriptorSampledImages      = 16384
	maxPerStageDescriptorStorageImages      = 16384
	maxPerStageDescriptorInputAttachments   = 8
	maxPerStageResources                    = 53268
	maxDescriptorSetSamplers                = 4000
	maxDescriptorSetUniformBuffers          = 72
	maxDescriptorSetUniformBuffersDynamic   = 72
	maxDescriptorSetStorageBuffers          = 4096
	maxDescriptorSetStorageBuffersDynamic   = 16
	maxDescriptorSetSampledImages           = 98304
	maxDescriptorSetStorageImages           = 98304
	maxDescriptorSetInputAttachments        = 8
	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              = 0xc000
	maxComputeWorkGroupCount[0]             = 2147483647
	maxComputeWorkGroupCount[1]             = 65535
	maxComputeWorkGroupCount[2]             = 65535
	maxComputeWorkGroupInvocations          = 1536
	maxComputeWorkGroupSize[0]              = 1536
	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         = 0x100
	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

Device Extensions count = 50
VK_EXT_blend_operation_advanced : extension revision 2
VK_EXT_conservative_rasterization : extension revision 1
VK_EXT_depth_range_unrestricted : extension revision 1
VK_EXT_discard_rectangles : extension revision 1
VK_EXT_display_control : 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_shader_subgroup_ballot : extension revision 1
VK_EXT_shader_subgroup_vote : extension revision 1
VK_EXT_shader_viewport_index_layer : extension revision 1
VK_KHR_16bit_storage : extension revision 1
VK_KHR_bind_memory2 : extension revision 1
VK_KHR_dedicated_allocation : extension revision 3
VK_KHR_descriptor_update_template : extension revision 1
VK_KHR_device_group : extension revision 3
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 1
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_draw_parameters : extension revision 1
VK_KHR_storage_buffer_storage_class : extension revision 1
VK_KHR_swapchain : extension revision 70
VK_KHR_variable_pointers : extension revision 1
VK_KHX_device_group : extension revision 2
VK_KHX_multiview : extension revision 1
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_dedicated_allocation : extension revision 1
VK_NV_fill_rectangle : extension revision 1
VK_NV_fragment_coverage_to_color : extension revision 1
VK_NV_framebuffer_mixed_samples : extension revision 1
VK_NV_geometry_shader_passthrough : extension revision 1
VK_NV_glsl_shader : extension revision 1
VK_NV_sample_mask_override_coverage : extension revision 1
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)

VkQueueFamilyProperties[1]:

queueFlags         = TRANSFER
queueCount         = 1
timestampValidBits = 64
minImageTransferGranularity = (1, 1, 1)

VkQueueFamilyProperties[2]:

queueFlags         = COMPUTE
queueCount         = 8
timestampValidBits = 64
minImageTransferGranularity = (1, 1, 1)

VkPhysicalDeviceMemoryProperties:

memoryHeapCount       = 2
memoryHeaps[0] :
	size          = 4294967296 (0x100000000) (4.00 GiB)
	flags:
		VK_MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryHeaps[1] :
	size          = 6208189440 (0x172097400) (5.78 GiB)
	flags:
		None
memoryTypeCount       = 11
memoryTypes[0] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[1] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[2] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[3] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[4] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[5] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[6] :
	heapIndex     = 1
	propertyFlags = 0x0:
memoryTypes[7] :
	heapIndex     = 0
	propertyFlags = 0x1:
		VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
memoryTypes[8] :
	heapIndex     = 0
	propertyFlags = 0x1:
		VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
memoryTypes[9] :
	heapIndex     = 1
	propertyFlags = 0x6:
		VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
		VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
memoryTypes[10] :
	heapIndex     = 1
	propertyFlags = 0xe:
		VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
		VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
		VK_MEMORY_PROPERTY_HOST_CACHED_BIT

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

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

Format Properties:

FORMAT_UNDEFINED:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_R4G4_UNORM_PACK8:
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_R4G4B4A4_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_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_B4G4R4A4_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_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:
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_B5G6R5_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_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_R5G5B5A1_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_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_B5G5R5A1_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_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_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:
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_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_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_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_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:
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_R8G8_UNORM:
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_R8G8_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_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_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_R8G8_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_R8G8_SRGB:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_R8G8B8_UNORM:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SNORM:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
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:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SINT:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R8G8B8_SRGB:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

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

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

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

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

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

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

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_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_R8G8B8A8_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_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_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_R8G8B8A8_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_R8G8B8A8_SRGB:
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_UNORM:
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_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_USCALED:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

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

FORMAT_B8G8R8A8_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_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_B8G8R8A8_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_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_B8G8R8A8_SRGB:
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_A8B8G8R8_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_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_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_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_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_A8B8G8R8_SINT_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_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_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_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_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:
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_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_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_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_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_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_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_R16_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_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_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_R16_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_R16_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_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_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_R16G16_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_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_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_R16G16_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_R16G16_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_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:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SNORM:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
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:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SINT:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16_SFLOAT:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT

FORMAT_R16G16B16A16_UNORM:
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_R16G16B16A16_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_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_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_R16G16B16A16_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_R16G16B16A16_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_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_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_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_R32G32_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_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_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_R32G32_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_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_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_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_R32G32B32A32_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_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_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_R32G32B32A32_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_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_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_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_D16_UNORM:
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_SAMPLED_IMAGE_FILTER_LINEAR_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:
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_SAMPLED_IMAGE_FILTER_LINEAR_BIT
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
bufferFeatures FormatFeatureFlags:
None

FORMAT_D32_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_DEPTH_STENCIL_ATTACHMENT_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_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_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:
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_SAMPLED_IMAGE_FILTER_LINEAR_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:
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_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_UNORM_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_BC1_RGB_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_BC1_RGBA_UNORM_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_BC1_RGBA_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_BC2_UNORM_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_BC2_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_BC3_UNORM_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_BC3_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_BC4_UNORM_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_BC4_SNORM_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_BC5_UNORM_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_BC5_SNORM_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_BC6H_UFLOAT_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_BC6H_SFLOAT_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_BC7_UNORM_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_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_ETC2_R8G8B8_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ETC2_R8G8B8_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_EAC_R11_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_EAC_R11_SNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_EAC_R11G11_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_EAC_R11G11_SNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_4x4_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_4x4_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_5x4_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_5x4_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_5x5_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_5x5_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_6x5_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_6x5_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_6x6_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_6x6_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_8x5_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_8x5_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_8x6_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_8x6_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_8x8_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_8x8_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x5_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x5_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x6_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x6_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x8_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x8_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x10_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_10x10_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_12x10_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_12x10_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_12x12_UNORM_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

FORMAT_ASTC_12x12_SRGB_BLOCK:
linearTiling FormatFeatureFlags:
None
optimalTiling FormatFeatureFlags:
None
bufferFeatures FormatFeatureFlags:
None

Device Properties and Extensions :

GPU1
VkPhysicalDeviceProperties:

apiVersion     = 0x401000  (1.1.0)
driverVersion  = 75501667 (0x4801063)
vendorID       = 0x8086
deviceID       = 0x591b
deviceType     = INTEGRATED_GPU
deviceName     = Intel(R) HD Graphics 630 (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              = 128
	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

VkPhysicalDevicePointClippingProperties:

pointClippingBehavior               = 0

VkPhysicalDevicePushDescriptorProperties:

maxPushDescriptors               = 32

VkPhysicalDeviceMultiviewProperties:

maxMultiviewViewCount     = 16
maxMultiviewInstanceIndex = 268435455

Device Extensions count = 29
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_KHR_16bit_storage : extension revision 1
VK_KHR_bind_memory2 : 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_multiview : 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

VkQueueFamilyProperties[0]:

queueFlags         = GRAPHICS | COMPUTE | TRANSFER
queueCount         = 1
timestampValidBits = 36
minImageTransferGranularity = (1, 1, 1)

VkPhysicalDeviceMemoryProperties:

memoryHeapCount       = 2
memoryHeaps[0] :
	size          = 5134447616 (0x132097400) (4.78 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:

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                             = 0
wideLines                               = 1
largePoints                             = 1
alphaToOne                              = 1
multiViewport                           = 1
samplerAnisotropy                       = 1
textureCompressionETC2                  = 1
textureCompressionASTC_LDR              = 1
textureCompressionBC                    = 1
occlusionQueryPrecise                   = 1
pipelineStatisticsQuery                 = 1
vertexPipelineStoresAndAtomics          = 1
fragmentStoresAndAtomics                = 1
shaderTessellationAndGeometryPointSize  = 1
shaderImageGatherExtended               = 1
shaderStorageImageExtendedFormats       = 1
shaderStorageImageMultisample           = 0
shaderStorageImageReadWithoutFormat     = 0
shaderStorageImageWriteWithoutFormat    = 1
shaderUniformBufferArrayDynamicIndexing = 1
shaderSampledImageArrayDynamicIndexing  = 1
shaderStorageBufferArrayDynamicIndexing = 1
shaderStorageImageArrayDynamicIndexing  = 1
shaderClipDistance                      = 1
shaderCullDistance                      = 1
shaderFloat64                           = 1
shaderInt64                             = 1
shaderInt16                             = 1
shaderResourceResidency                 = 0
shaderResourceMinLod                    = 0
sparseBinding                           = 0
sparseResidencyBuffer                   = 0
sparseResidencyImage2D                  = 0
sparseResidencyImage3D                  = 0
sparseResidency2Samples                 = 0
sparseResidency4Samples                 = 0
sparseResidency8Samples                 = 0
sparseResidency16Samples                = 0
sparseResidencyAliased                  = 0
variableMultisampleRate                 = 1
inheritedQueries                        = 1

VkPhysicalDevice16BitStorageFeatures:

storageBuffer16BitAccess           = 1
uniformAndStorageBuffer16BitAccess = 1
storagePushConstant16              = 1
storageInputOutput16               = 0

VkPhysicalDeviceSamplerYcbcrConversionFeatures:

samplerYcbcrConversion = 1

VkPhysicalDeviceVariablePointerFeatures:

variablePointersStorageBuffer = 1
variablePointers              = 1

VkPhysicalDeviceMultiviewFeatures:

multiview                   = 1
multiviewGeometryShader     = 1
multiviewTessellationShader = 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

rename winrt directory

The directory winrt/ contains the Windows Runtime Installer.

The directory name is confusing. WinRT is a thing on modern Windows. It is a modern replacement for what's commonly referred to as win32. The use of the winrt directory name creates confusion. My first assumption was that it is an attempt to provide access to Vulkan from the WinRT API.

Suggest renaming the directory to something like windows-runtime-installer. This name would be accurate and obvious. It's even the same text as the "title" within winrt/README.md.

vkvia stops running if driver json not present

I have a laptop with both Intel and nVidia graphics. I wanted to used Intel graphics, so I renamed C:\Windows\System32\nv-vk64.json to nv-vk64.jsonHIDE.

I ran via. It seems to exit prematurely. The output file has an error msg that it can't read the nVidia json file (would be expected), I don't see vkcube get run, and less information is in the html file.

It seems that via should have still run to the end in spite of the missing json file, especially given that vulkaninfo does run successfully and identify the output device as Intel graphics.

cube.c build warning on Ubuntu 16.04

Building examples per SDK Linux getting_started on Ubuntu 16.04:

cd $VULKAN_SDK/../examples
mkdir build
cd build
cmake ..
make

generates:

examples/cube.c: In function โ€˜demo_initโ€™:
examples/cube.c:3735:9: warning: format not a string literal and no format arguments [-Wformat-security]
         fprintf(stderr, usage);
         ^

Allow using Vulkan-Headers installed on the system

Hi,

I am a maintainer for Gentoo. We cannot have Vulkan-Headers as a submoduble as it currently is, so it is packaged separately. Right now, there only way to use the system version of Vulkan-Headers is to manually modify the source, as I have done below for Vulkan-Loader:

https://raw.githubusercontent.com/gentoo/gentoo/master/media-libs/vulkan-loader/files/vulkan-loader-9999-Use-usr-for-vulkan-headers.patch

Please allow a way to use the system Vulkan-Headers install, perhaps with a -DVULKAN_HEADERS_INSTALL_DIR variable.

Thanks,
Sarnex

Vulkaninfo.exe of SDK running error

  • Windows 10 64bit
  • Vulkan SDK 1.1.77.0

image


Also cube and cubeapp doesn't work, nothing after execute, not even a window ๐Ÿ˜•

Is there something wrong with ICD? I'm using AMD 480 graphic card, I noticed the API Version item is MISSING
image

Mock icd: Add support for vkGetPhysicalDeviceFeatures2KHR pNext extension queries

Issue by jzulauf-lunarg (MIGRATED)
Friday Jan 26, 2018 at 22:40 GMT
Originally opened as KhronosGroup/Vulkan-LoaderAndValidationLayers#2374


The mock_icd needs to report valid limit/feature information for all extensions it reported as supported. Currently mock_icd ignores the pNext chain for vkGetPhysicalDeviceFeatures2KHR where the extension features are queried.

However, when validation support is added for an extension, the features and limits need to be reported back with valid (for example guaranteed minimums given in the spec) values in order for validation to have proper bounds/feature checks and for validation testing to function correctly.

Mock ICD fails some simple operations

The Mock ICD works well for a few simple use cases but breaks down on some workloads.

One simple example is allocating and writing to a buffer larger than 0x1000. This will trigger errors. I think handling arbitrary sizes should be something the Mock ICD should be able to support without too much trouble.

A second example is mapping memory ranges. After a first map call that writes to the data, the memory is discarded and subsequent map calls return junk data. It seems plausible for the Mock ICD to store some state associated with the device memory.

In both cases the application on top of the Mock ICD needs to know specifically that it is running on top of the mock ICD to work without errors. This seems counter to the intent of the mock ICD. It should be basically invisible apart from not executing commands.

@tobine @ShabbyX @y-novikov fyi

vulkaninfo warnings in VS2015 build

When build on Windows VS2015 using:

mkdir build
cd build
cmake -A x64 ..
cmake --build .

the following warning result:

vulkaninfo.c(4953): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
vulkaninfo.c(5564): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
vulkaninfo.c(5651): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
vulkaninfo.c(5652): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.

Report Compute Capabilities

vulkaninfo isn't reporting VK1.1 compute capabilities.

Print out the info as follows:

subgroupSize                                      : 32
quadOperationsInAllStages                         : true
supportedStages
    VK_SHADER_STAGE_VERTEX_BIT                    : true
    VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT      : true
    VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT   : true
    VK_SHADER_STAGE_GEOMETRY_BIT                  : true
    VK_SHADER_STAGE_FRAGMENT_BIT                  : true
    VK_SHADER_STAGE_COMPUTE_BIT                   : true
    VK_SHADER_STAGE_ALL_GRAPHICS                  : true
supportedOperations
    VK_SUBGROUP_FEATURE_BASIC_BIT                 : true
    VK_SUBGROUP_FEATURE_VOTE_BIT                  : true
    VK_SUBGROUP_FEATURE_ARITHMETIC_BIT            : true
    VK_SUBGROUP_FEATURE_BALLOT_BIT                : true
    VK_SUBGROUP_FEATURE_SHUFFLE_BIT               : true
    VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT      : true
    VK_SUBGROUP_FEATURE_CLUSTERED_BIT             : true
    VK_SUBGROUP_FEATURE_QUAD_BIT                  : true

Cube demo assumes linear image support that may not exist

The cube demo checks to see if linear textures can be sampled from directly (when use_staging_buffer is not set) and if supported creates such a texture directly.

If the staging flag is enabled or linear textures can't be sampled from then it does a staged upload to an optimally tiled texture. The staging resource is not a buffer though, it still creates a linear image to copy from.

The spec only requires optimal support for images it doesn't require any linear support at all, so it's valid for it to be impossible to create such a linear image - instead the code should create a buffer and use vkCmdCopyBufferToImage.

vulkaninfo should load all instance-level extensions

Due to vulkan 3.33 "Extension Dependencies":

Any device extension that has an instance extension dependency that is not enabled by vkCreateInstance is considered to be unsupported, hence it must not be returned by vkEnumerateDeviceExtensionProperties for any VkPhysicalDevice child of the instance.

Now, the goal of vulkaninfo is obviously to list all available device-level extensions. However, because of this paragraph in the vulkan spec, any device-level extension that depends on missing instance-level extensions will be censored from the output of vulkaninfo.

I propose changing vulkaninfo in such a way that it loads all available instance-level extensions. (Not sure if we need to be careful on systems with multiple ICDs? Is it possible to load a VkInstance extension that is compatible with one VkPhysicalDevice but not another?)

vkcube environment variable $DISPLAY is not set in wayland/weston

Using vulkan-tools-1.1.96 with X11 works fine.

Trying to use vkcube with wayland-1.16.0/weston-5.0.0 results in an error message that $DISPLAY is not set, but this is an X11 variable.

Am I missing something or will this only work with Xwayland?

During compilation I get:
BUILD_WSI_WAYLAND_SUPPORT:BOOL=ON
WAYLAND_CLIENT_INCLUDE_DIR:PATH=/usr/local/include
WAYLAND_CLIENT_LIBRARIES:FILEPATH=/usr/local/lib/libwayland-client.so
WAYLAND_CURSOR_INCLUDE_DIR:PATH=/usr/local/include
WAYLAND_CURSOR_LIBRARIES:FILEPATH=/usr/local/lib/libwayland-cursor.so
WAYLAND_EGL_INCLUDE_DIR:PATH=/usr/local/include
WAYLAND_EGL_LIBRARIES:FILEPATH=/usr/local/lib/libwayland-egl.so
WAYLAND_SERVER_INCLUDE_DIR:PATH=/usr/local/include
WAYLAND_SERVER_LIBRARIES:FILEPATH=/usr/local/lib/libwayland-server.so

Cannot build cube for wayland without Xcb

Hi all,

If I set

-DBUILD_WSI_MIR_SUPPORT=False
-DBUILD_WSI_WAYLAND_SUPPORT=yes -
-DBUILD_WSI_XCB_SUPPORT=no 
-DBUILD_WSI_XLIB_SUPPORT=no 

when building vulkan-tools, I get the following error during configure:

CMake Error at cube/CMakeLists.txt:89 (message):
Selected XCB for cube build but not building Xcb support

This looks like it comes from the line

    set(CUBE_WSI_SELECTION "XCB" CACHE STRING "Select WSI target for cube (XCB, XLIB, WAYLAND, MIR, DISPLAY)")

Passing -DCUBE_WSI_SELECTION="WAYLAND" still results in the error.

-DBUILD_WSI_MIR_SUPPORT=False 
-DBUILD_WSI_WAYLAND_SUPPORT=yes 
-DBUILD_WSI_XCB_SUPPORT=no 
-DBUILD_WSI_XLIB_SUPPORT=no 
-DCUBE_WSI_SELECTION=WAYLAND
...
CMake Error at vulkaninfo/CMakeLists.txt:30 (message):
  Selected XCB for vulkaninfo build but not building Xcb support

Am I missing something, or is there no way to build the cube demos with wayland? It looks like you should be able to set CUBE_WSI_SELECTION, or it should automatically set it based on your WSI.

Thanks!
Sarnex

cube: (Linux) Install image file and change cube(pp) to look for it in system dirs

The cube and cubepp demos have the restriction of expecting to find the texture image file (lunarg.ppm) in the same directory as the executable. This restriction makes it infeasible to "install" to a system directory because the image file would have to go into a directory meant for executables and not data.

Choose a suitable system location that is consistent with the FHS or equivalent standard.
Something like /usr/share/vulkan/lunarg/cube/lunarg.ppm as long as it follows conventions.

Modify the cube and cubepp applications to search the current directory first for lunarg.ppm and then this new system location. The current directory has priority and the application should close if it cannot find the file in either location.

Modify the CMake install target to install this file to the selected location.

Note that we had this same request some time ago from a package maintainer, but we turned it down at that time because the compiled shader binaries needed to be installed as well, and we were unsure about doing that.

Since then, the cube(pp) packaging has changed so that the shader binaries are compiled into the program text, removing the need to install the shader binaries and reducing the number of auxiliary files to one. It now seems more feasible to install this image file as described.

Another approach would be to store the contents of the texture image as a C source code file and compile the image into the program text. But this seems clunky.

vkcube: By which mechanism is the depth buffer synchronized

May I ask by which mechanism is the depth buffer synchronized in the vkcube demo?
This seems to be the source of many tutorials, but I suspect they just copy-paste this aspect without knowing why it works...

First use in frame seem to be the loadOp = VK_ATTACHMENT_LOAD_OP_CLEAR (i.e. VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT), and last use the storeOp = VK_ATTACHMENT_STORE_OP_DONT_CARE (i.e. VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT).

The default FRAME_LAG is 2, so it means there may purely theoretically be an overlap. I.e. fence wait is on an older frame, and not the immediately previous one.

There seem to be no subpass dependencies (except the implicitly defined ones).
The implicit renderpass external dependencies should do half the jorb. I.e. it would make the depth buffer successfully "available from", but not "visible to" the loadOp of the next frame.
Similarly, the implicit renderpass external dependencies of the next frame would make it "visible to", but not "available from" the previous frame. An execution dependency is missing between the two to make it work.

And there seem to be no pipeline barriers.

There is a semaphore signal on the batch, but only vkQueuePresent waits on it, which implies nothing about the state of the resource to the next frame. That is so because based on spec it does not cover subsequent submissions:

Also, in the case of vkQueueSubmit, the second synchronization scope additionally includes all commands that occur later in submission order.

There is a semaphore wait on the batch. But the semaphore is from vkAcquireNextImageKHR, which does not imply much about the state of the draw of the previous frame. And the pWaitDstStageMask is VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT which does not match the depth buffer loadOp anyway.

I think the only way this would work is if there was some implicit relation of vkQueuePresent and vkAcquireNextImageKHR, that I cannot support from spec. (Or some other obscure mechanism from spec, which I missed, that is outside the realm of the conventional synchronization model).

Assert in mesa due to missing 'VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR'

The VkSurfaceFormat2KHR surface created in AppDumpSurfaceFormats does not set the appropriate .sType and .pNext.

This triggers an assert in mesa:
vulkaninfo: ../mesa-9999/src/vulkan/wsi/wsi_common_x11.c:563: x11_surface_get_formats2: Assertion `f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR' failed.

A fix would be to set the correct type for all formats in the surf_formats2 array:

for (uint32_t i = 0; i < format_count; ++i) {
    surf_formats2[i].sType = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR;
    surf_formats2[i].pNext = NULL;
}

vulkaninfo.c:630: failed with VK_ERROR_INITIALIZATION_FAILED

I recently installed VulkanSDK version 1.1.101.0 and after restarting my PC I decided to open vulkaninfo and it gave me an error.

Hardware

  • NVIDIA GTX 1070

Software

  • Vulkan SDK 1.1.101.0
  • NVIDIA CUDA 10.1
  • NVIDIA Driver 419.67
  • Windows 10 Pro

Screenshots

image

For the record, I installed the following executable

image

Need validation test to catch cube.c's invalid use of swapchain images

Issue by courtney-g (MIGRATED)
Monday Apr 25, 2016 at 13:27 GMT
Originally opened as KhronosGroup/Vulkan-LoaderAndValidationLayers#412


Issue #76 from Vulkan-Docs repo. (LunarG/VulkanSamples#76 (comment))

Need validation test for this spec language:
Use of a presentable image must occur only after the image is returned by vkAcquireNextImageKHR, and before it is presented by vkQueuePresentKHR. This includes transitioning the image layout and rendering commands

vulkaninfo: Improve error reporting for common failures

We see a lot of:

Cannot create Vulkan instance.
C:\VulkanSDKBuild\workspace\Khronos-Tools\repo\vulkaninfo\vulkaninfo.c:921: failed with VK_ERROR_INCOMPATIBLE_DRIVER

It may be good to add some text such as "This problem is often caused by a faulty installation of the Vulkan driver or attempting to use a GPU that does not support Vulkan."

I know that any detailed reporting here is more in the domain of Via, but perhaps this small hint will help users direct their attention to the most likely source of the problem.

Win10: vkcube with invalid arguments produces no output (graphics nor console)

When run from a console prompt, vkcube -c 250 does not open a graphics window, and no error text output; it just exits silently (The correct command is vkcube --c 250, which does run properly)

Similarly, vkcube foo also exits silently with no graphics.

Other than the lack of help text for invalid argments, the reason this is an issue is the GNU argument syntax specifies "--" for long arguments, and '-' for single-character arguments. Thus the --c argument should be -c, and it is very easy to overlook the difference depending on the font.

Perhaps add -c as a synonym for --c. It would be nice for help usage text when invalid arguments, but stdout on Windows adds complexity.

vulkaninfo - VK_ERROR_OUT_OF_HOST_MEMORY after listing device extensions

Here is the specific that occurs:

/build/vulkan-tools/src/Vulkan-Tools-1.1.102/vulkaninfo/vulkaninfo.c:4504: failed with VK_ERROR_OUT_OF_HOST_MEMORY                                                                                                  

And here is the full stdout and stderr leading up to the error in case it helps:

ERROR: [Loader Message] Code 0 : /usr/lib32/libvulkan_intel.so: wrong ELF class: ELFCLASS32
INTEL-MESA: warning: ../mesa/src/intel/vulkan/anv_device.c:1359: FINISHME: Implement pop-free point clipping
==========
VULKANINFO
==========

Vulkan Instance Version: 1.1.102



Instance Extensions:
====================
Instance Extensions	count = 17
	VK_EXT_acquire_xlib_display         : extension revision  1
	VK_EXT_debug_report                 : extension revision  8
	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 23
	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_wayland_surface              : extension revision  6
	VK_KHR_xcb_surface                  : extension revision  6
	VK_KHR_xlib_surface                 : extension revision  6
Layers: count = 11
=======
VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.1.100, 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.100, 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_core_validation (LunarG Validation Layer) Vulkan version 1.1.100, 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.100, 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_parameter_validation (LunarG Validation Layer) Vulkan version 1.1.100, 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_standard_validation (LunarG Standard Validation) Vulkan version 1.1.100, 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_RENDERDOC_Capture (Debugging capture layer for RenderDoc) Vulkan version 1.1.73, layer version 2
	Layer Extensions	count = 1
		VK_EXT_debug_utils                  : extension revision  1
	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  3

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

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

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_STORAGE_BIT
		VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
	supportedSurfaceCounters:
		None

GPU id       : 0 (Intel(R) HD Graphics 620 (Kaby Lake GT2))
Surface type : VK_KHR_xlib_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_STORAGE_BIT
		VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
	supportedSurfaceCounters:
		None


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

			Intel(R) HD Graphics 620 (Kaby Lake GT2) (ID: 0)

		subsetAllocation = 0

	Device Group Present Capabilities (Group 0) :

		Intel(R) HD Graphics 620 (Kaby Lake GT2) (ID: 0)
		Can present images from the following devices:
			Intel(R) HD Graphics 620 (Kaby Lake GT2) (ID: 0)

		Present modes:
			VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR



Device Properties and Extensions :
==================================
GPU0
VkPhysicalDeviceProperties:
===========================
	apiVersion     = 0x401066  (1.1.102)
	driverVersion  = 79691875 (0x4c00063)
	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          = 1792
		maxComputeWorkGroupSize[0]              = 896
		maxComputeWorkGroupSize[1]              = 896
		maxComputeWorkGroupSize[2]              = 896
		subPixelPrecisionBits                   = 8
		subTexelPrecisionBits                   = 8
		mipmapPrecisionBits                     = 8
		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                 = 2
		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

VkPhysicalDevicePointClippingProperties:
========================================
	pointClippingBehavior               = 0

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

VkPhysicalDeviceMultiviewProperties:
====================================
	maxMultiviewViewCount     = 16
	maxMultiviewInstanceIndex = 268435455

VkPhysicalDeviceMaintenance3Properties:
=======================================
	maxPerSetDescriptors    = 1024
	maxMemoryAllocationSize = 2147483648

VkPhysicalDeviceIDProperties:
=========================================
	deviceUUID      = 6588f41d-5ce8-5159-bafd-03c69b748ef9
	driverUUID      = 7814d12a-2098-b9bb-43f5-80f6bacd9eb8
	deviceLUIDValid = false

VkPhysicalDeviceDriverProperties:
=================================
	driverID   = 6
	driverName = Intel open-source Mesa driver
	driverInfo = Mesa 19.1.0-devel (git-f9c594cdf5)
	conformanceVersion:
		major    = 1
		minor    = 1
		subminor = 2
		patch    = 0

VkPhysicalDevicePCIBusInfoProperties
====================================
	pciDomain   = 0
	pciBus      = 0
	pciDevice   = 2
	pciFunction = 0

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

Device Extensions	count = 55
	VK_EXT_buffer_device_address        : extension revision  1
	VK_EXT_calibrated_timestamps        : extension revision  1
	VK_EXT_conditional_rendering        : extension revision  1
	VK_EXT_depth_clip_enable            : extension revision  1
	VK_EXT_display_control              : extension revision  1
	VK_EXT_external_memory_dma_buf      : extension revision  1
	VK_EXT_external_memory_host         : extension revision  1
	VK_EXT_global_priority              : extension revision  1
	VK_EXT_host_query_reset             : extension revision  1
	VK_EXT_inline_uniform_block         : extension revision  1
	VK_EXT_pci_bus_info                 : extension revision  2
	VK_EXT_pipeline_creation_feedback   : extension revision  1
	VK_EXT_post_depth_coverage          : extension revision  1
	VK_EXT_sampler_filter_minmax        : extension revision  1
	VK_EXT_scalar_block_layout          : extension revision  1
	VK_EXT_shader_stencil_export        : 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_EXT_ycbcr_image_arrays           : extension revision  1
	VK_GOOGLE_decorate_string           : extension revision  1
	VK_GOOGLE_hlsl_functionality1       : extension revision  1
	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_depth_stencil_resolve        : extension revision  1
	VK_KHR_descriptor_update_template   : extension revision  1
	VK_KHR_device_group                 : extension revision  1
	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_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_multiview                    : 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_shader_float16_int8          : extension revision  1
	VK_KHR_storage_buffer_storage_class : extension revision  1
	VK_KHR_swapchain                    : extension revision 70
	VK_KHR_variable_pointers            : extension revision  1
	VK_NV_compute_shader_derivatives    : extension revision  1
/build/vulkan-tools/src/Vulkan-Tools-1.1.102/vulkaninfo/vulkaninfo.c:4504: failed with VK_ERROR_OUT_OF_HOST_MEMORY

I'm using an up-to-date Arch Linux + Gnome setup if it makes a difference. All the relevant details about my GPU should be above.

Please let me know if you feel this error would be better off posted to the mesa intel driver repo! I thought I'd post here just in case as the error pointed to a file in this repo.

Bake codegen files into repo

Need code gen baking here as in VVL/Loader repos as mock_icd.h/cpp and vk_typemap_helper.h are generated from this repo.
This is a corollary issue to 965 in the VVL repo.
Code-gen files should be committed to repo, default build should use those files instead of running codegen, and CI should enforce that codegen files match committed files to prevent hand-editing of codegen.

VulkanRT-Installer.exe missing ASLR

I downloaded latest Vulkan runtime installer
and tested it with Microsoft binskim tool:

BinSkim.exe analyze VulkanRT-1.1.82.1-Installer.exe -verbose > out_SDK_1_1_82_1.txt

It shows following security issue:

VulkanRT-1.1.82.1-Installer.exe: error BA2009: 'VulkanRT-1.1.82.1-Installer.exe' is marked as DYNAMICBASE but relocation data has been stripped from the image, preventing address space layout randomization.

I do not see this message in locally built installer using Vulkan-Tools winrt sources.

Is this installer executable additionally stripped before being uploaded to LunarXchange?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.