Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port gradients to use GPU cache. #1348

Merged
merged 1 commit into from Jun 7, 2017
Merged

Conversation

@glennw
Copy link
Member

glennw commented Jun 7, 2017

  • Remove old gradient textures.
  • Gradient LUTs are now stored in a single row of RGBAF32 texels.
  • The interpolation is done in the fragment shader.
  • Build GPU blocks on demand for the gradients.

This change is Reviewable

@glennw
Copy link
Member Author

glennw commented Jun 7, 2017

r? @kvark

@kvark
kvark approved these changes Jun 7, 2017

// TODO(gw): In the future we might consider making the size of the
// LUT vary based on number / distribution of stops in the gradient.
const int GRADIENT_ENTRIES = 128;

This comment has been minimized.

@kvark

kvark Jun 7, 2017

Member

I guess we'll no longer have a problem of reduced quality because the entries size was reduced from 128 to 126

@kvark
Copy link
Member

kvark commented Jun 7, 2017

@bors-servo
Copy link
Contributor

bors-servo commented Jun 7, 2017

📌 Commit 0672d67 has been approved by kvark

@bors-servo
Copy link
Contributor

bors-servo commented Jun 7, 2017

🔒 Merge conflict

@bors-servo
Copy link
Contributor

bors-servo commented Jun 7, 2017

The latest upstream changes (presumably #1349) made this pull request unmergeable. Please resolve the merge conflicts.

* Remove old gradient textures.
* Gradient LUTs are now stored in a single row of RGBAF32 texels.
* The interpolation is done in the fragment shader.
* Build GPU blocks on demand for the gradients.
@glennw glennw force-pushed the glennw:cache-gradients branch from 0672d67 to 26214e8 Jun 7, 2017
@glennw
Copy link
Member Author

glennw commented Jun 7, 2017

Rebased.

@kvark
Copy link
Member

kvark commented Jun 7, 2017

@bors-servo
Copy link
Contributor

bors-servo commented Jun 7, 2017

📌 Commit 26214e8 has been approved by kvark

@bors-servo
Copy link
Contributor

bors-servo commented Jun 7, 2017

Testing commit 26214e8 with merge 25aa2af...

bors-servo added a commit that referenced this pull request Jun 7, 2017
Port gradients to use GPU cache.

* Remove old gradient textures.
* Gradient LUTs are now stored in a single row of RGBAF32 texels.
* The interpolation is done in the fragment shader.
* Build GPU blocks on demand for the gradients.

<!-- 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/1348)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Jun 7, 2017

☀️ Test successful - status-travis
Approved by: kvark
Pushing 25aa2af to master...

@bors-servo bors-servo merged commit 26214e8 into servo:master Jun 7, 2017
2 checks passed
2 checks passed
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
homu Test successful
Details
@glennw glennw deleted the glennw:cache-gradients branch Jun 12, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants
You can’t perform that action at this time.