Branch
Hash :
c1e806de
Author :
Date :
2025-05-22T15:59:01
WebGPU: Allow providing an external WGPUDevice. Update EGL_ANGLE_platform_angle_webgpu with a new parameter which allows initializing DisplayWgpu with a pre-existing WGPUDevice. The adapter and instance are queried from this device. Bug: angleproject:42266898, angleproject:414827222 Change-Id: I3159ebe19750e75c5cf9aa395332f48385fdb4d9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6578196 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
Name
ANGLE_platform_angle_webgpu
Name Strings
EGL_ANGLE_platform_angle_webgpu
Contributors
Liza Burakova, Google
Matt Denton, Google
Geoff Lang, Google
Shahbaz Youssefi, Google
Contacts
Liza Burakova, Google (liza 'at' chromium 'dot' org)
Status
Draft
Version
Version 1, January 22, 2024
Number
EGL Extension XXX
Extension Type
EGL client extension
Dependencies
Requires ANGLE_platform_angle.
Overview
This extension enables selection of WebGPU display types.
New Types
None
New Procedures and Functions
None
New Tokens
Accepted as values for the EGL_PLATFORM_ANGLE_TYPE_ANGLE attribute:
EGL_PLATFORM_ANGLE_TYPE_WEBGPU_ANGLE 0x34DF
Accepted as an attribute name in the <attrib_list> argument of
eglGetPlatformDisplayEXT:
EGL_PLATFORM_ANGLE_DAWN_PROC_TABLE_ANGLE 0x3480
EGL_PLATFORM_ANGLE_WEBGPU_DEVICE_ANGLE 0x34F6
Additions to the EGL Specification
None.
New Behavior
To request a display that translates to WebGPU, the value of
EGL_PLATFORM_ANGLE_TYPE_ANGLE should be
EGL_PLATFORM_ANGLE_TYPE_WEBGPU_ANGLE.
To configure the WebGPU function pointers used, use the attribute
EGL_PLATFORM_ANGLE_DAWN_PROC_TABLE_ANGLE. The value of
EGL_PLATFORM_ANGLE_DAWN_PROC_TABLE_ANGLE should be a pointer to
a DawnProcTable. If a proc table is not provided or the provided
proc table is NULL, an implementation specific one will be used.
To use an existing WebGPU adapter and device, use the attribute
EGL_PLATFORM_ANGLE_WEBGPU_DEVICE_ANGLE.
EGL_PLATFORM_ANGLE_WEBGPU_DEVICE_ANGLE should be a WGPUDevice handle.
If a device is not provided or is NULL, an implementation specific
one will be used.
Issues
None
Revision History
Version 1, 2024-01-22 (Liza Burakova)
- Initial draft
Version 2, 2025-04-28 (Geoff Lang)
- Add EGL_PLATFORM_ANGLE_DAWN_PROC_TABLE_ANGLE
Version 3, 2025-05-22 (Geoff Lang)
- Add EGL_PLATFORM_ANGLE_WEBGPU_DEVICE_ANGLE