Open Bug 1023102 Opened 10 years ago Updated 2 years ago

Avoid seams between filled areas by optionally disabling anti-aliasing.

Categories

(Core :: Graphics: Canvas2D, defect)

defect

Tracking

()

People

(Reporter: mbx, Unassigned)

References

Details

(Keywords: perf, Whiteboard: [Shumway])

This stack overflow comment explains the problem well:

http://stackoverflow.com/questions/19319963/how-to-avoid-seams-between-filled-areas-in-canvas

This is a big problem for Shumway since all Flash shapes have disjoint fill areas and are subject to seaming. The problem gets worse when shapes are scaled down, seaming artifacts cause them to appear translucent. 

I'm speculating that drawing with anti-aliasing disabled can avoid seaming (I have no expertise in this area.)
Whiteboard: [Shumway]
Blocks: shumway-m4
OS: Mac OS X → All
Hardware: x86 → All
Keywords: perf
Blocks: 927828
Till says this is a hard problem with no workaround for Shumway, short of writing our own rasterizer. Not visible on most content, but some looks really bad for some scaled content. This is not a Shumway ship blocker.

Examples of bad seams:

http://people.mozilla.org/~jmuizelaar/p/part1.html
http://codeazur.com.br/shumway/gl_tiger/
http://people.mozilla.org/~jmuizelaar/p/flower/full-bench-canvas.html
https://dl.dropboxusercontent.com/u/55355076/full-scene-rasterizer-canvas/bird.html

Expected results:

http://people.mozilla.org/~jmuizelaar/p/flower/full-bench.html
https://dl.dropboxusercontent.com/u/55355076/full-scene-rasterizer-js/bird.html
No longer blocks: shumway-m4
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.