AIUI, a key goal of our Layers Refactoring is to significantly reduce the cost of standing up new GFx backends (the first new one being D3Dv11.) As that progresses, I'd like to see detailed documentation about how new backends are added. I think we can get an intern or volunteer to stand up experimental backends and come with the perf numbers to inform our decisions. We've long predicted an increase in the number of low-level GFx driver surfaces we'll need to support, given our Android and FirefoxOS commitments. Let's make use of the infrastructure we're building to ensure that we can scale to support that.
Re: OpenVG specifically, I have some info to share that's more appropriate for the next Rendering meeting agenda. -- Jet ----- Original Message ----- From: "George Wright" <geo...@mozilla.com> To: "Andreas Gal" <g...@mozilla.com> Cc: dev-platform@lists.mozilla.org Sent: Monday, February 25, 2013 11:22:40 AM Subject: Re: OpenVG Azure backend On 02/23/2013 04:00 PM, Andreas Gal wrote: > OpenVG is a Khronos standard API for GPU accelerated 2D rendering. Its very > similar to OpenGL in design. In fact, its an alternative API to OpenGL ES on > top of EGL. It looks like that OpenVG is supported on most Android devices > and is used there by Flash (or well used to be used). B2G devices have OpenVG > support as well. There are also a number of open source implementations of > OpenVG that use OpenGL to accelerate 2D operations that might be interesting > for the desktop. OpenVG is pretty similar to Cairo and Skia when it comes to > the actual operations offered. The biggest drawback of OpenVG is that it > doesn't mix well with OpenGL. Its possible to render with OpenVG to a texture > and then composite that with OpenGL, but its not possible to do mixed > rendering with VG and GL to the same surface. That having said, I still think > we should consider adding an OpenVG backend. It would potentially > significantly speed up rendering on mobile hardware. OpenVG is quite a bit > more seasoned t > han Skia/SkiaGL, and explicitly targets mobile, whereas SkiaGL seems to be > mostly optimized for the desktop (at least so far). A particular advantage of > OpenVG is that it can take advantage of dedicated 2D acceleration hardware > (Mali and Adreno both have special 2D hardware OpenVG uses). SkiaGL on the > other hand is limited to using GLES to accelerate 2D drawing operations. What > do people think. Should we add a OpenVG backed? > My (very limited) knowledge about OpenVG is that people in the industry at the vendor level tend to not care about it. I think the reason for this is basically that there aren't any significant users of OpenVG (WebKit used to have a VG backend but it only had one user and has now been disowned). As a result of this indifference from the vendors, my understanding is that there aren't any actual hardware accelerated VG implementations. I think Qualcomm used to have one, but if I remember correctly they didn't really want to keep maintaining it. I think we're about 3 or 4 years too late to the OpenVG party and at this point we'd be trying to resurrect it, rather than use it. _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform