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_INSTANCE_ANGLE           0x34F7
        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 instance and device, use the attributes
    EGL_PLATFORM_ANGLE_WEBGPU_INSTANCE_ANGLE and
    EGL_PLATFORM_ANGLE_WEBGPU_DEVICE_ANGLE.
    EGL_PLATFORM_ANGLE_WEBGPU_INSTANCE_ANGLE should be a WGPUInstance handle.
    If an instance is not provided or is NULL, an implementation specific
    one will be used.
    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
    Version 4, 2026-01-09 (Corentin Wallez)
      - Add EGL_PLATFORM_ANGLE_WEBGPU_INSTANCE_ANGLE
