Geometry rendering performance
See original GitHub issueI think I’ve brought this up before, but using stream geometry for simple shapes (rects, ellipses, lines) is quite slow, since instead of using known optimized methods of drawing, the graphics library has to do a tessellation for our custom streaming geometry, which is a very expensive CPU-bound process. I have a case when calling DrawLine in cycle instead of using a prepared geometry with Direct2D makes a ~400 times difference in terms of performance.
I’m a bit concerned that we are relying on geometry implementations being the actual Path
-like objects provided by the rendering system. That makes it harder to optimize in the future, since we’ll have to implement all of that IGeometryImpl
logic for each simple shape and do it at least twice (for skia and direct2d).
Issue Analytics
- State:
- Created 6 years ago
- Comments:5 (5 by maintainers)
Top GitHub Comments
This was recently implemented for both backends
This is implemented for D2D in #1406, needs a skia implementation still.