OpenVG
OpenVG — багатоплатформний прикладний програмний інтерфейс, розроблений Khronos Group спеціально для двовимірної векторної графіки з використанням апаратного прискорення. Призначений в першу чергу для мобільних телефонів, смартфонів і ігрових консолей таких як PlayStation та інших мобільних пристроїв. OpenVG дозволяє розробникам програмного забезпечення створювати більш швидкі графічні інтерфейси які будуть менш залежні від центрального процесора, що в свою чергу дозволить не тільки зняти надмірне навантаження з ЦП, а й економити електроенергію. OpenVG добре підходить для прискорення флеш-анімації та SVG-графіки.
Тип | API |
---|---|
Розробник | Khronos Group, Inc. |
Стабільний випуск | 1.1 (3 грудня 2008 г.) |
Версії | 1.1 (3 грудня 2008) |
Операційна система | Багатоплатформне |
Ліцензія | Різні |
Вебсайт | khronos.org/openvg |
Історія
Група OpenVG була сформована 6 липня 2004 за згодою таких великих фірм як 3Dlabs, Bitboys, Ericsson, Hybrid Graphics, Imagination Technologies, Motorola, Nokia, PalmSource, Symbian, і Sun Microsystems. Надалі до розробки приєдналися інші корпорації включаючи таких виробників електроніки як ATI, LG Electronics, Mitsubishi Electric, NVIDIA, Texas Instruments і програмного забезпечення DMP, Esmertec, ETRI, Falanx Microsystems, Futuremark, HI Corporation, Ikivo, MTIS, Superscape, и Wow4M.
Перша специфікація була доступна в кінці 2004 року, а перша версія API для цієї специфікації була випущена 1 серпня 2005.
16 січня 2007 року, Zack Rusin анонсував початок відкритої реалізації даного API яка базувалась на QtOpenGL.
Відразу після цього, Ivan Leben створив інший відкритий проект на sourceforge, написавши ANSI C реализацію для спецификації на базі стандартного OpenGL.
9 грудня 2008 року Khronos Group випустила специфікацію для OpenVG 1.1. Ця версія включала гліф-рендеринг для тексту, покращений анти-аліасинг і підтримка Flash.
1 травня 2009 року Zack Rusin з компанії Tungsten Graphics додав трекер стану OpenVG до Mesa 3D, що дозволило застосувати апаратне прискорення для векторної графіки SVG для пристроїв на яких використовується Gallium3D драйвер.
У вересні 2011 робоча група OpenVG прийняла рішення не проводити подальші зустрічі для наступних версій. А також було прйнято рішення для продовження обслуговування і просування існуючої спеціифікацї для версії OpenVG 1.1.
Імплементація
Апаратний рівень
- Renesas SuperH SH2A на основі SH7269 рішення. Розроблений графічний інтерфейс для мобільних пристроїв з невеликим рівнем системних затрат, з виділеними 2.5 мегабайтами SRAM пам'яті для буферу зображення.[1]
- AMD/ATI Z160 і Z180 OpenVG 1.x графічне ядро.[2]
- ARM Mali Graphics Processing Units[3]
- Broadcom BCM4760 SoC — Анонсований 1 червня 2009. BCM4760 Який включав «Для OpenGL(R) ES 1.1/OpenVG™ 1.0-сумісний графічний процесор»[4]
- Digital Media Professionals Inc.(DMP Inc.) SMAPH-F(dandelion VG)[5]
- Imagination PowerVR VGX150 OpenVG 1.1[6]
- Imagination PowerVR SGX Series5 — API, що підтримує OpenGL ES 1.1/2.0, OpenVG 1.1, OpenGL 2.0/3.0 і DirectX9/10.1[7][8]
- Takumi GV500 — GV300, GV500 Графічний прискорювач[9]
- Think Silicon ThinkVG графічне ядро для OpenVG 1.1[10]
- Vivante GC350 (2D графічне ядро) OpenVG 1.1
- Vivante GC400 і наступні сумісні з 3D графікою OpenGL ES 2.0 і OpenVG 1.1[11][12]
- Adreno GPU які підтримують OpenVG 1.1. Qualcomm пропонує SDK для Android.[13]
OpenGL, OpenGL ES
- Hooked OpenVG — Hooked Wireless OpenVG повна імплементація для обох OpenVG 1.01 і OpenVG 1.1, розроблено для OpenGL ES, і повністю сумісна. Вперше випущена в лютому 2008 року.[14]
- HuOne AlexVG-forge — OpenVG рушій двовимірної графіки для використання на пристроях що підтримують OpenGL/OpenGL ES.
- Mazatech AmanithVG GLE — комерційний. Створений для OpenGL 1.1 і наступних версій і OpenGL ES 1.x. Стверджують «досягнення кращої продуктивності ніж програмне растеризація для анімації з високою роздільною здатністю і складних спецефектів).»[15]
- MonkVG (тільки для «OpenVG»)[16] — відкрите програмне забезпечення (BSD)
- ShivaVG — відкрите програмне забезпечення (LGPL)
Програмне забезпечення
- Khronos OpenVG приклад імплементації
- HuOne AlexVG — Вперше вийшов в вересні 2005 року
- Mazatech AmanithVG SRE[15]
- Vega — Gallium3D трекер стану
- GingkoVG
Примітки
- SH7268, SH7269 | Renesas Electronics. Renesas.com. Архів оригіналу за 6 липня 2011. Процитовано 11 березня 2012.
- AMD unveils multimedia products for media-rich mobile devices. Videsignline.com. Процитовано 11 березня 2012.
- Mali-400 MP. ARM. Процитовано 16 червня 2013.
- Архівована копія. Архів оригіналу за 27 червня 2009. Процитовано 9 квітня 2016.
- Products & Services | Digital Media Professionals Inc. Dmprof.com. Архів оригіналу за 10 березня 2012. Процитовано 11 березня 2012.
- Архівована копія. Архів оригіналу за 10 червня 2009. Процитовано 9 квітня 2016.
- PowerVR SGX Series5 Graphics IP Core Family. Imgtec.com. Процитовано 11 березня 2012.
- POWERVR SGX520, SGX530 and SGX535 graphics cores with OpenVG 1.1 support
- Product Information|TAKUMI Corporation (яп.). Gshark.com. Процитовано 11 березня 2012.
- ThinkVG Graphics Core OpenVG 1.1. Архів оригіналу за 1 серпня 2012. Процитовано 9 квітня 2016.
- Vivante IP Catalog. Процитовано 13 грудня 2011.
- Vivante Graphics Processor IP. Архів оригіналу за грудень 1, 2011. Процитовано 13 грудня 2011.
- Adreno SDK on QDevNet. https://developer.qualcomm.com/discover/chipsets-and-modems/adreno-gpu . Retrieved 2013-07-24.
- Архівована копія. Архів оригіналу за 11 квітня 2009. Процитовано 9 квітня 2016.
- Michele Fabbri. AmanithVG project. Amanith.org. Архів оригіналу за 2 березня 2012. Процитовано 11 березня 2012.
- micahpearlman. micahpearlman/MonkVG · GitHub. Github.com. Процитовано 11 березня 2012.
Див. також
- Vulkan (API) — багатоплатформне API для 3D графіки створене Khronos Group.
- Mantle — Низькорівневе API від компанії AMD.