servo / webrender

A GPU-based renderer for the web
https://doc.servo.org/webrender/
Mozilla Public License 2.0
3.12k stars 275 forks source link

OpenGL version requirements #4767

Open cunlem opened 1 year ago

cunlem commented 1 year ago

Can you please document what is supported minimum version of OpenGL?

E.g. I have to two old Intel systems (Linux):

OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 3000 (SNB GT2)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 21.2.6
OpenGL core profile shading language version string: 3.30
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics (ILK)
OpenGL version string: 2.1 Mesa 21.2.6
OpenGL shading language version string: 1.20

With Firefox 109 in about:support screen the first one claims WebRender as compositor while for the second it's WebRender (Software). From this I understand that only the first (OpenGL 3.3) is GPU accelerated and the second (OpenGL 2.1) renders everything with CPU?

I remember that in the past WebRender was not available on the older system at all (even when forcing with about:config tweaks) so something must have changed in some recent version.

jrmuizel commented 1 year ago

The answer is complicated. But rough requirement is OpenGL 3. The results that you see match what you should expect. Ironlake hardware is supported in on Windows so technically, but I'm not sure the mesa driver supports enough of the hardware functionality to make it work.

EliasTheGrandMasterOfMistakes commented 8 months ago

Can you please document what is supported minimum version of OpenGL?

E.g. I have to two old Intel systems (Linux):

OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 3000 (SNB GT2)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 21.2.6
OpenGL core profile shading language version string: 3.30
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics (ILK)
OpenGL version string: 2.1 Mesa 21.2.6
OpenGL shading language version string: 1.20

With Firefox 109 in about:support screen the first one claims WebRender as compositor while for the second it's WebRender (Software). From this I understand that only the first (OpenGL 3.3) is GPU accelerated and the second (OpenGL 2.1) renders everything with CPU?

I remember that in the past WebRender was not available on the older system at all (even when forcing with about:config tweaks) so something must have changed in some recent version.

Try to enable gfx.egl.prefer-gles.enabled

EliasTheGrandMasterOfMistakes commented 8 months ago

The answer is complicated. But rough requirement is OpenGL 3. The results that you see match what you should expect. Ironlake hardware is supported in on Windows so technically, but I'm not sure the mesa driver supports enough of the hardware functionality to make it work.

I think the gfx.egl.prefer-gles.enabled can work, because it's use GLES 2.0, ILK can be work with GLES i think