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?
Andreas _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform