Earlier quoted context omitted.
For a few things. These days most of Servo rendering is done on the GPU by WebRender. I think we only use Skia for canvas right now. Hopefully we'll drop it altogether once Pathfinder is completed.
Will it be possible for others to use webrender/Pathfinder similar to Skia or Cairo? Or is it pretty connected to servo?
Skia: an open source 2D graphics library
101–110 of 119 posts
Re: Skia: an open source 2D graphics library
#102For anyone thinking of skipping looking at this one. I was not interested either until I read this part: > It serves as the graphics engine for Google Chrome and Chrome OS, Android, Mozilla Firefox and Firefox OS, and many other products.
Similar situation to the freetype/harfbuzz all-but-Microsoft/Apple (open source) monoculture. I'm interested to understand more about how some categories of software libraries don't foster multiple strong open source alternatives, while others do.
Re: Skia: an open source 2D graphics library
#103Earlier quoted context omitted.
For xi-editor I considered Skia but ultimately decided to write my own OpenGL renderer. I think Skia would have worked, but the dependency was heavyweight and I'm able to tweak my renderer (for example, it gets linear-sRGB color blending right, while Skia uses an approximation). I have a draft blog post on this in the queue, but juggling just a few too many things at the moment.
Isn't skia able to call OpenGL too? Do you think your own thing will be lighter weight in the end? Which parts of skia do you think you won't need? (For sRGB, a patch for skia might be less work than a full new 2d library. Also depends on if your goal is to write fun code or to get a product out, of course.)
Re: Skia: an open source 2D graphics library
#104Earlier quoted context omitted.
Skia is probably the most popular 2D graphics library at the moment. I don't really know why this got on HN now. It's already extremely popular. I use it in a little WIP game engine. It's very pleasant, excellent little library. There's an online jsfiddle-esque demo here https://fiddle.skia.org/ if you want to try it out.
Been one feet in the gamedev space for pretty much my whole teenage and adult life, and it's the first time I've heard about it. It might be me just not paying attention, or maybe it's not that popular for end-users.
Skia would be more useful for graphical applications focused on vector graphics (diagrams, plots, layout editors, CAD...). And for general purpose 2D graphic platforms like browsers have.
Re: Skia: an open source 2D graphics library
#105Re: Skia: an open source 2D graphics library
#106Ugh... This build system is _horrible_. bash-dependent meta-builder for ninja-build working in git checkouts. Are both actual releases and traditional build systems that out of fashion?
You guys are killing me. After downloading twenty-some git repos(?) as dependencies (most of which my system already has), this (I’ll try to quit complaining about this better mousetrap now): kamloops$ gn Traceback (most recent call last): File "/home/bch/work/skia/src/vendor/depot_tools/gn.py", line 38, in sys.exit(main(sys.argv)) File "/home/bch/work/skia/src/vendor/depot_tools/gn.py", line 22, in main bin_path = g…
Skia statically links in copies of these dependencies for testing purposes only. There is a mode ("is_official_build") that will search for your system libraies.
Re: Skia: an open source 2D graphics library
#107Somehow the text it renders looks worse than all the other common graphics libraries on Linux - which all use FreeType and Harfbuzz. I am not sure what QtWebEngine does differently, because it uses Blink and the text looks fine.
Re: Skia: an open source 2D graphics library
#108Earlier quoted context omitted.
Skia is probably the most popular 2D graphics library at the moment. I don't really know why this got on HN now. It's already extremely popular. I use it in a little WIP game engine. It's very pleasant, excellent little library. There's an online jsfiddle-esque demo here https://fiddle.skia.org/ if you want to try it out.
Nice but got "Failed to run, possibly violated security container"
Re: Skia: an open source 2D graphics library
#109Earlier quoted context omitted.
You guys are killing me. After downloading twenty-some git repos(?) as dependencies (most of which my system already has), this (I’ll try to quit complaining about this better mousetrap now): kamloops$ gn Traceback (most recent call last): File "/home/bch/work/skia/src/vendor/depot_tools/gn.py", line 38, in sys.exit(main(sys.argv)) File "/home/bch/work/skia/src/vendor/depot_tools/gn.py", line 22, in main bin_path = g…
> After downloading twenty-some git repos(?) as dependencies (most of which my system already has) Skia statically links in copies of these dependencies for testing purposes only . There is a mode ("is_official_build") that will search for your system libraies.
Re: Skia: an open source 2D graphics library
#110Earlier quoted context omitted.
For xi-editor I considered Skia but ultimately decided to write my own OpenGL renderer. I think Skia would have worked, but the dependency was heavyweight and I'm able to tweak my renderer (for example, it gets linear-sRGB color blending right, while Skia uses an approximation). I have a draft blog post on this in the queue, but juggling just a few too many things at the moment.
Isn't skia able to call OpenGL too? Do you think your own thing will be lighter weight in the end? Which parts of skia do you think you won't need? (For sRGB, a patch for skia might be less work than a full new 2d library. Also depends on if your goal is to write fun code or to get a product out, of course.)
The conclusion was after a whole bunch of bug fixes (OpenGL ES 2.0 IIRC), it ran but (a) ate up a lot of GPU memory (b) was slower than the 2D rendering for 80% of the drawing operations (c) some rendering ops (such as the font wide) could not be easily accelerated, meaning you would need to flush the GPU partially rendered frame periodically, then bring into the CPU cache, draw over and then flush again before writing more GPU operations.
Fun experiment - poor outcome!