mit-aera / FlightGoggles

A framework for photorealistic hardware-in-the-loop agile flight simulation using Unity3D and ROS. Developed by MIT AERA group.
http://flightgoggles.mit.edu
Other
401 stars 100 forks source link

FlightGoggles Renderer node fails on nvidia-docker #46

Closed BhavyanshM closed 5 years ago

BhavyanshM commented 5 years ago

I understand that nvidia-docker isn't officially supported. However, I have been trying to setup flightGoggles with all its dependencies inside an nvidia-docker container. I have almost everything setup and building just fine on the container, but somehow the flightgogglesRenderer node fails when even simply running "rosrun flightgoggles FlightGoggles.x86_64":

Found path: /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles.x86_64 Mono path[0] = '/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Managed' Mono config path = '/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/etc' Preloaded 'ScreenSelector.so' Display 0 'U28E590 27"': 3840x2160 (primary device). Loading player data from /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/data.unity3d Logging to /home/docker/.config/unity3d/MIT-FAST-Lab/FlightGoggles/Player.log

I would really appreciate any help at all, and then maybe even contribute my setup in form of a pull request. I am sure such a docker container setup will help out a lot of people that are trying hard to get Flight Goggles setup on their workstations. Thank you in advance!

varunmurali1 commented 5 years ago

I can try and help, but unsure if this is a workable option. Could I have a look at the Player.log?

BhavyanshM commented 5 years ago

I can try and help, but unsure if this is a workable option. Could I have a look at the Player.log?

Thank you! Here it is:

