commit | 9fba7ea8e943cb9396c356c4becb6842ef0710d5 | [log] [tgz] |
---|---|---|
author | Corentin Wallez <cwallez@chromium.org> | Wed Jun 19 10:24:18 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Jun 19 10:24:18 2024 +0000 |
tree | c2a18b7b9a9784ee56ce9d0adcbdef246c1c98e1 | |
parent | 7753f63893e2b5e63ce1d9b5d15286dee31d230f [diff] |
EGL: Move initialization of EGL inside a DisplayEGL class The moves initialization and checks of EGLDisplays to be in its own class instead of split across opengl::Backend and opengl::PhysicalDevice. That class also contains data that's per EGL connection such as the EGLDisplay and the procs. This removes the need for opengl::Backend to return a single PhysicalDevice ever. The ContextEGL class now only deals with creating context and doing MakeCurrent, with some of its validation checks moved to classes using it. This will make it easier to dynamically handle EGL extension being present (e.g. to support webgpu.h when EGL_KHR_image_base is not present). Finally the encapsulation in these classes is step towards supporting more embedder APIs in the future (like GLX). Bug: 344814083 Bug: 42241384 Change-Id: I34d7c24c518a791da920a640a5764458073f976e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/193160 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org> Reviewed-by: Stephen White <senorblanco@chromium.org>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.