Hi Fei,

Several years ago there was much discussion about which direction to take
web graphics standards - either continue to extend WebGL toward OpenGL ES
3.1/3.2, or pursue the new family of low-level explicit graphics APIs
(D3D12/Metal/Vulkan). After much investigation it was decided to leave the
legacy behind and pursue a new standard, WebGPU. There is a tremendous
amount of cross-industry momentum behind WebGPU; the first version, and
implementations, will ship later this year.

I recommend you abandon the course of trying to get an OpenGL ES 3.1
JavaScript binding in Chromium, and instead see whether you can achieve
what you want using the existing WebGPU implementation in Chromium, as well
as Dawn, Chromium's native implementation of the API.

https://gpuweb.github.io/gpuweb/
https://gpuweb.github.io/gpuweb/explainer/
https://dawn.googlesource.com/dawn/

Best,

-Ken



On Mon, May 9, 2022 at 5:02 AM 杨飞 <hyangf...@gmail.com> wrote:

> Hi everyone.
>
> I've asked a similar question in chromium-dev, then I realized here might
> be the better place to ask.
>
> I'm trying to hack Blink (in Chromium) to embed a native 3D rendering
> engine behind Chromium. In addtion, I want it to shared the same context as
> the WebGL2 context of a Canvas.
>
> The problem is that OpenGL ES 3.1 features are disabled by default. For
> example, when I try to call GLES2Interface::CreateShader with
> GL_COMPUTE_SHADER, I got "GL_INVALID_ENUM: OpenGL ES 3.1 Required". That
> basically means, the features of GLES2Interface are the same as those
> already exposed as WebGL.
>
> I therefore wonder, is there an easy way to enable the OpenGL ES 3.1
> features during Chromium building? Maybe using some gn args?
>
> Here is my project (without involving Chromium):
> https://github.com/fynv/Three.V8
>
> The whole purpose of the attempt is to try to utilize the native OpenGL
> features which are not exposed through WebGL. But it looks like, if the
> GLES 3.1 features are enabled in
> GLES2Interface, they will also be exposed to WebGL. Is that the case?
>
> Thanks
>
> Fei
>
> --
> You received this message because you are subscribed to the Google Groups
> "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to blink-dev+unsubscr...@chromium.org.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/7ce0a611-68b0-4433-9dbb-7af6f8d74a6dn%40chromium.org
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/7ce0a611-68b0-4433-9dbb-7af6f8d74a6dn%40chromium.org?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMYvS2dzr_MMct2xuPTrDzE1u79%3DiH_ej0ivhcrF%2B_ZZz7%3D3ZA%40mail.gmail.com.

Reply via email to