Hash :
71f6d54c
Author :
Date :
2023-03-02T10:24:14
Add vulkan format image fallback for R16G16B16 This change adds a vulkan format image mapping fallback from R16G16B16 to R16G16B16A16, R32G32B32_FLOAT and R32G32B32A32_FLOAT for both UNORM and SNORM variants. This is done because in Chrome we want to use R16/RG16 formats which are exposed to Skia over the EXT_texture_norm16. Currently, EXT_texture_norm16 requires RGB16_EXT which if not present is not supported even if R16_EXT and RG16_EXT are supported. This fallback helps us support R16/RG16 as well over RGBA16. It also updates validationES checks for GL_RGBA signed and unsigned normalized checking if type is GL_SHORT or GL_UNSIGNED_SHORT. It adds a method LoadToFloat that allows a type (GLushort or GLshort) to be loaded into float format types. This is then used as part of fallbacks for load_functions_data.json. Bug: None Change-Id: I5c6879cd2ed5dd6e3440877f4891f269d96d88a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4294694 Reviewed-by: Vasiliy Telezhnikov <vasilyt@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
{
"src/libANGLE/renderer/angle_format.py":
"601bfb757e052c50ac8f4cb4e0b58eb5",
"src/libANGLE/renderer/gl/DispatchTableGL_autogen.cpp":
"a2359f6e62a34b03ad6304811df39ce7",
"src/libANGLE/renderer/gl/DispatchTableGL_autogen.h":
"df251bcc28f69eb873b5f9773e814f32",
"src/libANGLE/renderer/gl/generate_gl_dispatch_table.py":
"2fb7f3906b4966b192c629228bc3e961",
"src/libANGLE/renderer/gl/gl_bindings_data.json":
"c3859551f6e137dbf4663a81b088cbf7",
"src/libANGLE/renderer/gl/null_functions.cpp":
"d5082eb846b2396b998d642b78a0019a",
"src/libANGLE/renderer/gl/null_functions.h":
"c2a35eb1408399f78b5d177bff70a9c6",
"third_party/OpenGL-Registry/src/xml/gl.xml":
"49f0afe5cac23951c74420e457b0cb23"
}