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 radial gradient shader to be a brush primitive. #2433

Merged
merged 1 commit into from Feb 18, 2018

Commits on Feb 18, 2018

  1. Port radial gradient shader to be a brush primitive.

    This is mostly a straightforward conversion, with a couple of
    interesting notes:
    
    * The previous radial gradient shader was missing a transform
      implementation so would never have worked properly with
      rotation and/or perspective.
    * We didn't (and still don't) detect if a radial gradient is
      opaque - it's always assumed transparent. So even though
      it can now opt in to segments (and save clip mask generation
      time), the inner segments will still be in the alpha pass.
      We should fix this!
    * Previously, we used to append the gradient stops directly
      after the primitive information in the main GPU cache handle.
      Now, there is a separate GPU cache handle for the stops. This
      is quite a bit more efficient in the GPU cache, since the
      size of the stops array is large, and a power of 2, it now
      fits exactly into a GPU cache slab, and allows the main
      primitive data to be allocated in a smaller row.
    gw3583 committed Feb 18, 2018
You can’t perform that action at this time.