mirror of
https://github.com/godotengine/godot-angle-static.git
synced 2026-01-08 14:09:42 +03:00
Currently, IOSurface objects using {GL_RGB, GL_UNSIGNED_BYTE}
are natively represented with GL_BGRX8_ANGLEX, which we use
instead of other RGBA formats in order to avoid issues when
a canvas uses 'no alpha':
https://source.chromium.org/chromium/chromium/src/+/main:third_party/swiftshader/third_party/angle/angle/src/libANGLE/renderer/vulkan/mac/IOSurfaceSurfaceVkMac.mm;l=44
This unfortunately causes some other issues because of the
implicit RGB <-> BGR conversion like type mismatches in
subresource updates. This CL adds a new type, RGBX8, which
will be usable by IOSurface objects and which behaves exactly
like the BGRX8 format with the B and R channels flipped.
Bug: chromium:1209250
Change-Id: I345eadc8addd05a0964cae30d89c20005479e37b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3188910
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
12 lines
466 B
JSON
12 lines
466 B
JSON
{
|
|
"src/libANGLE/renderer/angle_format.py":
|
|
"74d6c9842128293118ccf128aeae896a",
|
|
"src/libANGLE/renderer/angle_format_map.json":
|
|
"947527a1b07dd14da6179eb98d7883c0",
|
|
"src/libANGLE/renderer/vulkan/gen_vk_format_table.py":
|
|
"d8e23d6ca2380a3471d85caffd765830",
|
|
"src/libANGLE/renderer/vulkan/vk_format_map.json":
|
|
"f214a4daa2a34b33f21565f72ef3213f",
|
|
"src/libANGLE/renderer/vulkan/vk_format_table_autogen.cpp":
|
|
"4ed33fc260775cbb83e5fc8742113374"
|
|
} |