Simplify GLContext creation on macOS
Categories
(Core :: Graphics, task)
Tracking
()
Tracking | Status | |
---|---|---|
firefox72 | --- | fixed |
People
(Reporter: mstange, Assigned: mstange)
References
Details
Attachments
(9 files)
Bug 1596248 - Don't treat CompositorOGL coordinates differently in offscreen GL contexts. r=jgilbert
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
Now that we always render into IOSurfaces, we can simplify some code around GLContext creation on macOS.
Assignee | ||
Comment 1•5 years ago
|
||
This code was trying to not render things upside down when rendering to offscreen contexts.
But this code path was never used and it wasn't fully working.
I would like to make our compositor contexts go through GLContextProviderCGL::CreateHeadless,
which creates an "offscreen" GLContext, so now this broken code is kicking in. Let's remove it.
Assignee | ||
Comment 2•5 years ago
|
||
Depends on D52917
Assignee | ||
Comment 3•5 years ago
|
||
This distinction is not meaningful with CoreAnimation because all rendering happens into IOSurfaces.
Depends on D52918
Assignee | ||
Comment 4•5 years ago
|
||
This seems to be what other platforms do. FORCE_ENABLE_HARDWARE is controlled by the pref webgl.force-enabled.
gl.require-hardware was only read on macOS.
Depends on D52919
Assignee | ||
Comment 5•5 years ago
|
||
This depth buffer would only be created for the default framebuffer, but there is
no default framebuffer on macOS (since all rendering goes into IOSurfaces), so
this attribute is ignored.
We already manually create depth buffers for the IOSurface framebuffers.
Depends on D52920
Assignee | ||
Comment 6•5 years ago
|
||
This setting was only respected for manually-created fake "default" framebuffers,
by code that no longer exists.
Depends on D52921
Assignee | ||
Comment 7•5 years ago
|
||
Depends on D52922
Assignee | ||
Comment 8•5 years ago
|
||
Depends on D52923
Assignee | ||
Comment 9•5 years ago
|
||
Depends on D52920
Updated•5 years ago
|
Comment 10•5 years ago
|
||
![]() |
||
Comment 11•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/5a778da8ea81
https://hg.mozilla.org/mozilla-central/rev/60f93190c588
https://hg.mozilla.org/mozilla-central/rev/d332b04a1d99
https://hg.mozilla.org/mozilla-central/rev/3bfe21f8500e
https://hg.mozilla.org/mozilla-central/rev/442b6daa41ae
https://hg.mozilla.org/mozilla-central/rev/2fb40100f0fa
https://hg.mozilla.org/mozilla-central/rev/4fbfff4426f2
https://hg.mozilla.org/mozilla-central/rev/827e48eb21a7
https://hg.mozilla.org/mozilla-central/rev/1b1fe528fa9b
Description
•