OpenVG
Utvecklare | Khronos Group, Inc. |
---|---|
Stabil frisättning | 1.1 / 3 december 2008
|
Operativ system | Cross-plattform |
Typ | API |
Licens | Olika |
Hemsida |
OpenVG är ett API designat för hårdvaruaccelererad 2D- vektorgrafik . Dess primära plattformar är mobiltelefoner, spel- och mediakonsoler och hemelektronik. Den designades för att hjälpa tillverkare att skapa mer attraktiva användargränssnitt genom att ladda ner beräkningsintensiv grafikbearbetning från processorn till en GPU för att spara energi. OpenGL ES-biblioteket tillhandahåller liknande funktionalitet för 3D-grafik. OpenVG förvaltas av det ideella teknikkonsortiet Khronos Group .
Historia
OpenVG-gruppen bildades den 6 juli 2004 av ett urval av stora företag inklusive 3Dlabs , Bitboys , Ericsson , Hybrid Graphics , Imagination Technologies , Motorola , Nokia , PalmSource , Symbian och Sun Microsystems . Andra företag inklusive chiptillverkarna ATI , LG Electronics , Mitsubishi Electric , NVIDIA och Texas Instruments och mjukvaru- och/eller IP-leverantörer DMP, Esmertec , ETRI, Falanx Microsystems , Futuremark, HI Corporation, Ikivo, HUONE (tidigare MTIS), Superscape, och Wow4M har också deltagit i arbetsgruppen. Det första utkastet till specifikationen från gruppen gjordes tillgängligt i slutet av 2004, och 1.0-versionen av specifikationen släpptes den 1 augusti 2005.
Den 16 januari 2007 tillkännagav Zack Rusin från Tungsten Graphics starten på en oberoende implementering av OpenVG med öppen källkod byggd ovanpå QtOpenGL .
Kort därefter startade Ivan Leben ytterligare ett projekt med öppen källkod för att implementera en ANSI C-implementering av specifikationen ovanpå OpenGL .
Sedan den 27 februari 2007 är OpenVG Sample Reference Implementation tillgänglig från Khronos webbplats under MIT open source-licens.
Den 9 december 2008 släppte Khronos Group OpenVG 1.1-specifikationen. Den senaste versionen inkluderar glyph-rendering för accelererad text, förbättrad kantutjämning och Flash-stöd. En uppdaterad referensimplementering tillhandahålls också, liksom en överensstämmelsetestsvit.
Den 1 maj 2009 lade Rusin till OpenVG state tracker till Mesa , vilket gör att SVG vektorgrafik kan hårdvaruaccelereras av alla Gallium3D -baserade drivrutiner. Den togs bort igen i Mesa 10.6 den 15 juni 2015.
I september 2011 beslutade OpenVG-arbetsgruppen att inte hålla något ordinarie möte för ytterligare standardisering. Arbetsgruppen beslutade dock att fortsätta underhållet och främja OpenVG 1.1-specifikationen.
Genomföranden
I hårdvara
- Renesas SuperH SH2A-baserad SH7269-lösning. Utvecklad för inbyggda GUI:er till låga systemkostnader, med upp till 2,5 MB inbyggt SRAM för bildbuffert.
- AMD/ATI Z160 och Z180 OpenVG 1.x grafikkärna. Implementerad i Freescale i.MX35, i.MX51 och i.MX53. IP såldes till Qualcomm och döpte om "Adreno" för Snapdragon-kärnor.
- ARM Mali grafikbearbetningsenheter
- Broadcom BCM4760 SoC – Tillkännagiven 01/juni/09. BCM4760 Innehåller "en OpenGL(R) ES 1.1/OpenVG(TM) 1.0-kompatibel grafikprocessor"
- Digital Media Professionals Inc.(DMP Inc.) SMAPH-F(maskros VG)
- Imagination PowerVR VGX150 OpenVG 1.1
- Imagination PowerVR SGX Series5 – API-stöd inkluderar OpenGL ES 1.1/2.0, OpenVG 1.1, OpenGL 2.0/3.0 och DirectX9/10.1
- Takumi GV500 – GV300, GV500 Grafikaccelerator IP-Core
- Think Silicon ThinkVG Graphics Core OpenVG 1.1
- Vivante GC350 (2D-grafikkärna) OpenVG 1.1
- Vivante GC400 och högre är 3D-grafikkärnor som stöder OpenGL ES 2.0 och OpenVG 1.1
- Adrenos grafikprocessorer stöder OpenVG 1.1. Qualcomm tillhandahåller en SDK för Android.
För GPU:er
- Mesa Gallium3D – VMware/Tungsten Graphics tillhandahåller en OpenVG-implementering för kort med Gallium-drivrutiner (Gallium-drivrutiner för nVidia, AMD/ATI och VMware finns tillgängliga). OpenVG har tagits bort från Mesa i version 10.6.
För mediaacceleratorer
- Hanwha Systems AlexVG-forma – Accelerating Vector Graphics API på mediaaccelerationshårdvara. Använder hästkrafter av multimedia eller 2D bitmappsgrafikhårdvara.
På OpenGL, OpenGL ES
- Hooked Wireless OpenVG – komplett implementering av både OpenVG 1.01 och OpenVG 1.1, implementerad ovanpå OpenGL ES och är helt överensstämmande. Påstående "Det utnyttjar proprietär teknologi från Hooked inom områdena tessellation och triangulering för former och kurvor." Första gången släpptes i februari/2008.
- Hanwha Systems AlexVG-forge – En OpenVG-motor som är 2D vektorgrafikstandard genom att använda grafikkretsen som stöder OpenGL/OpenGL ES.
- Mazatech AmanithVG GLE – kommersiell. Byggd ovanpå OpenGL 1.1+ och OpenGL ES 1.x. Gör anspråk på "att uppnå bättre prestanda än mjukvaru-rastrare när det gäller högupplösta animationer och komplexa specialeffekter (transparenser, blekning, rotoskalning i realtid och många andra)."
- MonkVG – öppen källkod (BSD), endast "OpenVG like "
- ShivaVG – öppen källkod (LGPL)
- ShaderVG – baserat på ShivaVG men implementerar draw call GLSL shaders
I mjukvara
- Implementering av Khronos OpenVG Reference
- Hanwha Systems AlexVG – släpptes först i september/2005
- Mazatech AmanithVG – OpenVG plattformsoberoende bibliotek med ren programvara och OpenGL (/ES 1.1) renderande backends
- Vega – Gallium3D state tracker
- GingkoVG
Se även
- kairo – 2D-plattformsgrafisk vektorritning och textverktygssats. OpenVG-1.x och cairo API skiljer sig i omfattning eftersom cairo försöker förena utskrifter över flera backends med stöd för text. Kairo kan använda OpenVG som backend.
- Direct2D
- Skia grafikmotor
- Starling Framework
- Allmän
- Offentliga forum
- Offentligt register
- OpenVG-överensstämmande företag
- OpenVG 1.1-specifikation
- Khronos pressmeddelande — Khronos bjuder in offentlig granskning av utkastet till OpenVG-specifikation
- Khronos Pressmeddelande — Khronos Group släpper OpenVG 1.0-specifikationen
- BitBoys pressmeddelande — Bitboys introducerar vektorgrafikprocessor för mobila enheter
- OpenVG 1.1 Pressmeddelande
- OpenVG 1.1-specifikation
externa länkar
- Officiell hemsida
- Mazatechs OpenVG 1.1 och 1.0.1 implementeringar: AmanithVG SRE (Software Rasterization Engine), AmanithVG GLE (OpenGL / OpenGL ES Engine)
- Ivan Lebens ANSI C OpenVG-implementering
- Zack Rusins OpenVG-implementering över QtOpenGL (från Qt 4.3)
- http://old.siggraph.org/publications/2006cn/course16/OpenVG.pdf
- HuaYue Techs OpenVG-implementering
- GingkoVG