Luke Wilde
71746c47c2
LibWeb/WebGL: Bind default frame/render buffer when binding is null
...
This fixes the depth issues on github.com, as the depth commands are
now sent to the right frame/render buffer.
2025-01-08 17:55:17 +03:00
Aliaksandr Kalenik
145bb0f849
LibWeb/WebGL: Implement getSupportedExtensions()
2024-12-13 09:19:10 +01:00
Aliaksandr Kalenik
46cbbda944
LibWeb: Increase SkSurface's generation id when it's modified by WebGL
...
Skia is not aware of surface modifications done by WebGL, so we need to
manually increase generation id whenver WebGL invokes a writing
function.
2024-12-03 23:35:45 +01:00
Aliaksandr Kalenik
38488b9ef3
LibWeb: Implement GLES2 context creation
...
For now only macOS is supported.
IOSurface is used as a backing store because it will allow us to read
it from Skia and write to it from OpenGL without any extra copying:
- ANGLE_metal_texture_client_buffer extension is used to create
EGLSurface from IOSurface.
- Then the same IOSurface is wrapped into Metal texture and passed to
Skia allowing to share the same memory between Skia Metal backend and
ANGLE.
2024-12-03 23:35:45 +01:00
Aliaksandr Kalenik
d133b0aded
LibWeb: Delete OpenGL function wrappers in OpenGLContext
...
It's going to be replaced by code genration in upcoming changes.
2024-12-03 23:35:45 +01:00
Aliaksandr Kalenik
f719b05ab9
LibWeb: Delegate painting surface allocation to canvas's active context
...
This change prepares for the addition of WebGL support, where painting
surface allocation process will differ from that of context2d.
2024-12-03 23:35:45 +01:00
Timothy Flynn
93712b24bf
Everywhere: Hoist the Libraries folder to the top-level
2024-11-10 12:50:45 +01:00