Name

    ANGLE_device_webgpu

Name Strings

    EGL_ANGLE_device_webgpu

Contributors

    Geoff Lang

Contact

    Geoff Lang, Google (geofflang 'at' google 'dot' com)

Status

    Draft

Version

    Version 1, May 15, 2025

Number

    EGL Extension #XXX

Extension Type

    EGL device extension

Dependencies

    This extension is written against the language of EGL 1.5 as
    modified by EGL_EXT_device_query.

    EGL_EXT_device_query is required.

Overview

    ANGLE has the ability to run GPU commands on a WebGPU device.
    This extension defines a mapping from an EGL device to a WebGPU
    device, after it's queried from an EGL display.

IP Status

    No known claims.

New Types

    None.

New Procedures and Functions

    None.

New Tokens

    Accepted as a queried <attribute> in eglQueryDeviceAttribEXT:

        EGL_WEBGPU_DEVICE_ANGLE              0x34F3
        EGL_WEBGPU_ADAPTER_ANGLE             0x34F4

Changes to section 3.2 (Devices)

    Replace the paragraph immediately following the prototype for
    eglQueryDeviceAttribEXT:

    <attribute> may be EGL_WEBGPU_DEVICE_ANGLE or EGL_WEBGPU_ADAPTER_ANGLE.
    On success, EGL_TRUE is returned, and a valid WGPUDevice or WGPUAdapter
    handle corresponding to the EGL device is returned in <value>. wgpuAddRef is
    called on the handle before returning and the client is responsible for
    releasing this reference. This handle is compatible with WebGPU API functions.
    If the EGL device is not currently associated with a WebGPU device and <attribute>
    is EGL_WEBGPU_DEVICE_ANGLE or EGL_WEBGPU_ADAPTER_ANGLE, EGL_BAD_ATTRIBUTE is
    returned, and <value> is left unchanged.

Issues

    None

Revision History

    Version 1, May 15, 2025 (Geoff Lang)
        - Initial Draft

