Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upSwitch to immutable texture storage and invalidate unused framebuffers #3195
Conversation
That's the proper type. The fact that the glTexImage* calls take a glint is a specific wart of that API that's not relevant to us here. Differential Revision: https://phabricator.services.mozilla.com/D8564
|
@bors-servo r=kvark |
|
|
Switch to immutable texture storage and invalidate unused framebuffers Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1496168 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/webrender/3195) <!-- Reviewable:end -->
|
|
|
The current setup doesn't work with glTexStorage. Given that it's only used for a few callers, it's cleanest to move it to an explicit call at those sites. Differential Revision: https://phabricator.services.mozilla.com/D8565
This is required by glTexStorage*. We also take the opportunity to simplify and clarify the situation with BGRA. Differential Revision: https://phabricator.services.mozilla.com/D8566
Differential Revision: https://phabricator.services.mozilla.com/D8567
This allows the driver to avoid preserving the old contents we don't care about. Differential Revision: https://phabricator.services.mozilla.com/D8568
|
I had to add support for the texture array case to upload_texture_immediate to support loading captures of the texture cache. |
|
@bors-servo r=kvark |
|
|
Switch to immutable texture storage and invalidate unused framebuffers Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1496168 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/webrender/3195) <!-- Reviewable:end -->
|
|
|
@bholley @kvark any ideas off the top of your head why this PR would result in all the glyphs and images turning into black rectangles on Android? https://bugzilla.mozilla.org/show_bug.cgi?id=1499785 |
|
I'll comment in the bug. |
|
@staktrace re-reading the code, maybe we are using the wrong external format now? |
I think the old code was nonsensical. IIUC, the external format describes the arrangement of pixels delivered by the application, which wouldn't change based on whether GL_EXT_texture_format_BGRA8888 is supported by the driver. ImageFormat::BGRA is going to have pixels in that order.
Yeah, it would just swap around the colors. And that's exactly what jdm reported in #2731. :-) I'm pretty sure the black means that the textures aren't getting created at all. Driver logs are probably the next step. |
bholley commentedOct 12, 2018
•
edited by larsbergstrom
Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1496168
This change is