docker@58337418fc82:~/catkin_ws$ cat /home/docker/.config/unity3d/MIT-FAST-Lab/FlightGoggles/Player.log Desktop is 3840 x 2160 @ 60 Hz [Vulkan init] extensions: count=16 [Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0 [Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0 [Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0 [Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0 [Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0 [Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0 [Vulkan init] extensions: name=VK_KHR_surface, enabled=1 [Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1 [Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0 [Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1 [Vulkan init] extensions: name=VK_KHR_display, enabled=1 [Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0 [Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0 [Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0 [Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0 [Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0 Vulkan detection: 0 No supported renderers found, exiting

(Filename: Line: 634)

varunmurali1 commented 5 years ago

Looks like Vulkan is not able to find a GPU. Could you confirm that you were able to install apt install -y libvulkan1 mesa-vulkan-drivers vulkan-utils? Does nvidia-smi see a gpu from inside docker? Can you run vulkan-smoketest successfully?

BhavyanshM commented 5 years ago

Looks like Vulkan is not able to find a GPU. Could you confirm that you were able to install apt install -y libvulkan1 mesa-vulkan-drivers vulkan-utils? Does nvidia-smi see a gpu from inside docker? Can you run vulkan-smoketest successfully?

Yes, I think you are right, the reason is probably that the container isn't able to access the GPU:

docker@58337418fc82:/$ nvidia-smi Failed to initialize NVML: Driver/library version mismatch docker@58337418fc82:/$ vulkan-smoketest terminate called after throwing an instance of 'std::runtime_error' what(): VkResult -3 returned Aborted (core dumped)

Do you see an obvious reason for such a failure in accessing the GPU from inside the container? Works fine on the host.

varunmurali1 commented 5 years ago

I remember there being a condition with nvidia-docker that the versions of the nvidia driver on the local machine and inside the container should be the same otherwise it throws this error (see here)

BhavyanshM commented 5 years ago

I remember there being a condition with nvidia-docker that the versions of the nvidia driver on the local machine and inside the container should be the same otherwise it throws this error (see here)

Wow, I was just looking at the exact same page. Alright, let me fix this.

BhavyanshM commented 5 years ago

I remember there being a condition with nvidia-docker that the versions of the nvidia driver on the local machine and inside the container should be the same otherwise it throws this error (see here)

Wow, I was just looking at the exact same page. Alright, let me fix this.

So, I am now able to see the nvidia-smi output detecting my GTX 1070 Ti. However, running flightgoggles crashes with a huge terminal output:

docker@58337418fc82:/$ rosrun flightgoggles FlightGoggles.x86_64 No protocol specified Found path: /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles.x86_64 Mono path[0] = '/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Managed' Mono config path = '/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/etc' Preloaded 'ScreenSelector.so' Loading player data from /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/data.unity3d Logging to /home/docker/.config/unity3d/MIT-FAST-Lab/FlightGoggles/Player.log No protocol specified No protocol specified No protocol specified No protocol specified No protocol specified No protocol specified No protocol specified Stacktrace:

/proc/self/maps: 00400000-01d6c000 r-xp 00000000 08:11 1329922 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles.x86_64 01f6c000-01fe2000 r--p 0196c000 08:11 1329922 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles.x86_64 01fe2000-02015000 rw-p 019e2000 08:11 1329922 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles.x86_64 02015000-02116000 rw-p 00000000 00:00 0 03c1a000-04bcf000 rw-p 00000000 00:00 0 [heap] 400ae000-4014d000 rw-p 00000000 00:00 0 40bc8000-40bd8000 rwxp 00000000 00:00 0 415e0000-415e2000 r-xs 00000000 08:11 1074217 /tmp/.glybAcKf (deleted) 41d06000-41d16000 rwxp 00000000 00:00 0 7f74bc000000-7f74bc021000 rw-p 00000000 00:00 0 7f74bc021000-7f74c0000000 ---p 00000000 00:00 0 7f74c32a0000-7f74c33a0000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c33a0000-7f74c33a1000 ---p 00000000 00:00 0 7f74c33a1000-7f74c3ba1000 rw-p 00000000 00:00 0 7f74c3ba1000-7f74c43a1000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c43a1000-7f74c45a1000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c45a1000-7f74c4ba3000 rw-p 00000000 00:00 0 7f74c4ba3000-7f74c4fa3000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c4fa3000-7f74c51a3000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c51a3000-7f74c57a5000 rw-p 00000000 00:00 0 7f74c57a5000-7f74c58a5000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c58a5000-7f74c58e5000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c58e5000-7f74c5905000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c5905000-7f74c5945000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c5945000-7f74c5c71000 r-xp 00000000 08:11 1204607 /usr/lib/x86_64-linux-gnu/libvulkan_intel.so 7f74c5c71000-7f74c5e70000 ---p 0032c000 08:11 1204607 /usr/lib/x86_64-linux-gnu/libvulkan_intel.so 7f74c5e70000-7f74c5eb3000 r--p 0032b000 08:11 1204607 /usr/lib/x86_64-linux-gnu/libvulkan_intel.so 7f74c5eb3000-7f74c5eb4000 rw-p 0036e000 08:11 1204607 /usr/lib/x86_64-linux-gnu/libvulkan_intel.so 7f74c5eb4000-7f74c5eb7000 rw-p 00000000 00:00 0 7f74c5eb7000-7f74c5ec5000 r-xp 00000000 08:11 551153 /usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0 7f74c5ec5000-7f74c60c5000 ---p 0000e000 08:11 551153 /usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0 7f74c60c5000-7f74c60c6000 r--p 0000e000 08:11 551153 /usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0 7f74c60c6000-7f74c60c7000 rw-p 0000f000 08:11 551153 /usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0 7f74c60c7000-7f74c60cf000 r-xp 00000000 08:11 535113 /usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.0.0 7f74c60cf000-7f74c62ce000 ---p 00008000 08:11 535113 /usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.0.0 7f74c62ce000-7f74c62cf000 r--p 00007000 08:11 535113 /usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.0.0 7f74c62cf000-7f74c62d0000 rw-p 00008000 08:11 535113 /usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.0.0 7f74c62d0000-7f74c62e9000 r-xp 00000000 08:11 425578 /usr/lib/x86_64-linux-gnu/libelf-0.170.so 7f74c62e9000-7f74c64e8000 ---p 00019000 08:11 425578 /usr/lib/x86_64-linux-gnu/libelf-0.170.so 7f74c64e8000-7f74c64e9000 r--p 00018000 08:11 425578 /usr/lib/x86_64-linux-gnu/libelf-0.170.so 7f74c64e9000-7f74c64ea000 rw-p 00019000 08:11 425578 /usr/lib/x86_64-linux-gnu/libelf-0.170.so 7f74c64ea000-7f74c66fb000 r-xp 00000000 08:11 1204608 /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so 7f74c66fb000-7f74c68fb000 ---p 00211000 08:11 1204608 /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so 7f74c68fb000-7f74c6928000 r--p 00211000 08:11 1204608 /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so 7f74c6928000-7f74c692a000 rw-p 0023e000 08:11 1204608 /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so 7f74c692a000-7f74c692d000 rw-p 00000000 00:00 0 7f74c692d000-7f74c6952000 r-xp 00000000 08:11 2372176 /lib/x86_64-linux-gnu/libtinfo.so.5.9 7f74c6952000-7f74c6b52000 ---p 00025000 08:11 2372176 /lib/x86_64-linux-gnu/libtinfo.so.5.9 7f74c6b52000-7f74c6b56000 r--p 00025000 08:11 2372176 /lib/x86_64-linux-gnu/libtinfo.so.5.9 7f74c6b56000-7f74c6b57000 rw-p 00029000 08:11 2372176 /lib/x86_64-linux-gnu/libtinfo.so.5.9 7f74c6b57000-7f74c6b88000 r-xp 00000000 08:11 535121 /usr/lib/x86_64-linux-gnu/libedit.so.2.0.56 7f74c6b88000-7f74c6d87000 ---p 00031000 08:11 535121 /usr/lib/x86_64-linux-gnu/libedit.so.2.0.56 7f74c6d87000-7f74c6d89000 r--p 00030000 08:11 535121 /usr/lib/x86_64-linux-gnu/libedit.so.2.0.56 7f74c6d89000-7f74c6d8a000 rw-p 00032000 08:11 535121 /usr/lib/x86_64-linux-gnu/libedit.so.2.0.56 7f74c6d8a000-7f74c6d8e000 rw-p 00000000 00:00 0 7f74c6d8f000-7f74c6da2000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6da2000-7f74c6dc2000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6dc2000-7f74c6e02000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6e02000-7f74c6e22000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6e22000-7f74c6f22000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6f22000-7f74c6f62000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6f62000-7f74c6f82000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74c6f82000-7f74c6fae000 r-xp 00000000 08:11 535135 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0 7f74c6fae000-7f74c71ad000 ---p 0002c000 08:11 535135 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0 7f74c71ad000-7f74c71b1000 r--p 0002b000 08:11 535135 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0 7f74c71b1000-7f74c71b2000 rw-p 0002f000 08:11 535135 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0 7f74c71b2000-7f74c71b3000 rw-p 00000000 00:00 0 7f74c71b3000-7f74c71bf000 r-xp 00000000 08:11 535127 /usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0 7f74c71bf000-7f74c73bf000 ---p 0000c000 08:11 535127 /usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0 7f74c73bf000-7f74c73c0000 r--p 0000c000 08:11 535127 /usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0 7f74c73c0000-7f74c73c1000 rw-p 0000d000 08:11 535127 /usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0 7f74c73c1000-7f74cae44000 r-xp 00000000 08:11 535052 /usr/lib/x86_64-linux-gnu/libLLVM-7.so.1 7f74cae44000-7f74cae45000 ---p 03a83000 08:11 535052 /usr/lib/x86_64-linux-gnu/libLLVM-7.so.1 7f74cae45000-7f74cb220000 r--p 03a83000 08:11 535052 /usr/lib/x86_64-linux-gnu/libLLVM-7.so.1 7f74cb220000-7f74cb232000 rw-p 03e5e000 08:11 535052 /usr/lib/x86_64-linux-gnu/libLLVM-7.so.1 7f74cb232000-7f74cb299000 rw-p 00000000 00:00 0 7f74cb2ab000-7f74cb2eb000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74cb2eb000-7f74cb30b000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74cb30b000-7f74cb34b000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74cb34b000-7f74cb34c000 r-xp 00000000 08:11 535230 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0 7f74cb34c000-7f74cb54b000 ---p 00001000 08:11 535230 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0 7f74cb54b000-7f74cb54c000 r--p 00000000 08:11 535230 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0 7f74cb54c000-7f74cb54d000 rw-p 00001000 08:11 535230 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0 7f74cb54d000-7f74cb552000 r-xp 00000000 08:11 535222 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0 7f74cb552000-7f74cb752000 ---p 00005000 08:11 535222 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0 7f74cb752000-7f74cb753000 r--p 00005000 08:11 535222 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0 7f74cb753000-7f74cb754000 rw-p 00006000 08:11 535222 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0 7f74cb754000-7f74cce48000 r-xp 00000000 08:11 1983397 /usr/lib/x86_64-linux-gnu/libnvidia-eglcore.so.390.87 7f74cce48000-7f74cd047000 ---p 016f4000 08:11 1983397 /usr/lib/x86_64-linux-gnu/libnvidia-eglcore.so.390.87 7f74cd047000-7f74cd38b000 rw-p 016f3000 08:11 1983397 /usr/lib/x86_64-linux-gnu/libnvidia-eglcore.so.390.87 7f74cd38b000-7f74cd3a1000 rw-p 00000000 00:00 0 7f74cd3a8000-7f74cd3e8000 rw-s 00000000 08:11 1074384 /home/docker/.glvndHTaLGo (deleted) 7f74cd3e8000-7f74cd3ea000 r-xp 00000000 08:11 535216 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0 7f74cd3ea000-7f74cd5e9000 ---p 00002000 08:11 535216 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0 7f74cd5e9000-7f74cd5ea000 r--p 00001000 08:11 535216 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0 7f74cd5ea000-7f74cd5eb000 rw-p 00002000 08:11 535216 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0 7f74cd5eb000-7f74cd5f2000 r-xp 00000000 08:11 535224 /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0 7f74cd5f2000-7f74cd7f1000 ---p 00007000 08:11 535224 /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0 7f74cd7f1000-7f74cd7f2000 r--p 00006000 08:11 535224 /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0 7f74cd7f2000-7f74cd7f3000 rw-p 00007000 08:11 535224 /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0 7f74cd7f3000-7f74cd7f6000 r-xp 00000000 08:11 535212 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0 7f74cd7f6000-7f74cd9f5000 ---p 00003000 08:11 535212 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0 7f74cd9f5000-7f74cd9f6000 r--p 00002000 08:11 535212 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0 7f74cd9f6000-7f74cd9f7000 rw-p 00003000 08:11 535212 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0 7f74cd9f7000-7f74cee16000 r-xp 00000000 08:11 1983398 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.390.87 7f74cee16000-7f74cee37000 rwxp 0141f000 08:11 1983398 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.390.87 7f74cee37000-7f74cf273000 r-xp 01440000 08:11 1983398 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.390.87 7f74cf273000-7f74cf472000 ---p 0187c000 08:11 1983398 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.390.87 7f74cf472000-7f74cf7e5000 rw-p 0187b000 08:11 1983398 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.390.87 7f74cf7e5000-7f74d0000000 rw-p 00000000 00:00 0 7f74d0000000-7f74d0021000 rw-p 00000000 00:00 0 7f74d0021000-7f74d4000000 ---p 00000000 00:00 0 7f74d4000000-7f74d4021000 rw-p 00000000 00:00 0 7f74d4021000-7f74d8000000 ---p 00000000 00:00 0 7f74d8000000-7f74d8021000 rw-p 00000000 00:00 0 7f74d8021000-7f74dc000000 ---p 00000000 00:00 0 7f74dc000000-7f74dc021000 rw-p 00000000 00:00 0 7f74dc021000-7f74e0000000 ---p 00000000 00:00 0 7f74e0000000-7f74e0021000 rw-p 00000000 00:00 0 7f74e0021000-7f74e4000000 ---p 00000000 00:00 0 7f74e4000000-7f74e4021000 rw-p 00000000 00:00 0 7f74e4021000-7f74e8000000 ---p 00000000 00:00 0 7f74e8000000-7f74e8021000 rw-p 00000000 00:00 0 7f74e8021000-7f74ec000000 ---p 00000000 00:00 0 7f74ec007000-7f74ec017000 rw-s 00000000 00:06 509 /dev/nvidia0 7f74ec017000-7f74ec037000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74ec037000-7f74ec0b7000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74ec0b7000-7f74ec137000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74ec137000-7f74ec1b7000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f74ec1b7000-7f74ec1b8000 r-xp 00000000 08:11 535056 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0 7f74ec1b8000-7f74ec3b7000 ---p 00001000 08:11 535056 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0 7f74ec3b7000-7f74ec3b8000 r--p 00000000 08:11 535056 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0 7f74ec3b8000-7f74ec3b9000 rw-p 00001000 08:11 535056 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0 7f74ec3b9000-7f74ec3bd000 r-xp 00000000 08:11 535210 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0 7f74ec3bd000-7f74ec5bc000 ---p 00004000 08:11 535210 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0 7f74ec5bc000-7f74ec5bd000 r--p 00003000 08:11 535210 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0 7f74ec5bd000-7f74ec5be000 rw-p 00004000 08:11 535210 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0 7f74ec5be000-7f74ec5f6000 r-xp 00000000 08:11 535039 /usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0 7f74ec5f6000-7f74ec7f6000 ---p 00038000 08:11 535039 /usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0 7f74ec7f6000-7f74ec7f8000 r--p 00038000 08:11 535039 /usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0 7f74ec7f8000-7f74ec7f9000 rw-p 0003a000 08:11 535039 /usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0 7f74ec7f9000-7f74ec7fa000 ---p 00000000 00:00 0 7f74ec7fa000-7f74ecffa000 rw-p 00000000 00:00 0 7f74ecffa000-7f74ecffb000 ---p 00000000 00:00 0 7f74ecffb000-7f74ed7fb000 rw-p 00000000 00:00 0 7f74ed7fb000-7f74ed7fc000 ---p 00000000 00:00 0 7f74ed7fc000-7f74edffc000 rw-p 00000000 00:00 0 7f74edffc000-7f74edffd000 ---p 00000000 00:00 0 7f74edffd000-7f74ee7fd000 rw-p 00000000 00:00 0 7f74ee7fd000-7f74ee7fe000 ---p 00000000 00:00 0 7f74ee7fe000-7f74eeffe000 rw-p 00000000 00:00 0 7f74eeffe000-7f74eefff000 ---p 00000000 00:00 0 7f74eefff000-7f74ef7ff000 rw-p 00000000 00:00 0 7f74ef7ff000-7f74ef800000 ---p 00000000 00:00 0 7f74ef800000-7f74f0000000 rw-p 00000000 00:00 0 7f74f0000000-7f74f0021000 rw-p 00000000 00:00 0 7f74f0021000-7f74f4000000 ---p 00000000 00:00 0 7f74f4000000-7f74f4021000 rw-p 00000000 00:00 0 7f74f4021000-7f74f8000000 ---p 00000000 00:00 0 7f74f8000000-7f74f8021000 rw-p 00000000 00:00 0 7f74f8021000-7f74fc000000 ---p 00000000 00:00 0 7f74fc000000-7f74fc021000 rw-p 00000000 00:00 0 7f74fc021000-7f7500000000 ---p 00000000 00:00 0 7f7500000000-7f7500021000 rw-p 00000000 00:00 0 7f7500021000-7f7504000000 ---p 00000000 00:00 0 7f7504000000-7f7504021000 rw-p 00000000 00:00 0 7f7504021000-7f7508000000 ---p 00000000 00:00 0 7f7508000000-7f7508021000 rw-p 00000000 00:00 0 7f7508021000-7f750c000000 ---p 00000000 00:00 0 7f750c009000-7f750c01c000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f750c01c000-7f750c05c000 r-xs 00000000 08:11 1074384 /home/docker/.glvndHTaLGo (deleted) 7f750c05c000-7f750c15c000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f750c15c000-7f750c16f000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f750c16f000-7f750c1af000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f750c1af000-7f750c1cf000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f750c1cf000-7f750c1e0000 r-xp 00000000 08:11 535180 /usr/lib/x86_64-linux-gnu/libwayland-server.so.0.1.0 7f750c1e0000-7f750c3df000 ---p 00011000 08:11 535180 /usr/lib/x86_64-linux-gnu/libwayland-server.so.0.1.0 7f750c3df000-7f750c3e1000 r--p 00010000 08:11 535180 /usr/lib/x86_64-linux-gnu/libwayland-server.so.0.1.0 7f750c3e1000-7f750c3e2000 rw-p 00012000 08:11 535180 /usr/lib/x86_64-linux-gnu/libwayland-server.so.0.1.0 7f750c3e2000-7f750c3ef000 r-xp 00000000 08:11 535174 /usr/lib/x86_64-linux-gnu/libwayland-client.so.0.3.0 7f750c3ef000-7f750c5ee000 ---p 0000d000 08:11 535174 /usr/lib/x86_64-linux-gnu/libwayland-client.so.0.3.0 7f750c5ee000-7f750c5f0000 r--p 0000c000 08:11 535174 /usr/lib/x86_64-linux-gnu/libwayland-client.so.0.3.0 7f750c5f0000-7f750c5f1000 rw-p 0000e000 08:11 535174 /usr/lib/x86_64-linux-gnu/libwayland-client.so.0.3.0 7f750c5f1000-7f750c5f8000 r-xp 00000000 08:11 1075356 /usr/lib/x86_64-linux-gnu/libnvidia-egl-wayland.so.1.0.2 7f750c5f8000-7f750c7f7000 ---p 00007000 08:11 1075356 /usr/lib/x86_64-linux-gnu/libnvidia-egl-wayland.so.1.0.2 7f750c7f7000-7f750c7f9000 rw-p 00006000 08:11 1075356 /usr/lib/x86_64-linux-gnu/libnvidia-egl-wayland.so.1.0.2 7f750c7f9000-7f750c7fa000 ---p 00000000 00:00 0 7f750c7fa000-7f750cffa000 rw-p 00000000 00:00 0 7f750cffa000-7f750cffb000 ---p 00000000 00:00 0 7f750cffb000-7f750d7fb000 rw-p 00000000 00:00 0 7f750d7fb000-7f750d7fc000 ---p 00000000 00:00 0 7f750d7fc000-7f750dffc000 rw-p 00000000 00:00 0 7f750dffc000-7f750dffd000 ---p 00000000 00:00 0 7f750dffd000-7f750e7fd000 rw-p 00000000 00:00 0 7f750e7fd000-7f750e7fe000 ---p 00000000 00:00 0 7f750e7fe000-7f750effe000 rw-p 00000000 00:00 0 7f750effe000-7f750efff000 ---p 00000000 00:00 0 7f750efff000-7f750f7ff000 rw-p 00000000 00:00 0 7f750f7ff000-7f750f800000 ---p 00000000 00:00 0 7f750f800000-7f7510000000 rw-p 00000000 00:00 0 7f7510000000-7f7510021000 rw-p 00000000 00:00 0 7f7510021000-7f7514000000 ---p 00000000 00:00 0 7f7514000000-7f7514021000 rw-p 00000000 00:00 0 7f7514021000-7f7518000000 ---p 00000000 00:00 0 7f7518000000-7f7518021000 rw-p 00000000 00:00 0 7f7518021000-7f751c000000 ---p 00000000 00:00 0 7f751c000000-7f751c021000 rw-p 00000000 00:00 0 7f751c021000-7f7520000000 ---p 00000000 00:00 0 7f7520000000-7f7520021000 rw-p 00000000 00:00 0 7f7520021000-7f7524000000 ---p 00000000 00:00 0 7f7524000000-7f7524021000 rw-p 00000000 00:00 0 7f7524021000-7f7528000000 ---p 00000000 00:00 0 7f7528000000-7f7528021000 rw-p 00000000 00:00 0 7f7528021000-7f752c000000 ---p 00000000 00:00 0 7f752c00c000-7f752c04c000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f752c04c000-7f752c05c000 r-xp 00000000 08:11 535111 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0 7f752c05c000-7f752c25b000 ---p 00010000 08:11 535111 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0 7f752c25b000-7f752c25c000 r--p 0000f000 08:11 535111 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0 7f752c25c000-7f752c25d000 rw-p 00010000 08:11 535111 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0 7f752c25d000-7f752c311000 r-xp 00000000 08:11 1983392 /usr/lib/x86_64-linux-gnu/libEGL_nvidia.so.390.87 7f752c311000-7f752c511000 ---p 000b4000 08:11 1983392 /usr/lib/x86_64-linux-gnu/libEGL_nvidia.so.390.87 7f752c511000-7f752c53d000 rw-p 000b4000 08:11 1983392 /usr/lib/x86_64-linux-gnu/libEGL_nvidia.so.390.87 7f752c53d000-7f752c543000 rw-p 00000000 00:00 0 7f752c543000-7f752c5b1000 r-xp 00000000 08:11 535048 /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0 7f752c5b1000-7f752c7b0000 ---p 0006e000 08:11 535048 /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0 7f752c7b0000-7f752c7d8000 r--p 0006d000 08:11 535048 /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0 7f752c7d8000-7f752c7d9000 rw-p 00095000 08:11 535048 /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0 7f752c7d9000-7f752c7f9000 rw-p 00000000 00:00 0 7f752c7f9000-7f752c7fa000 ---p 00000000 00:00 0 7f752c7fa000-7f752cffa000 rw-p 00000000 00:00 0 7f752cffa000-7f752cffb000 ---p 00000000 00:00 0 7f752cffb000-7f752d7fb000 rw-p 00000000 00:00 0 7f752d7fb000-7f752d7fc000 ---p 00000000 00:00 0 7f752d7fc000-7f752dffc000 rw-p 00000000 00:00 0 7f752dffc000-7f752dffd000 ---p 00000000 00:00 0 7f752dffd000-7f752e7fd000 rw-p 00000000 00:00 0 7f752e7fd000-7f752e7fe000 ---p 00000000 00:00 0 7f752e7fe000-7f752effe000 rw-p 00000000 00:00 0 7f752effe000-7f752efff000 ---p 00000000 00:00 0 7f752efff000-7f752f7ff000 rw-p 00000000 00:00 0 7f752f7ff000-7f752f800000 ---p 00000000 00:00 0 7f752f800000-7f7530000000 rw-p 00000000 00:00 0 7f7530000000-7f7530021000 rw-p 00000000 00:00 0 7f7530021000-7f7534000000 ---p 00000000 00:00 0 7f7534000000-7f7534021000 rw-p 00000000 00:00 0 7f7534021000-7f7538000000 ---p 00000000 00:00 0 7f7538000000-7f7538021000 rw-p 00000000 00:00 0 7f7538021000-7f753c000000 ---p 00000000 00:00 0 7f753c000000-7f753c021000 rw-p 00000000 00:00 0 7f753c021000-7f7540000000 ---p 00000000 00:00 0 7f7540000000-7f7540021000 rw-p 00000000 00:00 0 7f7540021000-7f7544000000 ---p 00000000 00:00 0 7f7544000000-7f7544021000 rw-p 00000000 00:00 0 7f7544021000-7f7548000000 ---p 00000000 00:00 0 7f7548000000-7f7548021000 rw-p 00000000 00:00 0 7f7548021000-7f754c000000 ---p 00000000 00:00 0 7f754c000000-7f754c021000 rw-p 00000000 00:00 0 7f754c021000-7f7550000000 ---p 00000000 00:00 0 7f7550001000-7f7550011000 rw-s 00000000 00:06 509 /dev/nvidia0 7f7550011000-7f755008d000 r-xp 00000000 08:11 1983399 /usr/lib/x86_64-linux-gnu/libnvidia-glsi.so.390.87 7f755008d000-7f755028c000 ---p 0007c000 08:11 1983399 /usr/lib/x86_64-linux-gnu/libnvidia-glsi.so.390.87 7f755028c000-7f7550299000 rw-p 0007b000 08:11 1983399 /usr/lib/x86_64-linux-gnu/libnvidia-glsi.so.390.87 7f7550299000-7f75502a8000 rw-p 00000000 00:00 0 7f75502a8000-7f75502ba000 r-xp 00000000 08:11 535037 /usr/lib/x86_64-linux-gnu/libEGL.so.1.0.0 7f75502ba000-7f75504ba000 ---p 00012000 08:11 535037 /usr/lib/x86_64-linux-gnu/libEGL.so.1.0.0 7f75504ba000-7f75504bb000 r--p 00012000 08:11 535037 /usr/lib/x86_64-linux-gnu/libEGL.so.1.0.0 7f75504bb000-7f75504bc000 rw-p 00013000 08:11 535037 /usr/lib/x86_64-linux-gnu/libEGL.so.1.0.0 7f75504bc000-7f7550585000 r-xp 00000000 08:11 1983395 /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.390.87 7f7550585000-7f75505b9000 rwxp 000c9000 08:11 1983395 /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.390.87 7f75505b9000-7f75505cd000 r-xp 000fd000 08:11 1983395 /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.390.87 7f75505cd000-7f75507cd000 ---p 00111000 08:11 1983395 /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.390.87 7f75507cd000-7f75507f2000 rw-p 00111000 08:11 1983395 /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.390.87 7f75507f2000-7f75507f9000 rw-p 00000000 00:00 0 7f75507f9000-7f75507fa000 ---p 00000000 00:00 0 7f75507fa000-7f7550ffa000 rw-p 00000000 00:00 0 7f7550ffa000-7f7550ffb000 ---p 00000000 00:00 0 7f7550ffb000-7f75517fb000 rw-p 00000000 00:00 0 7f75517fb000-7f75517fc000 ---p 00000000 00:00 0 7f75517fc000-7f7551ffc000 rw-p 00000000 00:00 0 7f7551ffc000-7f7551ffd000 ---p 00000000 00:00 0 7f7551ffd000-7f75527fd000 rw-p 00000000 00:00 0 7f75527fd000-7f75527fe000 ---p 00000000 00:00 0 7f75527fe000-7f7552ffe000 rw-p 00000000 00:00 0 7f7552ffe000-7f7552fff000 ---p 00000000 00:00 0 7f7552fff000-7f75537ff000 rw-p 00000000 00:00 0 7f75537ff000-7f7553800000 ---p 00000000 00:00 0 7f7553800000-7f7554000000 rw-p 00000000 00:00 0 7f7554000000-7f7554021000 rw-p 00000000 00:00 0 7f7554021000-7f7558000000 ---p 00000000 00:00 0 7f7558000000-7f7558021000 rw-p 00000000 00:00 0 7f7558021000-7f755c000000 ---p 00000000 00:00 0 7f755c000000-7f755c021000 rw-p 00000000 00:00 0 7f755c021000-7f7560000000 ---p 00000000 00:00 0 7f756000a000-7f756004a000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f756004a000-7f756004d000 r-xp 00000000 08:11 1074246 /usr/lib/x86_64-linux-gnu/tls/libnvidia-tls.so.390.87 7f756004d000-7f756024d000 ---p 00003000 08:11 1074246 /usr/lib/x86_64-linux-gnu/tls/libnvidia-tls.so.390.87 7f756024d000-7f756024e000 rw-p 00003000 08:11 1074246 /usr/lib/x86_64-linux-gnu/tls/libnvidia-tls.so.390.87 7f756024e000-7f756029c000 r-xp 00000000 08:11 1204606 /usr/lib/x86_64-linux-gnu/libvulkan.so.1.1.70 7f756029c000-7f756049b000 ---p 0004e000 08:11 1204606 /usr/lib/x86_64-linux-gnu/libvulkan.so.1.1.70 7f756049b000-7f756049c000 r--p 0004d000 08:11 1204606 /usr/lib/x86_64-linux-gnu/libvulkan.so.1.1.70 7f756049c000-7f756049d000 rw-p 0004e000 08:11 1204606 /usr/lib/x86_64-linux-gnu/libvulkan.so.1.1.70 7f756049d000-7f75607a9000 rw-p 00000000 00:00 0 7f75607a9000-7f75607aa000 ---p 00000000 00:00 0 7f75607aa000-7f7560feb000 rw-p 00000000 00:00 0 7f7560feb000-7f7560fec000 ---p 00000000 00:00 0 7f7560fec000-7f756182d000 rw-p 00000000 00:00 0 7f756182d000-7f756182e000 ---p 00000000 00:00 0 7f756182e000-7f756206f000 rw-p 00000000 00:00 0 7f756206f000-7f7562070000 ---p 00000000 00:00 0 7f7562070000-7f7562870000 rw-p 00000000 00:00 0 7f7562870000-7f7562876000 r-xp 00000000 08:11 2372182 /lib/x86_64-linux-gnu/libuuid.so.1.3.0 7f7562876000-7f7562a75000 ---p 00006000 08:11 2372182 /lib/x86_64-linux-gnu/libuuid.so.1.3.0 7f7562a75000-7f7562a76000 r--p 00005000 08:11 2372182 /lib/x86_64-linux-gnu/libuuid.so.1.3.0 7f7562a76000-7f7562a77000 rw-p 00006000 08:11 2372182 /lib/x86_64-linux-gnu/libuuid.so.1.3.0 7f7562a77000-7f7562a8a000 r-xp 00000000 08:11 288948 /lib/x86_64-linux-gnu/libbsd.so.0.8.7 7f7562a8a000-7f7562c89000 ---p 00013000 08:11 288948 /lib/x86_64-linux-gnu/libbsd.so.0.8.7 7f7562c89000-7f7562c8a000 r--p 00012000 08:11 288948 /lib/x86_64-linux-gnu/libbsd.so.0.8.7 7f7562c8a000-7f7562c8b000 rw-p 00013000 08:11 288948 /lib/x86_64-linux-gnu/libbsd.so.0.8.7 7f7562c8b000-7f7562c8c000 rw-p 00000000 00:00 0 7f7562c8c000-7f7562c92000 r-xp 00000000 08:11 535107 /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3 7f7562c92000-7f7562e91000 ---p 00006000 08:11 535107 /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3 7f7562e91000-7f7562e92000 r--p 00005000 08:11 535107 /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3 7f7562e92000-7f7562e93000 rw-p 00006000 08:11 535107 /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3 7f7562e93000-7f7562ebe000 r-xp 00000000 08:11 425627 /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1 7f7562ebe000-7f75630bd000 ---p 0002b000 08:11 425627 /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1 7f75630bd000-7f75630bf000 r--p 0002a000 08:11 425627 /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1 7f75630bf000-7f75630c0000 rw-p 0002c000 08:11 425627 /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1 7f75630c0000-7f7563107000 r-xp 00000000 08:11 2372092 /lib/x86_64-linux-gnu/libblkid.so.1.1.0 7f7563107000-7f7563307000 ---p 00047000 08:11 2372092 /lib/x86_64-linux-gnu/libblkid.so.1.1.0 7f7563307000-7f756330b000 r--p 00047000 08:11 2372092 /lib/x86_64-linux-gnu/libblkid.so.1.1.0 7f756330b000-7f756330c000 rw-p 0004b000 08:11 2372092 /lib/x86_64-linux-gnu/libblkid.so.1.1.0 7f756330c000-7f756330d000 rw-p 00000000 00:00 0 7f756330d000-7f7563312000 r-xp 00000000 08:11 535068 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0 7f7563312000-7f7563511000 ---p 00005000 08:11 535068 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0 7f7563511000-7f7563512000 r--p 00004000 08:11 535068 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0 7f7563512000-7f7563513000 rw-p 00005000 08:11 535068 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0 7f7563513000-7f7563515000 r-xp 00000000 08:11 535060 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0 7f7563515000-7f7563715000 ---p 00002000 08:11 535060 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0 7f7563715000-7f7563716000 r--p 00002000 08:11 535060 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0 7f7563716000-7f7563717000 rw-p 00003000 08:11 535060 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0 7f7563717000-7f7563746000 r-xp 00000000 08:11 2498462 /lib/x86_64-linux-gnu/libexpat.so.1.6.7 7f7563746000-7f7563946000 ---p 0002f000 08:11 2498462 /lib/x86_64-linux-gnu/libexpat.so.1.6.7 7f7563946000-7f7563948000 r--p 0002f000 08:11 2498462 /lib/x86_64-linux-gnu/libexpat.so.1.6.7 7f7563948000-7f7563949000 rw-p 00031000 08:11 2498462 /lib/x86_64-linux-gnu/libexpat.so.1.6.7 7f7563949000-7f7563951000 r-xp 00000000 08:11 535170 /usr/lib/x86_64-linux-gnu/libthai.so.0.3.0 7f7563951000-7f7563b50000 ---p 00008000 08:11 535170 /usr/lib/x86_64-linux-gnu/libthai.so.0.3.0 7f7563b50000-7f7563b51000 r--p 00007000 08:11 535170 /usr/lib/x86_64-linux-gnu/libthai.so.0.3.0 7f7563b51000-7f7563b52000 rw-p 00008000 08:11 535170 /usr/lib/x86_64-linux-gnu/libthai.so.0.3.0 7f7563b52000-7f7563bee000 r-xp 00000000 08:11 425643 /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10702.0 7f7563bee000-7f7563dee000 ---p 0009c000 08:11 425643 /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10702.0 7f7563dee000-7f7563def000 r--p 0009c000 08:11 425643 /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10702.0 7f7563def000-7f7563df0000 rw-p 0009d000 08:11 425643 /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10702.0 7f7563df0000-7f7563e41000 r-xp 00000000 08:11 2372125 /lib/x86_64-linux-gnu/libmount.so.1.1.0 7f7563e41000-7f7564040000 ---p 00051000 08:11 2372125 /lib/x86_64-linux-gnu/libmount.so.1.1.0 7f7564040000-7f7564042000 r--p 00050000 08:11 2372125 /lib/x86_64-linux-gnu/libmount.so.1.1.0 7f7564042000-7f7564043000 rw-p 00052000 08:11 2372125 /lib/x86_64-linux-gnu/libmount.so.1.1.0 7f7564043000-7f7564044000 rw-p 00000000 00:00 0 7f7564044000-7f756405b000 r-xp 00000000 08:11 2372159 /lib/x86_64-linux-gnu/libresolv-2.27.so 7f756405b000-7f756425b000 ---p 00017000 08:11 2372159 /lib/x86_64-linux-gnu/libresolv-2.27.so 7f756425b000-7f756425c000 r--p 00017000 08:11 2372159 /lib/x86_64-linux-gnu/libresolv-2.27.so 7f756425c000-7f756425d000 rw-p 00018000 08:11 2372159 /lib/x86_64-linux-gnu/libresolv-2.27.so 7f756425d000-7f756425f000 rw-p 00000000 00:00 0 7f756425f000-7f7564284000 r-xp 00000000 08:11 2372165 /lib/x86_64-linux-gnu/libselinux.so.1 7f7564284000-7f7564483000 ---p 00025000 08:11 2372165 /lib/x86_64-linux-gnu/libselinux.so.1 7f7564483000-7f7564484000 r--p 00024000 08:11 2372165 /lib/x86_64-linux-gnu/libselinux.so.1 7f7564484000-7f7564485000 rw-p 00025000 08:11 2372165 /lib/x86_64-linux-gnu/libselinux.so.1 7f7564485000-7f7564487000 rw-p 00000000 00:00 0 7f7564487000-7f75644a3000 r-xp 00000000 08:11 2372184 /lib/x86_64-linux-gnu/libz.so.1.2.11 7f75644a3000-7f75646a2000 ---p 0001c000 08:11 2372184 /lib/x86_64-linux-gnu/libz.so.1.2.11 7f75646a2000-7f75646a3000 r--p 0001b000 08:11 2372184 /lib/x86_64-linux-gnu/libz.so.1.2.11 7f75646a3000-7f75646a4000 rw-p 0001c000 08:11 2372184 /lib/x86_64-linux-gnu/libz.so.1.2.11 7f75646a4000-7f75646b0000 r-xp 00000000 08:11 535218 /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0 7f75646b0000-7f75648af000 ---p 0000c000 08:11 535218 /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0 7f75648af000-7f75648b0000 r--p 0000b000 08:11 535218 /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0 7f75648b0000-7f75648b1000 rw-p 0000c000 08:11 535218 /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0 7f75648b1000-7f75648b3000 r-xp 00000000 08:11 535220 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 7f75648b3000-7f7564ab2000 ---p 00002000 08:11 535220 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 7f7564ab2000-7f7564ab3000 r--p 00001000 08:11 535220 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 7f7564ab3000-7f7564ab4000 rw-p 00002000 08:11 535220 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 7f7564ab4000-7f7564ae5000 r-xp 00000000 08:11 425838 /usr/lib/x86_64-linux-gnu/libpng16.so.16.34.0 7f7564ae5000-7f7564ce4000 ---p 00031000 08:11 425838 /usr/lib/x86_64-linux-gnu/libpng16.so.16.34.0 7f7564ce4000-7f7564ce5000 r--p 00030000 08:11 425838 /usr/lib/x86_64-linux-gnu/libpng16.so.16.34.0 7f7564ce5000-7f7564ce6000 rw-p 00031000 08:11 425838 /usr/lib/x86_64-linux-gnu/libpng16.so.16.34.0 7f7564ce6000-7f7564d83000 r-xp 00000000 08:11 535156 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.34.0 7f7564d83000-7f7564f82000 ---p 0009d000 08:11 535156 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.34.0 7f7564f82000-7f7564f8a000 r--p 0009c000 08:11 535156 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.34.0 7f7564f8a000-7f7564f8b000 rw-p 000a4000 08:11 535156 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.34.0 7f7564f8b000-7f7564fb1000 r-xp 00000000 08:11 535226 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 7f7564fb1000-7f75651b1000 ---p 00026000 08:11 535226 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 7f75651b1000-7f75651b2000 r--p 00026000 08:11 535226 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 7f75651b2000-7f75651b3000 rw-p 00027000 08:11 535226 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 7f75651b3000-7f7565260000 r-xp 00000000 08:11 425591 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.15.0 7f7565260000-7f756545f000 ---p 000ad000 08:11 425591 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.15.0 7f756545f000-7f7565466000 r--p 000ac000 08:11 425591 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.15.0 7f7565466000-7f7565467000 rw-p 000b3000 08:11 425591 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.15.0 7f7565467000-7f7565478000 r-xp 00000000 08:11 535070 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 7f7565478000-7f7565677000 ---p 00011000 08:11 535070 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 7f7565677000-7f7565678000 r--p 00010000 08:11 535070 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 7f7565678000-7f7565679000 rw-p 00011000 08:11 535070 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 7f7565679000-7f756567b000 r-xp 00000000 08:11 535066 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 7f756567b000-7f756587a000 ---p 00002000 08:11 535066 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 7f756587a000-7f756587b000 r--p 00001000 08:11 535066 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 7f756587b000-7f756587c000 rw-p 00002000 08:11 535066 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 7f756587c000-7f756587e000 r-xp 00000000 08:11 535062 /usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0 7f756587e000-7f7565a7d000 ---p 00002000 08:11 535062 /usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0 7f7565a7d000-7f7565a7e000 r--p 00001000 08:11 535062 /usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0 7f7565a7e000-7f7565a7f000 rw-p 00002000 08:11 535062 /usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0 7f7565a7f000-7f7565a88000 r-xp 00000000 08:11 535064 /usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2 7f7565a88000-7f7565c87000 ---p 00009000 08:11 535064 /usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2 7f7565c87000-7f7565c88000 r--p 00008000 08:11 535064 /usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2 7f7565c88000-7f7565c89000 rw-p 00009000 08:11 535064 /usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2 7f7565c89000-7f7565c93000 r-xp 00000000 08:11 535078 /usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0 7f7565c93000-7f7565e92000 ---p 0000a000 08:11 535078 /usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0 7f7565e92000-7f7565e93000 r--p 00009000 08:11 535078 /usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0 7f7565e93000-7f7565e94000 rw-p 0000a000 08:11 535078 /usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0 7f7565e94000-7f7565ea3000 r-xp 00000000 08:11 535074 /usr/lib/x86_64-linux-gnu/libXi.so.6.1.0 7f7565ea3000-7f75660a2000 ---p 0000f000 08:11 535074 /usr/lib/x86_64-linux-gnu/libXi.so.6.1.0 7f75660a2000-7f75660a3000 r--p 0000e000 08:11 535074 /usr/lib/x86_64-linux-gnu/libXi.so.6.1.0 7f75660a3000-7f75660a4000 rw-p 0000f000 08:11 535074 /usr/lib/x86_64-linux-gnu/libXi.so.6.1.0 7f75660a4000-7f75660a6000 r-xp 00000000 08:11 535076 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0 7f75660a6000-7f75662a5000 ---p 00002000 08:11 535076 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0 7f75662a5000-7f75662a6000 r--p 00001000 08:11 535076 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0 7f75662a6000-7f75662a7000 rw-p 00002000 08:11 535076 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0 7f75662a7000-7f75662b0000 r-xp 00000000 08:11 535080 /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0 7f75662b0000-7f75664af000 ---p 00009000 08:11 535080 /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0 7f75664af000-7f75664b0000 r--p 00008000 08:11 535080 /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0 7f75664b0000-7f75664b1000 rw-p 00009000 08:11 535080 /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0 7f75664b1000-7f7566521000 r-xp 00000000 08:11 2372154 /lib/x86_64-linux-gnu/libpcre.so.3.13.3 7f7566521000-7f7566721000 ---p 00070000 08:11 2372154 /lib/x86_64-linux-gnu/libpcre.so.3.13.3 7f7566721000-7f7566722000 r--p 00070000 08:11 2372154 /lib/x86_64-linux-gnu/libpcre.so.3.13.3 7f7566722000-7f7566723000 rw-p 00071000 08:11 2372154 /lib/x86_64-linux-gnu/libpcre.so.3.13.3 7f7566723000-7f756672a000 r-xp 00000000 08:11 2372863 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4 7f756672a000-7f7566929000 ---p 00007000 08:11 2372863 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4 7f7566929000-7f756692a000 r--p 00006000 08:11 2372863 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4 7f756692a000-7f756692b000 rw-p 00007000 08:11 2372863 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4 7f756692b000-7f7566969000 r-xp 00000000 08:11 535125 /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.10.1 7f7566969000-7f7566b69000 ---p 0003e000 08:11 535125 /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.10.1 7f7566b69000-7f7566b6b000 r--p 0003e000 08:11 535125 /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.10.1 7f7566b6b000-7f7566b70000 rw-p 00040000 08:11 535125 /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.10.1 7f7566b70000-7f7566bba000 r-xp 00000000 08:11 535150 /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.4000.14 7f7566bba000-7f7566db9000 ---p 0004a000 08:11 535150 /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.4000.14 7f7566db9000-7f7566dbc000 r--p 00049000 08:11 535150 /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.4000.14 7f7566dbc000-7f7566dbd000 rw-p 0004c000 08:11 535150 /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.4000.14 7f7566dbd000-7f7566dd1000 r-xp 00000000 08:11 535154 /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.4000.14 7f7566dd1000-7f7566fd1000 ---p 00014000 08:11 535154 /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.4000.14 7f7566fd1000-7f7566fd2000 r--p 00014000 08:11 535154 /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.4000.14 7f7566fd2000-7f7566fd3000 rw-p 00015000 08:11 535154 /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.4000.14 7f7566fd3000-7f7567168000 r-xp 00000000 08:11 425598 /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.3 7f7567168000-7f7567368000 ---p 00195000 08:11 425598 /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.3 7f7567368000-7f756736f000 r--p 00195000 08:11 425598 /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.3 7f756736f000-7f7567370000 rw-p 0019c000 08:11 425598 /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.3 7f7567370000-7f7567372000 rw-p 00000000 00:00 0 7f7567372000-7f756748a000 r-xp 00000000 08:11 535098 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11510.0 7f756748a000-7f7567689000 ---p 00118000 08:11 535098 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11510.0 7f7567689000-7f756768c000 r--p 00117000 08:11 535098 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11510.0 7f756768c000-7f756768e000 rw-p 0011a000 08:11 535098 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11510.0 7f756768e000-7f756768f000 rw-p 00000000 00:00 0 7f756768f000-7f75676b1000 r-xp 00000000 08:11 535086 /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.22810.1 7f75676b1000-7f75678b1000 ---p 00022000 08:11 535086 /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.22810.1 7f75678b1000-7f75678b4000 r--p 00022000 08:11 535086 /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.22810.1 7f75678b4000-7f75678b5000 rw-p 00025000 08:11 535086 /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.22810.1 7f75678b5000-7f75678ba000 r-xp 00000000 08:11 535072 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 7f75678ba000-7f7567ab9000 ---p 00005000 08:11 535072 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 7f7567ab9000-7f7567aba000 r--p 00004000 08:11 535072 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 7f7567aba000-7f7567abb000 rw-p 00005000 08:11 535072 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 7f7567abb000-7f7567bee000 r-xp 00000000 08:11 535058 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 7f7567bee000-7f7567dee000 ---p 00133000 08:11 535058 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 7f7567dee000-7f7567def000 r--p 00133000 08:11 535058 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 7f7567def000-7f7567df3000 rw-p 00134000 08:11 535058 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 7f7567df3000-7f7567dff000 r-xp 00000000 08:11 535152 /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.4000.14 7f7567dff000-7f7567ffe000 ---p 0000c000 08:11 535152 /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.4000.14 7f7567ffe000-7f7567fff000 r--p 0000b000 08:11 535152 /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.4000.14 7f7567fff000-7f7568000000 rw-p 0000c000 08:11 535152 /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.4000.14 7f7568000000-7f7568021000 rw-p 00000000 00:00 0 7f7568021000-7f756c000000 ---p 00000000 00:00 0 7f756c00a000-7f756c10b000 rw-p 00000000 00:00 0 7f756c10b000-7f756c10e000 r-xp 00000000 08:11 425608 /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.3 7f756c10e000-7f756c30d000 ---p 00003000 08:11 425608 /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.3 7f756c30d000-7f756c30e000 r--p 00002000 08:11 425608 /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.3 7f756c30e000-7f756c30f000 rw-p 00003000 08:11 425608 /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.3 7f756c30f000-7f756c3bf000 r-xp 00000000 08:11 805819 /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.32 7f756c3bf000-7f756c5be000 ---p 000b0000 08:11 805819 /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.32 7f756c5be000-7f756c5c2000 r--p 000af000 08:11 805819 /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.32 7f756c5c2000-7f756c5c4000 rw-p 000b3000 08:11 805819 /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.32 7f756c5c4000-7f756c73d000 r-xp 00000000 08:11 2372894 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25 7f756c73d000-7f756c93d000 ---p 00179000 08:11 2372894 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25 7f756c93d000-7f756c947000 r--p 00179000 08:11 2372894 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25 7f756c947000-7f756c949000 rw-p 00183000 08:11 2372894 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25 7f756c949000-7f756c94d000 rw-p 00000000 00:00 0 7f756c94d000-7f756ca60000 r-xp 00000000 08:11 425604 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.3 7f756ca60000-7f756cc60000 ---p 00113000 08:11 425604 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.3 7f756cc60000-7f756cc61000 r--p 00113000 08:11 425604 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.3 7f756cc61000-7f756cc62000 rw-p 00114000 08:11 425604 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.3 7f756cc62000-7f756cc63000 rw-p 00000000 00:00 0 7f756cc63000-7f756ccb5000 r-xp 00000000 08:11 425612 /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.3 7f756ccb5000-7f756ceb5000 ---p 00052000 08:11 425612 /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.3 7f756ceb5000-7f756ceb6000 r--p 00052000 08:11 425612 /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.3 7f756ceb6000-7f756ceb7000 rw-p 00053000 08:11 425612 /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.3 7f756ceb7000-7f756ced9000 r-xp 00000000 08:11 535131 /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.3611.0 7f756ced9000-7f756d0d9000 ---p 00022000 08:11 535131 /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.3611.0 7f756d0d9000-7f756d0da000 r--p 00022000 08:11 535131 /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.3611.0 7f756d0da000-7f756d0db000 rw-p 00023000 08:11 535131 /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.3611.0 7f756d0db000-7f756d510000 r-xp 00000000 08:11 805838 /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.32 7f756d510000-7f756d70f000 ---p 00435000 08:11 805838 /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.32 7f756d70f000-7f756d716000 r--p 00434000 08:11 805838 /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.32 7f756d716000-7f756d71a000 rw-p 0043b000 08:11 805838 /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.32 7f756d71a000-7f756d71d000 rw-p 00000000 00:00 0 7f756d71d000-7f756d726000 r-xp 00000000 08:11 1329918 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Plugins/x86_64/ScreenSelector.so 7f756d726000-7f756d926000 ---p 00009000 08:11 1329918 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Plugins/x86_64/ScreenSelector.so 7f756d926000-7f756d927000 r--p 00009000 08:11 1329918 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Plugins/x86_64/ScreenSelector.so 7f756d927000-7f756d928000 rw-p 0000a000 08:11 1329918 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Plugins/x86_64/ScreenSelector.so 7f756d928000-7f756d933000 r-xp 00000000 08:11 2372138 /lib/x86_64-linux-gnu/libnss_files-2.27.so 7f756d933000-7f756db32000 ---p 0000b000 08:11 2372138 /lib/x86_64-linux-gnu/libnss_files-2.27.so 7f756db32000-7f756db33000 r--p 0000a000 08:11 2372138 /lib/x86_64-linux-gnu/libnss_files-2.27.so 7f756db33000-7f756db34000 rw-p 0000b000 08:11 2372138 /lib/x86_64-linux-gnu/libnss_files-2.27.so 7f756db34000-7f756db3a000 rw-p 00000000 00:00 0 7f756db3a000-7f756db51000 r-xp 00000000 08:11 2372132 /lib/x86_64-linux-gnu/libnsl-2.27.so 7f756db51000-7f756dd50000 ---p 00017000 08:11 2372132 /lib/x86_64-linux-gnu/libnsl-2.27.so 7f756dd50000-7f756dd51000 r--p 00016000 08:11 2372132 /lib/x86_64-linux-gnu/libnsl-2.27.so 7f756dd51000-7f756dd52000 rw-p 00017000 08:11 2372132 /lib/x86_64-linux-gnu/libnsl-2.27.so 7f756dd52000-7f756dd54000 rw-p 00000000 00:00 0 7f756dd54000-7f756dd5f000 r-xp 00000000 08:11 2372142 /lib/x86_64-linux-gnu/libnss_nis-2.27.so 7f756dd5f000-7f756df5e000 ---p 0000b000 08:11 2372142 /lib/x86_64-linux-gnu/libnss_nis-2.27.so 7f756df5e000-7f756df5f000 r--p 0000a000 08:11 2372142 /lib/x86_64-linux-gnu/libnss_nis-2.27.so 7f756df5f000-7f756df60000 rw-p 0000b000 08:11 2372142 /lib/x86_64-linux-gnu/libnss_nis-2.27.so 7f756df60000-7f756df68000 r-xp 00000000 08:11 2372134 /lib/x86_64-linux-gnu/libnss_compat-2.27.so 7f756df68000-7f756e168000 ---p 00008000 08:11 2372134 /lib/x86_64-linux-gnu/libnss_compat-2.27.so 7f756e168000-7f756e169000 r--p 00008000 08:11 2372134 /lib/x86_64-linux-gnu/libnss_compat-2.27.so 7f756e169000-7f756e16a000 rw-p 00009000 08:11 2372134 /lib/x86_64-linux-gnu/libnss_compat-2.27.so 7f756e16a000-7f756e16b000 ---p 00000000 00:00 0 7f756e16b000-7f756e16c000 rw-p 00000000 00:00 0 7f756e16c000-7f756e174000 ---p 00000000 00:00 0 7f756e174000-7f756e36b000 rw-p 00000000 00:00 0 7f756e36b000-7f756e72d000 r--p 00000000 08:11 1329838 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/Managed/mscorlib.dll 7f756e72d000-7f756e72e000 rw-p 00000000 00:00 0 7f756e72e000-7f756e78d000 ---p 00000000 00:00 0 7f756e78d000-7f756e84d000 rw-p 00000000 00:00 0 7f756e84d000-7f756eb9c000 r-xp 00000000 08:11 1329915 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so 7f756eb9c000-7f756ed9b000 ---p 0034f000 08:11 1329915 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so 7f756ed9b000-7f756eda2000 r--p 0034e000 08:11 1329915 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so 7f756eda2000-7f756eda8000 rw-p 00355000 08:11 1329915 /home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so 7f756eda8000-7f756efc3000 rw-p 00000000 00:00 0 7f756efc3000-7f756efc4000 ---p 00000000 00:00 0 7f756efc4000-7f75712cc000 rw-p 00000000 00:00 0 7f75712cc000-7f75714b3000 r-xp 00000000 08:11 2372096 /lib/x86_64-linux-gnu/libc-2.27.so 7f75714b3000-7f75716b3000 ---p 001e7000 08:11 2372096 /lib/x86_64-linux-gnu/libc-2.27.so 7f75716b3000-7f75716b7000 r--p 001e7000 08:11 2372096 /lib/x86_64-linux-gnu/libc-2.27.so 7f75716b7000-7f75716b9000 rw-p 001eb000 08:11 2372096 /lib/x86_64-linux-gnu/libc-2.27.so 7f75716b9000-7f75716bd000 rw-p 00000000 00:00 0 7f75716bd000-7f75716d7000 r-xp 00000000 08:11 2372157 /lib/x86_64-linux-gnu/libpthread-2.27.so 7f75716d7000-7f75718d6000 ---p 0001a000 08:11 2372157 /lib/x86_64-linux-gnu/libpthread-2.27.so 7f75718d6000-7f75718d7000 r--p 00019000 08:11 2372157 /lib/x86_64-linux-gnu/libpthread-2.27.so 7f75718d7000-7f75718d8000 rw-p 0001a000 08:11 2372157 /lib/x86_64-linux-gnu/libpthread-2.27.so 7f75718d8000-7f75718dc000 rw-p 00000000 00:00 0 7f75718dc000-7f75718f3000 r-xp 00000000 08:11 2372114 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f75718f3000-7f7571af2000 ---p 00017000 08:11 2372114 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f7571af2000-7f7571af3000 r--p 00016000 08:11 2372114 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f7571af3000-7f7571af4000 rw-p 00017000 08:11 2372114 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f7571af4000-7f7571c91000 r-xp 00000000 08:11 2372121 /lib/x86_64-linux-gnu/libm-2.27.so 7f7571c91000-7f7571e90000 ---p 0019d000 08:11 2372121 /lib/x86_64-linux-gnu/libm-2.27.so 7f7571e90000-7f7571e91000 r--p 0019c000 08:11 2372121 /lib/x86_64-linux-gnu/libm-2.27.so 7f7571e91000-7f7571e92000 rw-p 0019d000 08:11 2372121 /lib/x86_64-linux-gnu/libm-2.27.so 7f7571e92000-7f7571e99000 r-xp 00000000 08:11 2372161 /lib/x86_64-linux-gnu/librt-2.27.so 7f7571e99000-7f7572098000 ---p 00007000 08:11 2372161 /lib/x86_64-linux-gnu/librt-2.27.so 7f7572098000-7f7572099000 r--p 00006000 08:11 2372161 /lib/x86_64-linux-gnu/librt-2.27.so 7f7572099000-7f757209a000 rw-p 00007000 08:11 2372161 /lib/x86_64-linux-gnu/librt-2.27.so 7f757209a000-7f757209d000 r-xp 00000000 08:11 2372106 /lib/x86_64-linux-gnu/libdl-2.27.so 7f757209d000-7f757229c000 ---p 00003000 08:11 2372106 /lib/x86_64-linux-gnu/libdl-2.27.so 7f757229c000-7f757229d000 r--p 00002000 08:11 2372106 /lib/x86_64-linux-gnu/libdl-2.27.so 7f757229d000-7f757229e000 rw-p 00003000 08:11 2372106 /lib/x86_64-linux-gnu/libdl-2.27.so 7f757229e000-7f75722c5000 r-xp 00000000 08:11 2372078 /lib/x86_64-linux-gnu/ld-2.27.so 7f75722c8000-7f75722ca000 rw-p 00000000 00:00 0 7f75722ca000-7f75722cb000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f75722cb000-7f75722cc000 rw-s 00000000 00:06 509 /dev/nvidia0 7f75722cc000-7f75722cd000 rw-s 00000000 00:06 509 /dev/nvidia0 7f75722cd000-7f75722ce000 rw-s 00000000 00:06 509 /dev/nvidia0 7f75722ce000-7f75722cf000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f75722cf000-7f75722d3000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f75722d3000-7f75722d4000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f75722d4000-7f75722e4000 rw-s 00000000 00:06 509 /dev/nvidia0 7f75722e4000-7f7572304000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f7572304000-7f757248d000 rw-p 00000000 00:00 0 7f757248d000-7f757248e000 rw-s 00000000 00:06 509 /dev/nvidia0 7f757248e000-7f757248f000 rw-s 00000000 00:06 509 /dev/nvidia0 7f757248f000-7f7572490000 rw-s 00000000 00:06 509 /dev/nvidia0 7f7572490000-7f7572491000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f7572491000-7f7572493000 rw-s 00000000 08:11 1074217 /tmp/.glybAcKf (deleted) 7f7572493000-7f7572494000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f7572494000-7f7572498000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f7572498000-7f7572499000 rw-s 00000000 00:06 509 /dev/nvidia0 7f7572499000-7f757249a000 rw-s 00000000 00:06 509 /dev/nvidia0 7f757249a000-7f757249b000 rw-s 00000000 00:06 509 /dev/nvidia0 7f757249b000-7f75724bb000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f75724bb000-7f75724bc000 rw-s 00000000 00:06 508 /dev/nvidiactl 7f75724bc000-7f75724c4000 rw-p 00000000 00:00 0 7f75724c4000-7f75724c5000 rw-s 00000000 00:34 3 /dev/shm/mono.111 7f75724c5000-7f75724c6000 r--p 00027000 08:11 2372078 /lib/x86_64-linux-gnu/ld-2.27.so 7f75724c6000-7f75724c7000 rw-p 00028000 08:11 2372078 /lib/x86_64-linux-gnu/ld-2.27.so 7f75724c7000-7f75724c8000 rw-p 00000000 00:00 0 7fffa15f3000-7fffa15fb000 ---p 00000000 00:00 0 7fffa1dd1000-7fffa1df2000 rw-p 00000000 00:00 0 [stack] 7fffa1dfa000-7fffa1dfd000 r--p 00000000 00:00 0 [vvar] 7fffa1dfd000-7fffa1dff000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]

Native stacktrace:

/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so(+0xd5238) [0x7f756e922238]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890) [0x7f75716cf890]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7) [0x7f757130ae97]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141) [0x7f757130c801]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0xd1e096]
/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so(+0x14e8b2) [0x7f756e99b8b2]
/home/docker/catkin_ws/devel/.private/flightgoggles/lib/flightgoggles/FlightGoggles_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so(+0x5be9c) [0x7f756e8a8e9c]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890) [0x7f75716cf890]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0x950870]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0x97bd08]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0x97c00e]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0x90266f]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0xcd5842]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0xcd8e42]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0xc2dde5]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0xc40883]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0x44a54e]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7f75712edb97]
/home/docker/catkin_ws/devel/lib/flightgoggles/FlightGoggles.x86_64() [0x4572a9]

