PDA

View Full Version : Confused regarding status of OpenVG API



Seefer
01-04-2009, 04:09 PM
I'm new to programming and have been looking for a 2D graphics API to use as a potential alternative to using Microsoft's GDI+. So I have a few questions for those of you experienced with OpenVG.

Firstly, is the OpenVG API as available for download from the Khronos website a useable API for general use? Or is the current version not really suitable for 'in-the-field' use, instead being an early outline to establish standards for implementations to conform to?

I'm also trying to determine whether OpenVG would provide better performance than GDI+ when rendering in software mode. Basically my interests in OpenVG is as an alternative 2D software rendering API for creating Avionics gauge add-ons within Microsoft Flight Simulator X (FSX from here on). The FSX SDK that allows fans to create add-on gauges does not provide for any surfaces in video memory to render to. The FSX engine ultimately uses a drawing surface in system memory to draw gauge graphics, hence my desire to figure mout whether OpenVG, even if rendering via software, is fast enough to outshine GDI+.

Is anyone out there familiar with GDI+ and OpenVG to the point where they can offer insight into comparative performance?

Thanks

- Seef

Ivo Moravec
01-05-2009, 11:51 AM
The Khronos reference implementation is purposefully slow - it's designed for accuracy, not speed. In practice, it's about 40-200 times slower that any normal software implementation. Implementations with hardware support can be faster still.

As to how it compares to GDI, that would depend on the OpenVG implementation, amount of hardware support and other factors.

Try AmanithVG or the old Rasteroid's software renderer OpenVG implementation for any comparative benchmarks you run.

Seefer
01-05-2009, 12:19 PM
The Khronos reference implementation is purposefully slow - it's designed for accuracy, not speed. In practice, it's about 40-200 times slower that any normal software implementation. Implementations with hardware support can be faster still.

As to how it compares to GDI, that would depend on the OpenVG implementation, amount of hardware support and other factors.

Try AmanithVG or the old Rasteroid's software renderer OpenVG implementation for any comparative benchmarks you run.

Thanks for the info. I'm struggling finding any clear reference to Hybrid's Rasteroid API and documentation and the Hybrid website appears dead. Amanith certainly looks like it would be useful but sadly it appears to be a commercial product, which puts it out of reach for my requirements. It's becoming apparent to me that good, royalty-free or open source 2D graphics libraries are simply thin on the ground - which kind of surprises me. It's looking like I'm going to be stuck with GDI+. That is until more OpenVG implementations become available :(

Ivo Moravec
01-06-2009, 11:30 AM
The Khronos reference implementation is purposefully slow - it's designed for accuracy, not speed. In practice, it's about 40-200 times slower that any normal software implementation. Implementations with hardware support can be faster still.

As to how it compares to GDI, that would depend on the OpenVG implementation, amount of hardware support and other factors.

Try AmanithVG or the old Rasteroid's software renderer OpenVG implementation for any comparative benchmarks you run.

Thanks for the info. I'm struggling finding any clear reference to Hybrid's Rasteroid API and documentation and the Hybrid website appears dead. Amanith certainly looks like it would be useful but sadly it appears to be a commercial product, which puts it out of reach for my requirements. It's becoming apparent to me that good, royalty-free or open source 2D graphics libraries are simply thin on the ground - which kind of surprises me. It's looking like I'm going to be stuck with GDI+. That is until more OpenVG implementations become available :(

Try ShivaVG then - that should meet your needs.