OpenVG es una API diseñada para gráficos vectoriales 2D acelerados por hardware . Sus principales plataformas son teléfonos móviles, consolas de juegos y medios y dispositivos electrónicos de consumo. Fue diseñado para ayudar a los fabricantes a crear interfaces de usuario más atractivas al descargar el procesamiento de gráficos computacionalmente intensivo de la CPU a una GPU para ahorrar energía. OpenVG es muy adecuado [ cita requerida ] para acelerar Flash y el perfil móvil de secuencias SVG . La biblioteca OpenGL ES proporciona una funcionalidad similar para gráficos 3D. OpenVG está gestionado por consorcio tecnológico sin fines de lucro Khronos Group .
Desarrollador (es) | Khronos Group, Inc. |
---|---|
Lanzamiento estable | 1.1 / 3 de diciembre de 2008 |
Sistema operativo | Multiplataforma |
Tipo | API |
Licencia | Varios |
Sitio web | www |
Historia
El grupo OpenVG se formó el 6 de julio de 2004 por una selección de firmas importantes como 3Dlabs , Bitboys , Ericsson , Hybrid Graphics , Imagination Technologies , Motorola , Nokia , PalmSource , Symbian y Sun Microsystems . Otras empresas, incluidos los fabricantes de chips ATI , LG Electronics , Mitsubishi Electric , NVIDIA y Texas Instruments y proveedores de software y / o IP DMP, Esmertec , ETRI, Falanx Microsystems , Futuremark, HI Corporation, Ikivo , HUONE (antes MTIS), Superscape, y Wow4M también han participado en el grupo de trabajo. El primer borrador de la especificación del grupo estuvo disponible a finales de 2004, y la versión 1.0 de la especificación se publicó el 1 de agosto de 2005.
El 16 de enero de 2007, Zack Rusin de Tungsten Graphics anunció el inicio de una implementación independiente de código abierto de OpenVG construida sobre QtOpenGL .
Poco después, Ivan Leben inició otro proyecto de código abierto para implementar una implementación ANSI C de la especificación sobre OpenGL .
Desde el 27 de febrero de 2007, la implementación de referencia de muestra de OpenVG está disponible en el sitio web de Khronos bajo la licencia de código abierto del MIT.
El 9 de diciembre de 2008, el Grupo Khronos publicó públicamente la Especificación OpenVG 1.1. Esta última revisión incluye representación de glifos para texto acelerado, suavizado mejorado y compatibilidad con Flash. También se proporciona una implementación de referencia actualizada, así como una serie de pruebas de conformidad.
El 1 de mayo de 2009, Rusin agregó el rastreador de estado OpenVG a Mesa , que permite que los gráficos vectoriales SVG sean acelerados por hardware mediante cualquier controlador basado en Gallium3D . Se eliminó nuevamente en Mesa 10.6 el 15 de junio de 2015.
En septiembre de 2011, el grupo de trabajo de OpenVG decidió no realizar ninguna reunión regular para una mayor estandarización. Sin embargo, el grupo de trabajo decidió continuar con el mantenimiento y la promoción de la especificación OpenVG 1.1.
Implementaciones
En hardware
- Solución SH7269 basada en Renesas SuperH SH2A. Desarrollado para GUI integradas de bajo costo del sistema, con hasta 2.5 MB de SRAM integrada para búfer de imágenes. [1]
- Núcleo de gráficos AMD / ATI Z160 y Z180 OpenVG 1.x. [2] Implementado en Freescale i.MX35, i.MX51 e i.MX53. [3] [4] IP vendida a Qualcomm y rebautizada como "Adreno" por núcleos Snapdragon. [5]
- Unidades de procesamiento de gráficos ARM Mali [6]
- Broadcom BCM4760 SoC - Anunciado el 1 de junio de 2009. BCM4760 Contiene “un procesador de gráficos compatible con OpenGL (R) ES 1.1 / OpenVG (TM) 1.0” [7]
- Digital Media Professionals Inc. (DMP Inc.) SMAPH-F (diente de león VG) [8]
- Imagination PowerVR VGX150 OpenVG 1.1 [9]
- Imagination PowerVR SGX Series5: la compatibilidad con API incluye OpenGL ES 1.1 / 2.0, OpenVG 1.1, OpenGL 2.0 / 3.0 y DirectX9 / 10.1 [10] [11]
- Takumi GV500 - GV300, GV500 Acelerador de gráficos IP-Core [12]
- Think Silicon ThinkVG Graphics Core OpenVG 1.1 [13]
- Vivante GC350 (núcleo de gráficos 2D) OpenVG 1.1
- Vivante GC400 y superior son núcleos de gráficos 3D compatibles con OpenGL ES 2.0 y OpenVG 1.1 [14] [15]
- Las GPU Adreno son compatibles con OpenVG 1.1. Qualcomm proporciona un SDK para Android. [dieciséis]
Para GPU
- Mesa Gallium3D - VMware / Tungsten Graphics proporciona implementaciones OpenVG para tarjetas con controladores Gallium (los controladores Gallium para nVidia, AMD / ATI y VMware están disponibles). [17] OpenVG se ha eliminado de Mesa en la versión 10.6.
Para aceleradores de medios
- HuOne AlexVG-forma: aceleración de la API de gráficos vectoriales en hardware de aceleración de medios. Utilizando la potencia de hardware de gráficos de mapa de bits multimedia o 2D.
En OpenGL, OpenGL ES
- Hooked Wireless OpenVG: implementación completa de OpenVG 1.01 y OpenVG 1.1, implementado sobre OpenGL ES y es totalmente compatible. Afirmación "Aprovecha la tecnología patentada de Hooked en las áreas de teselado y triangulación para formas y curvas". Publicado por primera vez en febrero de 2008. [18]
- HuOne AlexVG-forge: un motor OpenVG que es un estándar de gráficos vectoriales 2D mediante el uso de un chip gráfico compatible con OpenGL / OpenGL ES. [19]
- Mazatech AmanithVG GLE - comercial. Construido sobre OpenGL 1.1+ y OpenGL ES 1.x. Afirma "lograr un mejor rendimiento que los rasterizadores de software en términos de animaciones de alta resolución y efectos especiales complejos (transparencias, desvanecimiento, rotoscalado en tiempo real y muchos otros)". [20]
- MonkVG: código abierto (BSD), solo " similar a OpenVG " [21]
- ShivaVG - código abierto (LGPL) [22]
En software
- Implementación de referencia de Khronos OpenVG
- HuOne AlexVG - Publicado por primera vez en septiembre de 2005
- Mazatech AmanithVG: biblioteca multiplataforma OpenVG con software puro y backends de renderizado OpenGL (/ ES 1.1)
- Vega - Rastreador de estado Gallium3D
- GingkoVG
Ver también
- cairo - Juego de herramientas de texto y dibujo vectorial gráfico multiplataforma 2D. OpenVG-1.xy la API de cairo difieren en alcance, ya que cairo intenta unificar la salida de impresión en múltiples backends con soporte para texto. [23] Cairo puede usar OpenVG como backend.
- Direct2D
- Motor de gráficos Skia
- Marco de Starling
Referencias
- ^ "SH7268, SH7269 | Renesas Electronics" . Renesas.com. Archivado desde el original el 6 de julio de 2011 . Consultado el 11 de marzo de 2012 .
- ^ "AMD presenta productos multimedia para dispositivos móviles ricos en medios" . Videsignline.com. Archivado desde el original el 20 de abril de 2008 . Consultado el 11 de marzo de 2012 .
- ^ "Página de resumen del producto i.MX357" . Freescale.com . Consultado el 11 de marzo de 2012 .
- ^ Procesador de aplicaciones Freescale con aceleración nativa OpenVG1.1
- ^ Scott Ferguson (20 de enero de 2009). "AMD vende la división de teléfonos móviles a Qualcomm por $ 65 millones" . Eweek.com . Consultado el 16 de junio de 2013 .
- ^ "Mali-400 MP" . BRAZO . Consultado el 16 de junio de 2013 .
- ^ "Copia archivada" . Archivado desde el original el 27 de junio de 2009 . Consultado el 3 de junio de 2009 .CS1 maint: copia archivada como título ( enlace )
- ^ "Productos y servicios | Digital Media Professionals Inc" . Dmprof.com. Archivado desde el original el 10 de marzo de 2012 . Consultado el 11 de marzo de 2012 .
- ^ [1] Archivado el 10 de junio de 2009 en la Wayback Machine.
- ^ "PowerVR SGX Series5 Graphics IP Core Family" . Imgtec.com . Consultado el 11 de marzo de 2012 .
- ^ Núcleos gráficos POWERVR SGX520, SGX530 y SGX535 con soporte OpenVG 1.1
- ^ "Información del producto | TAKUMI Corporation" (en japonés). Gshark.com . Consultado el 11 de marzo de 2012 .
- ^ "ThinkVG Graphics Core OpenVG 1.1" . Archivado desde el original el 1 de agosto de 2012 . Consultado el 13 de septiembre de 2012 .
- ^ "Catálogo Vivante IP" . Consultado el 13 de diciembre de 2011 .
- ^ "Vivante Graphics Processor IP" . Archivado desde el original el 1 de diciembre de 2011 . Consultado el 13 de diciembre de 2011 .
- ^ "Adreno SDK en QDevNet" . Consultado el 24 de julio de 2013 .
- ^ "[Phoronix] Gallium3D recibe soporte para redes" . Phoronix.com. 2009-06-01 . Consultado el 11 de marzo de 2012 .
- ^ [2] Archivado el 11 de abril de 2009 en la Wayback Machine.
- ^ "HuOne AlexVG-forja" . Archivado desde el original el 22 de abril de 2016 . Consultado el 27 de marzo de 2013 .
- ^ Michele Fabbri. "Proyecto AmanithVG" . Amanith.org. Archivado desde el original el 2 de marzo de 2012 . Consultado el 11 de marzo de 2012 .
- ^ micahpearlman. "micahpearlman / MonkVG · GitHub" . Github.com . Consultado el 11 de marzo de 2012 .
- ^ ShivaVG
- ^ comparación entre OpenVG-1.O y la API de cairo
- General
- Foros públicos
- Registro público
- Empresas compatibles con OpenVG
- Especificación OpenVG 1.1
- Comunicado de prensa de Khronos: Khronos invita a la revisión pública del borrador de la especificación OpenVG
- Comunicado de prensa de Khronos - Khronos Group lanza la especificación OpenVG 1.0
- Comunicado de prensa de BitBoys: Bitboys presenta el procesador de gráficos vectoriales para dispositivos móviles
- Comunicado de prensa de HUONE - HUONE anuncia la implementación de OpenVG "AlexVG"
- Comunicado de prensa de OpenVG 1.1
- Especificación OpenVG 1.1
enlaces externos
- Página web oficial
- Implementaciones OpenVG 1.1 y 1.0.1 de Mazatech: AmanithVG SRE (motor de rasterización de software), AmanithVG GLE (motor OpenGL / OpenGL ES)
- Implementación de OpenVG ANSI C de Ivan Leben
- Implementación de OpenVG de Zack Rusin sobre QtOpenGL (de Qt 4.3)
- http://old.siggraph.org/publications/2006cn/course16/OpenVG.pdf
- Implementación de OpenVG de HuaYue Tech
- GingkoVG