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

Various simplifications, optimizations and features related to clipping. #1679

Merged
merged 5 commits into from Sep 12, 2017

Commits on Sep 11, 2017

  1. Introduce ClipStore, an arena for storing clip sources.

    This reduces a lot of memory copying and allocations, since
    the clip stack built each frame now just contains handles
    into the clip store, rather than copying the entire mask cache.
    gw3583 committed Sep 11, 2017
  2. Move remaining mask cache code into ClipSources, and simplify it.

    We no longer need to copy the border sources etc into the mask
    cache structures - they can be referenced directly from the clip sources.
    
    We also use a separate GPU cache handle for each clip now, so the
    ClipAddressRange code is no longer needed. This is possible since
    we use the GpuCache now, which doesn't need to allocate space
    during initialization.
    
    This also simplifies the code in the clip batcher that adds
    clip instances to the render targets.
    
    Add support for multiple image masks (a by-product of removing
    the init step of the mask cache code).
    gw3583 committed Sep 11, 2017
  3. Switch handles to use tuples in clip.rs

    gw3583 committed Sep 11, 2017
You can’t perform that action at this time.