Debug info from gdb:

mono_gdb_render_native_backtraces not supported on this platform, unable to find gdb or lldb

================================================================= Got a SIGABRT while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application.

Aborted (core dumped)

Winter-Guerra commented 5 years ago

Could you please send the player.log? Does vulkan-smoketest pass?

BhavyanshM commented 5 years ago

Could you please send the player.log? Does vulkan-smoketest pass?

Sure. Here is the player.log:

docker@58337418fc82:/$ cat /home/docker/.config/unity3d/MIT-FAST-Lab/FlightGoggles/Player.log
Desktop is 0 x 0 @ 0 Hz
[Vulkan init] extensions: count=16
[Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
[Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0
[Vulkan init] extensions: name=VK_KHR_display, enabled=1
[Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0
[Vulkan init] extensions: name=VK_KHR_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
[Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0
[Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1
[Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0
Vulkan detection: 2
Initialize engine version: 2018.3.0f2 (6e9a27477296)
GfxDevice: creating device client; threaded=1
[Vulkan init] extensions: count=16
[Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
[Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0
[Vulkan init] extensions: name=VK_KHR_display, enabled=1
[Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0
[Vulkan init] extensions: name=VK_KHR_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
[Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0
[Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1
[Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0
[Vulkan init] extensions: count=46
[Vulkan init] extensions: name=VK_KHR_swapchain, enabled=1
[Vulkan init] extensions: name=VK_KHR_16bit_storage, enabled=0
[Vulkan init] extensions: name=VK_KHR_bind_memory2, enabled=0
[Vulkan init] extensions: name=VK_KHR_dedicated_allocation, enabled=1
[Vulkan init] extensions: name=VK_KHR_descriptor_update_template, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_memory_requirements2, enabled=1
[Vulkan init] extensions: name=VK_KHR_image_format_list, enabled=1
[Vulkan init] extensions: name=VK_KHR_maintenance1, enabled=1
[Vulkan init] extensions: name=VK_KHR_maintenance2, enabled=0
[Vulkan init] extensions: name=VK_KHR_push_descriptor, enabled=0
[Vulkan init] extensions: name=VK_KHR_relaxed_block_layout, enabled=0
[Vulkan init] extensions: name=VK_KHR_sampler_mirror_clamp_to_edge, enabled=1
[Vulkan init] extensions: name=VK_KHR_sampler_ycbcr_conversion, enabled=0
[Vulkan init] extensions: name=VK_KHR_shader_draw_parameters, enabled=0
[Vulkan init] extensions: name=VK_KHR_storage_buffer_storage_class, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_fence, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_fence_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_variable_pointers, enabled=0
[Vulkan init] extensions: name=VK_KHX_device_group, enabled=0
[Vulkan init] extensions: name=VK_KHX_multiview, enabled=0
[Vulkan init] extensions: name=VK_EXT_blend_operation_advanced, enabled=0
[Vulkan init] extensions: name=VK_EXT_depth_range_unrestricted, enabled=0
[Vulkan init] extensions: name=VK_EXT_discard_rectangles, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_control, enabled=0
[Vulkan init] extensions: name=VK_EXT_post_depth_coverage, enabled=0
[Vulkan init] extensions: name=VK_EXT_sample_locations, enabled=0
[Vulkan init] extensions: name=VK_EXT_sampler_filter_minmax, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_subgroup_ballot, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_subgroup_vote, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_viewport_index_layer, enabled=0
[Vulkan init] extensions: name=VK_NV_dedicated_allocation, enabled=0
[Vulkan init] extensions: name=VK_NV_fill_rectangle, enabled=0
[Vulkan init] extensions: name=VK_NV_fragment_coverage_to_color, enabled=0
[Vulkan init] extensions: name=VK_NV_framebuffer_mixed_samples, enabled=0
[Vulkan init] extensions: name=VK_NV_glsl_shader, enabled=0
[Vulkan init] extensions: name=VK_NV_clip_space_w_scaling, enabled=0
[Vulkan init] extensions: name=VK_NV_sample_mask_override_coverage, enabled=0
[Vulkan init] extensions: name=VK_NV_viewport_array2, enabled=0
[Vulkan init] extensions: name=VK_NV_viewport_swizzle, enabled=0
[Vulkan init] extensions: name=VK_NV_geometry_shader_passthrough, enabled=0
[Vulkan init] extensions: name=VK_NVX_device_generated_commands, enabled=0
[Vulkan init] extensions: name=VK_NVX_multiview_per_view_attributes, enabled=0
Vulkan API version 1.0.65
Vulkan vendor=[NVIDIA] id=[10de]
Vulkan renderer=[GeForce GTX 1070 Ti] id=[1b82]
Vulkan device type 2
Vulkan driverversion=[0x6195c000] uint=[1637203968]
Vulkan PSO: cache data not found [path=/tmp/MIT-FAST-Lab/FlightGoggles/vulkan_pso_cache.bin]
Receiving unhandled NULL exception
#0  0x0000000097bd08 in std::pow(float, float)
#1  0x0000000097c00e in std::pow(float, float)
#2  0x0000000090266f in std::pow(float, float)
#3  0x00000000cd5842 in std::pow(float, float)
#4  0x00000000cd8e42 in std::pow(float, float)
#5  0x00000000c2dde5 in std::pow(float, float)
#6  0x00000000c40883 in std::pow(float, float)
#7  0x0000000044a54e in (Unknown)
#8  0x007f75712edb97 in __libc_start_main
#9  0x000000004572a9 in (Unknown)

The vulkan-smoketest output:

docker@58337418fc82:/$ vulkan-smoketest
No protocol specified
terminate called after throwing an instance of 'std::runtime_error'
  what():  failed to connect to the display server
Aborted (core dumped)
Winter-Guerra commented 5 years ago

OK, there seem to be two different errors here. Vulkan-smoketest is not picking up your display. Perhaps you need to do some X tunneling/forwarding? You also should run the single-threaded binary for FlightGoggles.

BhavyanshM commented 5 years ago

OK, there seem to be two different errors here. Vulkan-smoketest is not picking up your display. Perhaps you need to do some X tunneling/forwarding? You also should run the single-threaded binary for FlightGoggles.

Ahh, didn't mean to close the issue. Just hit the "Close and comment" button unintentionally.

The vulkan-smoketest seems to launch a window and then exit with a segmentation fault error. I should also mention that the first time I launched flightgoggles after setting up nvidia-smi, the display monitor basically just crashed and I had to restart the system. I do have X tunneling configured on the docker container according to this page: http://wiki.ros.org/docker/Tutorials/Hardware%20Acceleration. Working on launching the single threaded version.

Winter-Guerra commented 5 years ago

No problem! In that case, I would advise getting glxgears to run first, then vulkan-smoketest, then Flightgoggles single-threaded version.

BhavyanshM commented 5 years ago

glxgears

glxgears works now after installing mesa-utils but vulkan-smoketest still fails with a segmentation fault.

glxgears

Winter-Guerra commented 5 years ago

OK, what about the output of vulkaninfo? Could you please post that here?

Do you also have vulkan installed in the host OS?

BhavyanshM commented 5 years ago

OK, what about the output of vulkaninfo? Could you please post that here?

Do you also have vulkan installed in the host OS?

Yes, Vulkan is installed on the host OS as well. However, here is the output from inside the container for vulkaninfo

Segmentation fault (core dumped)
docker@58337418fc82:/$ rviz
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-docker'
[ INFO] [1550206886.510225422]: rviz version 1.13.1
[ INFO] [1550206886.510273992]: compiled against Qt version 5.9.5
[ INFO] [1550206886.510285611]: compiled against OGRE version 1.9.0 (Ghadamon)
docker@58337418fc82:/$ vulkan-smoketest --verbose
Segmentation fault (core dumped)
docker@58337418fc82:/$ vulkan-smoketest --help
Segmentation fault (core dumped)
docker@58337418fc82:/$ vulkaninfo
===========
VULKAN INFO
===========

Vulkan Instance Version: 1.1.70

Instance Extensions:
====================
Instance Extensions count = 16
    VK_EXT_acquire_xlib_display         : extension revision  1
    VK_EXT_debug_report                 : extension revision  9
    VK_EXT_direct_mode_display          : extension revision  1
    VK_EXT_display_surface_counter      : extension revision  1
    VK_KHR_display                      : extension revision 21
    VK_KHR_get_physical_device_properties2: extension revision  1
    VK_KHR_get_surface_capabilities2    : extension revision  1
    VK_KHR_surface                      : extension revision 25
    VK_KHR_xcb_surface                  : extension revision  6
    VK_KHR_xlib_surface                 : extension revision  6
    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_device_group_creation        : extension revision  1
    VK_KHR_wayland_surface              : extension revision  6
    VK_EXT_debug_utils                  : extension revision  1
Layers: count = 0
=======
Presentable Surfaces:
=====================
GPU id       : 0 (GeForce GTX 1070 Ti)
Surface type : VK_KHR_xcb_surface
Formats:        count = 0
Present Modes:      count = 0

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

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

    supportedSurfaceCounters:
        None
None found

Device Properties and Extensions :
==================================
GPU0
VkPhysicalDeviceProperties:
===========================
    apiVersion     = 0x400041  (1.0.65)
    driverVersion  = 1637203968 (0x6195c000)
    vendorID       = 0x10de
    deviceID       = 0x1b82
    deviceType     = DISCRETE_GPU
    deviceName     = GeForce GTX 1070 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

Device Extensions   count = 46
    VK_KHR_swapchain                    : extension revision 70
    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_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_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_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_external_fence               : extension revision  1
    VK_KHR_external_fence_fd            : extension revision  1
    VK_KHR_variable_pointers            : extension revision  1
    VK_KHX_device_group                 : extension revision  2
    VK_KHX_multiview                    : extension revision  1
    VK_EXT_blend_operation_advanced     : extension revision  2
    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_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_glsl_shader                   : extension revision  1
    VK_NV_clip_space_w_scaling          : 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
    VK_NV_geometry_shader_passthrough   : extension revision  1
    VK_NVX_device_generated_commands    : extension revision  3
    VK_NVX_multiview_per_view_attributes: 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          = 8589934592 (0x200000000) (8.00 GiB)
        flags:
            VK_MEMORY_HEAP_DEVICE_LOCAL_BIT
    memoryHeaps[1] :
        size          = 12622835712 (0x2f0613000) (11.76 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:
=========================
    alphaToOne                              = 1
    depthBiasClamp                          = 1
    depthBounds                             = 1
    depthClamp                              = 1
    drawIndirectFirstInstance               = 1
    dualSrcBlend                            = 1
    fillModeNonSolid                        = 1
    fragmentStoresAndAtomics                = 1
    fullDrawIndexUint32                     = 1
    geometryShader                          = 1
    imageCubeArray                          = 1
    independentBlend                        = 1
    inheritedQueries                        = 1
    largePoints                             = 1
    logicOp                                 = 1
    multiDrawIndirect                       = 1
    multiViewport                           = 1
    occlusionQueryPrecise                   = 1
    pipelineStatisticsQuery                 = 1
    robustBufferAccess                      = 1
    samplerAnisotropy                       = 1
    sampleRateShading                       = 1
    shaderClipDistance                      = 1
    shaderCullDistance                      = 1
    shaderFloat64                           = 1
    shaderImageGatherExtended               = 1
    shaderInt16                             = 0
    shaderInt64                             = 1
    shaderSampledImageArrayDynamicIndexing  = 1
    shaderStorageBufferArrayDynamicIndexing = 1
    shaderStorageImageArrayDynamicIndexing  = 1
    shaderStorageImageExtendedFormats       = 1
    shaderStorageImageMultisample           = 1
    shaderStorageImageReadWithoutFormat     = 1
    shaderStorageImageWriteWithoutFormat    = 1
    shaderTessellationAndGeometryPointSize  = 1
    shaderUniformBufferArrayDynamicIndexing = 1
    sparseBinding                           = 1
    sparseResidency2Samples                 = 1
    sparseResidency4Samples                 = 1
    sparseResidency8Samples                 = 1
    sparseResidency16Samples                = 1
    sparseResidencyAliased                  = 1
    sparseResidencyBuffer                   = 1
    sparseResidencyImage2D                  = 1
    sparseResidencyImage3D                  = 1
    shaderResourceMinLod                    = 1
    shaderResourceResidency                 = 1
    tessellationShader                      = 1
    textureCompressionASTC_LDR              = 0
    textureCompressionBC                    = 1
    textureCompressionETC2                  = 0
    variableMultisampleRate                 = 1
    vertexPipelineStoresAndAtomics          = 1
    wideLines                               = 1

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

FORMAT_R4G4_UNORM_PACK8:
    linearTiling   FormatFeatureFlags:
        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

Also, here are the files in case you need to look at them. https://github.com/BhavyanshM/ROSEnv/tree/master/Melodic

BhavyanshM commented 5 years ago

On simply running: rosrun flightgoggles FlightGoggles.x86_64

Container terminal outputs the following and crashes the monitor display.

flightgoggles_output_container

Here is the output on Player.log from this attempt to launch flightgoggles:


[Vulkan init] extensions: count=16
[Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
[Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0
[Vulkan init] extensions: name=VK_KHR_display, enabled=1
[Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0
[Vulkan init] extensions: name=VK_KHR_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
[Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0
[Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1
[Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0
Vulkan detection: 2
Initialize engine version: 2018.3.0f2 (6e9a27477296)
GfxDevice: creating device client; threaded=1
[Vulkan init] extensions: count=16
[Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
[Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0
[Vulkan init] extensions: name=VK_KHR_display, enabled=1
[Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0
[Vulkan init] extensions: name=VK_KHR_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
[Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0
[Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1
[Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0
[Vulkan init] extensions: count=46
[Vulkan init] extensions: name=VK_KHR_swapchain, enabled=1
[Vulkan init] extensions: name=VK_KHR_16bit_storage, enabled=0
[Vulkan init] extensions: name=VK_KHR_bind_memory2, enabled=0
[Vulkan init] extensions: name=VK_KHR_dedicated_allocation, enabled=1
[Vulkan init] extensions: name=VK_KHR_descriptor_update_template, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_memory_requirements2, enabled=1
[Vulkan init] extensions: name=VK_KHR_image_format_list, enabled=1
[Vulkan init] extensions: name=VK_KHR_maintenance1, enabled=1
[Vulkan init] extensions: name=VK_KHR_maintenance2, enabled=0
[Vulkan init] extensions: name=VK_KHR_push_descriptor, enabled=0
[Vulkan init] extensions: name=VK_KHR_relaxed_block_layout, enabled=0
[Vulkan init] extensions: name=VK_KHR_sampler_mirror_clamp_to_edge, enabled=1
[Vulkan init] extensions: name=VK_KHR_sampler_ycbcr_conversion, enabled=0
[Vulkan init] extensions: name=VK_KHR_shader_draw_parameters, enabled=0
[Vulkan init] extensions: name=VK_KHR_storage_buffer_storage_class, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_fence, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_fence_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_variable_pointers, enabled=0
[Vulkan init] extensions: name=VK_KHX_device_group, enabled=0
[Vulkan init] extensions: name=VK_KHX_multiview, enabled=0
[Vulkan init] extensions: name=VK_EXT_blend_operation_advanced, enabled=0
[Vulkan init] extensions: name=VK_EXT_depth_range_unrestricted, enabled=0
[Vulkan init] extensions: name=VK_EXT_discard_rectangles, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_control, enabled=0
[Vulkan init] extensions: name=VK_EXT_post_depth_coverage, enabled=0
[Vulkan init] extensions: name=VK_EXT_sample_locations, enabled=0
[Vulkan init] extensions: name=VK_EXT_sampler_filter_minmax, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_subgroup_ballot, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_subgroup_vote, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_viewport_index_layer, enabled=0
[Vulkan init] extensions: name=VK_NV_dedicated_allocation, enabled=0
[Vulkan init] extensions: name=VK_NV_fill_rectangle, enabled=0
[Vulkan init] extensions: name=VK_NV_fragment_coverage_to_color, enabled=0
[Vulkan init] extensions: name=VK_NV_framebuffer_mixed_samples, enabled=0
[Vulkan init] extensions: name=VK_NV_glsl_shader, enabled=0
[Vulkan init] extensions: name=VK_NV_clip_space_w_scaling, enabled=0
[Vulkan init] extensions: name=VK_NV_sample_mask_override_coverage, enabled=0
[Vulkan init] extensions: name=VK_NV_viewport_array2, enabled=0
[Vulkan init] extensions: name=VK_NV_viewport_swizzle, enabled=0
[Vulkan init] extensions: name=VK_NV_geometry_shader_passthrough, enabled=0
[Vulkan init] extensions: name=VK_NVX_device_generated_commands, enabled=0
[Vulkan init] extensions: name=VK_NVX_multiview_per_view_attributes, enabled=0
Vulkan API version 1.0.65
Vulkan vendor=[NVIDIA] id=[10de]
Vulkan renderer=[GeForce GTX 1070 Ti] id=[1b82]
Vulkan device type 2
Vulkan driverversion=[0x6195c000] uint=[1637203968]
Vulkan PSO: cache data not found [path=/tmp/MIT-FAST-Lab/FlightGoggles/vulkan_pso_cache.bin]
FMOD failed to initialize the output device.: "Error initializing output device. " (60)

(Filename:  Line: 1398)

Forced to initialize FMOD to to the device driver's system output rate 48000, this may impact performance and/or give inconsistent experiences compared to selected sample rate 48000

(Filename:  Line: 1343)

FMOD failed to initialize the output device.: "Error initializing output device. " (60)

(Filename:  Line: 1398)

FMOD failed to initialize any audio devices, running on emulated software output with no sound. Please check your audio drivers and/or hardware for malfunction.
Begin MonoManager ReloadAssembly
- Completed reload, in  0.077 seconds
WARNING: Shader Unsupported: 'HDRenderPipeline/Lit' - Pass 'META' has no vertex shader
Vulkan: Internal error compiling expression: "u_xlat107 = (_EnableLightLayers != uint(0u)) ? unity_RenderingLayer.x : 3.57331108e-43;
u_xlat107!=0"

(Filename:  Line: 65)

Vulkan: Internal error compiling expression: "u_xlat107 = (_EnableLightLayers != uint(0u)) ? unity_RenderingLayer.x : 3.57331108e-43;
u_xlat107!=0"

(Filename:  Line: 65)

WARNING: Shader Unsupported: 'Hidden/HDRenderPipeline/TerrainLit_Basemap' - Pass 'META' has no vertex shader
WARNING: Shader Unsupported: 'HDRenderPipeline/TerrainLit' - Pass 'META' has no vertex shader
requesting resize 1024 x 768
resizing window to 1024 x 768
Desktop is 3840 x 2160 @ 60 Hz
InitializeOrResetSwapChain 1024x768 samples=1```
varunmurali1 commented 5 years ago

It looks like Unity3d is attempting to access the audio driver, one option is getting pulseaudio to work in docker. We will also try to build you a binary with sound disabled to see if that helps mitigate this issue.

BhavyanshM commented 5 years ago

It looks like Unity3d is attempting to access the audio driver, one option is getting pulseaudio to work in docker. We will also try to build you a binary with sound disabled to see if that helps mitigate this issue.

Looks like it is non-trivial to get pulseaudio to work in docker. I would really appreciate a binary with sound disabled.

varunmurali1 commented 5 years ago

Sure, we will try to generate a binary with sound disabled. In the meantime would it be possible to share the Dockerfile so I can also take a quick look at it?

BhavyanshM commented 5 years ago

Sure, we will try to generate a binary with sound disabled. In the meantime would it be possible to share the Dockerfile so I can also take a quick look at it?

Oh sure, I had actually posted it at the end of an earlier comment but here are all the files. https://github.com/BhavyanshM/ROSEnv/tree/master/Melodic

Thank you so much by the way!

Winter-Guerra commented 5 years ago

We've just updated the binary. This build should not try to connect to the audio card. Please let us know if it works! @BhavyanshM

BhavyanshM commented 5 years ago

We've just updated the binary. This build should not try to connect to the audio card. Please let us know if it works! @BhavyanshM

Thank you @Winter-Guerra. So I tried to catkin clean flightgoggles and then catkin build, however this time, the download only took a minute, which was somewhat unusual considering the earlier 10 min time. Assuming that the new binary got successfully downloaded, I tried to launch rosrun flightgoggles FlightGoggles.x86_64 again. However, I was met with the same problem of my monitoring crashing with the following terminal output.

flightgoggles_output_container_2

Also, the vulkan-smoketest outputs the following:


No protocol specified
terminate called after throwing an instance of 'std::runtime_error'
  what():  failed to connect to the display server
Aborted (core dumped)```
Winter-Guerra commented 5 years ago

Did you pull the new changes to the repo before rebuilding? 1 min download sounds like catkin was not updated and cached your previous version.

cd ~/catkin_ws/src &&
wstool update &&
catkin clean &&
catkin build
BhavyanshM commented 5 years ago

Did you pull the new changes to the repo before rebuilding? 1 min download sounds like catkin was not updated and cached your previous version. cd ~/catkin_ws/src && wstool update && catkin clean && catkin build

So I went ahead and built the entire container all over again with just the Dockerfile and setup ROS packages for FG to remove any ambiguity on the version of FG binary being used. It took about 5 mins to download. On launching using rosrun flightgoggles FlightGoggles.x86_64 after the build, the exact same sequence of monitor crash happened and the following player.log was generated. Here is also a short video of what happens with the monitor. (https://drive.google.com/open?id=1A1zxXpNzoj3b3HxoyvNmss9DzAvNnqhh) The DISPLAY variable also gets reset to ":0" and I set it back to ":1" every time because that is what the host uses.


Desktop is 3840 x 2160 @ 60 Hz
[Vulkan init] extensions: count=16
[Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
[Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0
[Vulkan init] extensions: name=VK_KHR_display, enabled=1
[Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0
[Vulkan init] extensions: name=VK_KHR_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
[Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0
[Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1
[Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0
Vulkan detection: 2
Initialize engine version: 2018.3.0f2 (6e9a27477296)
GfxDevice: creating device client; threaded=1
[Vulkan init] extensions: count=16
[Vulkan init] extensions: name=VK_EXT_acquire_xlib_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
[Vulkan init] extensions: name=VK_EXT_direct_mode_display, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_surface_counter, enabled=0
[Vulkan init] extensions: name=VK_KHR_display, enabled=1
[Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_surface_capabilities2, enabled=0
[Vulkan init] extensions: name=VK_KHR_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
[Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
[Vulkan init] extensions: name=VK_KHR_external_fence_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_capabilities, enabled=0
[Vulkan init] extensions: name=VK_KHR_device_group_creation, enabled=0
[Vulkan init] extensions: name=VK_KHR_wayland_surface, enabled=1
[Vulkan init] extensions: name=VK_EXT_debug_utils, enabled=0
[Vulkan init] extensions: count=46
[Vulkan init] extensions: name=VK_KHR_swapchain, enabled=1
[Vulkan init] extensions: name=VK_KHR_16bit_storage, enabled=0
[Vulkan init] extensions: name=VK_KHR_bind_memory2, enabled=0
[Vulkan init] extensions: name=VK_KHR_dedicated_allocation, enabled=1
[Vulkan init] extensions: name=VK_KHR_descriptor_update_template, enabled=0
[Vulkan init] extensions: name=VK_KHR_get_memory_requirements2, enabled=1
[Vulkan init] extensions: name=VK_KHR_image_format_list, enabled=1
[Vulkan init] extensions: name=VK_KHR_maintenance1, enabled=1
[Vulkan init] extensions: name=VK_KHR_maintenance2, enabled=0
[Vulkan init] extensions: name=VK_KHR_push_descriptor, enabled=0
[Vulkan init] extensions: name=VK_KHR_relaxed_block_layout, enabled=0
[Vulkan init] extensions: name=VK_KHR_sampler_mirror_clamp_to_edge, enabled=1
[Vulkan init] extensions: name=VK_KHR_sampler_ycbcr_conversion, enabled=0
[Vulkan init] extensions: name=VK_KHR_shader_draw_parameters, enabled=0
[Vulkan init] extensions: name=VK_KHR_storage_buffer_storage_class, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_memory_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_semaphore_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_fence, enabled=0
[Vulkan init] extensions: name=VK_KHR_external_fence_fd, enabled=0
[Vulkan init] extensions: name=VK_KHR_variable_pointers, enabled=0
[Vulkan init] extensions: name=VK_KHX_device_group, enabled=0
[Vulkan init] extensions: name=VK_KHX_multiview, enabled=0
[Vulkan init] extensions: name=VK_EXT_blend_operation_advanced, enabled=0
[Vulkan init] extensions: name=VK_EXT_depth_range_unrestricted, enabled=0
[Vulkan init] extensions: name=VK_EXT_discard_rectangles, enabled=0
[Vulkan init] extensions: name=VK_EXT_display_control, enabled=0
[Vulkan init] extensions: name=VK_EXT_post_depth_coverage, enabled=0
[Vulkan init] extensions: name=VK_EXT_sample_locations, enabled=0
[Vulkan init] extensions: name=VK_EXT_sampler_filter_minmax, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_subgroup_ballot, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_subgroup_vote, enabled=0
[Vulkan init] extensions: name=VK_EXT_shader_viewport_index_layer, enabled=0
[Vulkan init] extensions: name=VK_NV_dedicated_allocation, enabled=0
[Vulkan init] extensions: name=VK_NV_fill_rectangle, enabled=0
[Vulkan init] extensions: name=VK_NV_fragment_coverage_to_color, enabled=0
[Vulkan init] extensions: name=VK_NV_framebuffer_mixed_samples, enabled=0
[Vulkan init] extensions: name=VK_NV_glsl_shader, enabled=0
[Vulkan init] extensions: name=VK_NV_clip_space_w_scaling, enabled=0
[Vulkan init] extensions: name=VK_NV_sample_mask_override_coverage, enabled=0
[Vulkan init] extensions: name=VK_NV_viewport_array2, enabled=0
[Vulkan init] extensions: name=VK_NV_viewport_swizzle, enabled=0
[Vulkan init] extensions: name=VK_NV_geometry_shader_passthrough, enabled=0
[Vulkan init] extensions: name=VK_NVX_device_generated_commands, enabled=0
[Vulkan init] extensions: name=VK_NVX_multiview_per_view_attributes, enabled=0
Vulkan API version 1.0.65
Vulkan vendor=[NVIDIA] id=[10de]
Vulkan renderer=[GeForce GTX 1070 Ti] id=[1b82]
Vulkan device type 2
Vulkan driverversion=[0x6195c000] uint=[1637203968]
Vulkan PSO: cache data not found [path=/tmp/MIT-FAST-Lab/FlightGoggles/vulkan_pso_cache.bin]
Begin MonoManager ReloadAssembly
- Completed reload, in  0.048 seconds
WARNING: Shader Unsupported: 'HDRenderPipeline/Lit' - Pass 'META' has no vertex shader
WARNING: Shader Unsupported: 'Hidden/HDRenderPipeline/TerrainLit_Basemap' - Pass 'META' has no vertex shader
WARNING: Shader Unsupported: 'HDRenderPipeline/TerrainLit' - Pass 'META' has no vertex shader
requesting resize 1024 x 768
resizing window to 1024 x 768
Desktop is 3840 x 2160 @ 60 Hz
InitializeOrResetSwapChain 1024x768 samples=1```

The command ```vulkan-smoketest``` still fails with a segmentation fault though. 
Winter-Guerra commented 5 years ago

Hi @BhavyanshM,

OK, so it looks like the new v2.0.1 binary fixed the pulseaudio problem. However, Vulkan still crashes inside of the nvidia-docker image.

Unfortunately, it looks like nvidia-docker does not support the Vulkan renderer yet. Here's the corresponding issue link. Until they add support in nvidia-docker for the Vulkan render engine, I don't think that there is any way to render the new v2.0.x environments from within Docker.

FlightGoggles v1.8.0 uses the OpenCL/OpenGL rendering backend, but does not support the new environments used in the AlphaPilot challenge.

I'm terribly sorry for the inconvenience @BhavyanshM. At the moment, it looks like it is not possible to run FlightGoggles v2.0.x on nvidia-docker due to lack of support for the Vulkan renderer in nvidia-docker. Older versions of FlightGoggles should run on nvidia-docker, but do not support the new environment used in the AlphaPilot challenge.

If you'd really like to run the FlightGoggles simulation inside of Docker, you could run the FlightGoggles renderer binary outside of Docker in Linux, Windows, or MacOS and point the client IP at the ROS docker image. Currently, we only have the Linux binary published for v2.0.1 and Windows and Linux published for v2.0.0 but will add Windows and MacOS binaries of v2.0.1 by sometime Monday.

Best, -Winter

Winter-Guerra commented 5 years ago

Closing due to lack of nvidia-docker support for Vulkan.

BhavyanshM commented 5 years ago

Hi @BhavyanshM,

OK, so it looks like the new v2.0.1 binary fixed the pulseaudio problem. However, Vulkan still crashes inside of the nvidia-docker image.

Unfortunately, it looks like nvidia-docker does not support the Vulkan renderer yet. Here's the corresponding issue link. Until they add support in nvidia-docker for the Vulkan render engine, I don't think that there is any way to render the new v2.0.x environments from within Docker.

FlightGoggles v1.8.0 uses the OpenCL/OpenGL rendering backend, but does not support the new environments used in the AlphaPilot challenge.

I'm terribly sorry for the inconvenience @BhavyanshM. At the moment, it looks like it is not possible to run FlightGoggles v2.0.x on nvidia-docker due to lack of support for the Vulkan renderer in nvidia-docker. Older versions of FlightGoggles should run on nvidia-docker, but do not support the new environment used in the AlphaPilot challenge.

If you'd really like to run the FlightGoggles simulation inside of Docker, you could run the FlightGoggles renderer binary outside of Docker in Linux, Windows, or MacOS and point the client IP at the ROS docker image. Currently, we only have the Linux binary published for v2.0.1 and Windows and Linux published for v2.0.0 but will add Windows and MacOS binaries of v2.0.1 by sometime Monday.

Best, -Winter

No worries @Winter-Guerra It is unfortunate that nvidia-docker does not yet support vulkan. However, the alternative of running the FG binary outside the container is quite a practical solution. The containerization of the ROS packages required still takes away quite a lot of work from the end-users. Thank you for all the support anyway!

edowson commented 5 years ago

See #131 for a solution. You'll have to script these steps into a Dockerfile. Tested with an Ubuntu-16.04 docker image using nvidia-docker2 and TITAN-V GPU connected to an Ubuntu-18.04 host.

  1. Creating file /usr/share/vulkan/icd.d/nvidia_icd.json with the following contents:
{
    "file_format_version" : "1.0.0",
    "ICD": {
        "library_path": "libGLX_nvidia.so.0",
        "api_version" : "1.1.95"
    }
}
  1. Download the nvidia drivers, extract the *.run package and manually extract the libnvidia-glvkspirv.so.418.56 file to /usr/lib/x86_64-linux-gnu/, inside the docker image.

This will allow vulcaninfo and vulkan-smoketest to run correctly.

Running rosrun flightgoggles FlightGoggles.x86_64 pops up the render window.

wget http://us.download.nvidia.com/XFree86/Linux-x86_64/418.56/NVIDIA-Linux-x86_64-418.56.run
NVIDIA-Linux-x86_64-418.56.run --extract-only
sudo cp NVIDIA-Linux-x86_64-418.56/libnvidia-glvkspirv.so.418.56 /usr/lib/x86_64-linux-gnu/