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

Tiled gradients with many tiles can render incorrectly #2560

Closed
eqrion opened this issue Mar 22, 2018 · 2 comments
Closed

Tiled gradients with many tiles can render incorrectly #2560

eqrion opened this issue Mar 22, 2018 · 2 comments
Labels

Comments

@eqrion
Copy link
Contributor

@eqrion eqrion commented Mar 22, 2018

Discovered from looking at the test case attached to bug 1443912.

The following test case is a red rect covered entirely by a 100x100 tile tiled radial gradient. Each tile of the radial gradient is solid blue, so we should only see a blue rect on the screen.

Instead we see that some limit on tiles is being reached and not all tiles are being drawn.

---
root:
  items:
    - type: rect
      bounds: 0 0 800 800
      color: red

    - type: radial-gradient
      bounds: 0 0 800 800
      center: 4 4
      radius: 4 4
      stops: [0, blue, 1, blue]
      tile-size: 8 8
      tile-spacing: 0 0

many-tiles

cc @jrmuizel

@nical
Copy link
Collaborator

@nical nical commented Mar 22, 2018

This is because of:


where we set a max limit of 64x64 primitives during decomposition.
I'd like to move this logic to the render backend thread and then from there implement out a solution to having many repeated primitives. @glennw suggested prerendering N repetitions in an intermediate target and repeating that M times using a decomposed brush image (but first I need to finish porting the image decomposition to the render backend as well).

@kvark kvark added the type: bug label Apr 13, 2018
@nical
Copy link
Collaborator

@nical nical commented May 14, 2018

This has been fixed by #2644 and #2752.

@nical nical closed this May 14, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.