887{
889 case ImageFormat::R8:
890 return vk::Format::eR8Unorm;
891 case ImageFormat::RG8:
892 return vk::Format::eR8G8Unorm;
893 case ImageFormat::RGB8:
894 return vk::Format::eR8G8B8Unorm;
895 case ImageFormat::RGBA8:
896 return vk::Format::eR8G8B8A8Unorm;
897 case ImageFormat::RGBA8_SRGB:
898 return vk::Format::eR8G8B8A8Srgb;
899 case ImageFormat::BGRA8:
900 return vk::Format::eB8G8R8A8Unorm;
901 case ImageFormat::BGRA8_SRGB:
902 return vk::Format::eB8G8R8A8Srgb;
903 case ImageFormat::R16:
904 return vk::Format::eR16Unorm;
905 case ImageFormat::RG16:
906 return vk::Format::eR16G16Unorm;
907 case ImageFormat::RGBA16:
908 return vk::Format::eR16G16B16A16Unorm;
909 case ImageFormat::R16F:
910 return vk::Format::eR16Sfloat;
911 case ImageFormat::RG16F:
912 return vk::Format::eR16G16Sfloat;
913 case ImageFormat::RGBA16F:
914 return vk::Format::eR16G16B16A16Sfloat;
915 case ImageFormat::R32F:
916 return vk::Format::eR32Sfloat;
917 case ImageFormat::RG32F:
918 return vk::Format::eR32G32Sfloat;
919 case ImageFormat::RGBA32F:
920 return vk::Format::eR32G32B32A32Sfloat;
921 case ImageFormat::DEPTH16:
922 return vk::Format::eD16Unorm;
923 case ImageFormat::DEPTH24:
924 return vk::Format::eX8D24UnormPack32;
925 case ImageFormat::DEPTH32F:
926 return vk::Format::eD32Sfloat;
927 case ImageFormat::DEPTH24_STENCIL8:
928 return vk::Format::eD24UnormS8Uint;
929 default:
930 return vk::Format::eR8G8B8A8Unorm;
931 }
932}