3 ms·
There isn’t really anything commonly “native” as powerful as skia for 2D drawing and a big part of skia is using the native graphics effectively, this is why it
by epcoa 2y ago
There isn’t really anything commonly “native” as powerful as skia for 2D drawing and a big part of skia is using the native graphics effectively, this is why it exists in the first place for browser engines. Besides having one target API is a benefit.
- 1propionyl 2y ago> There isn’t really anything commonly “native” as powerful as skia for 2D drawing Cairo?
- epcoa 2y agoI love Cairo, but it’s just not in the same feature or performance ballpark as skia. There’s a reason even Firefox adopted skia. Skia is like the V8 of 2D drawing libraries, just a ton of continual investment into optimization. I used to work on cairo and pixman, it’s great, very straightforward but not finely tuned for performance on modern hardware.
- pjmlp 2y agoDirect2D, CoreGraphics,...
- epcoa 2y agoIn addition to the portability issue, CoreGraphics does not compete directly with Skia or Direct2D for that matter (it’s mostly CPU based). If you combine it with CoreAnimation you get something of a quasi superset. Direct2D is +/-, but it also doesn’t have some higher level features like PDF and SVG backends, and it doesn’t have the software rendering capabilities of skia by design. Of course there are 2D drawing libraries on the major platforms (and CoreGraphics and Direct2D are very different, there’s also GDI+), but it was a weird question to start: what’s the use of a portable library. But furthermore, skia is not just a portability wrapper.
- pjmlp 2y agoWell, the whole point is the native 2D library on the OSes that Skia depends on, APIs that take direct advantage of OS 2D and 3D OS APIs, and not some third party.
- epcoa 2y agoAre Vulkan and OpenGL OS “native” or 3rd party? I think this is sort of a semantics hairsplitting argument that isn’t terribly useful. Skia is useful because it provides a powerful, performance oriented common target 2D drawing library, and it is more than a lowest common denominator wrapper.
- pjmlp 2y agoThey are on the platforms that offer them as OS APIs, Skia isn't, it is a wrapper on top. It could be Qt, SDL, SFML, or anything else with similar goals.