Software
OpenVG es una API diseñada para gráficos vectoriales 2D acelerados por hardware . Sus principales plataformas son los teléfonos móviles, las consolas de juegos y multimedia y los dispositivos electrónicos de consumo. Fue diseñada para ayudar a los fabricantes a crear interfaces de usuario más atractivas al descargar el procesamiento de gráficos de alto consumo computacional de la CPU a una GPU para ahorrar energía. La biblioteca OpenGL ES proporciona una funcionalidad similar para gráficos 3D. OpenVG está gestionado por el consorcio tecnológico sin fines de lucro Khronos Group .
Historia
El grupo OpenVG fue formado el 6 de julio de 2004 por una selección de importantes empresas, entre las que se incluyen 3Dlabs , Bitboys , Ericsson , Hybrid Graphics , Imagination Technologies , Motorola , Nokia , PalmSource , Symbian y Sun Microsystems . Otras empresas, entre las que se incluyen los fabricantes de chips ATI , LG Electronics , Mitsubishi Electric , NVIDIA y Texas Instruments y los proveedores de software y/o propiedad intelectual DMP, Esmertec , ETRI, Falanx Microsystems , Futuremark, HI Corporation, Ikivo, HUONE (anteriormente MTIS), Superscape y Wow4M, también han participado en el grupo de trabajo. El primer borrador de la especificación del grupo se puso a disposición 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 MIT.
El 9 de diciembre de 2008, el Grupo Khronos publicó la Especificación OpenVG 1.1. Esta última revisión incluye representación de glifos para texto acelerado, suavizado de líneas mejorado y compatibilidad con Flash. También se proporciona una implementación de referencia actualizada, así como un conjunto de pruebas de conformidad.
El 1 de mayo de 2009, Rusin agregó el rastreador de estado OpenVG a Mesa , lo que permite acelerar por hardware los gráficos vectoriales SVG con 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 continuar con la estandarización. Sin embargo, decidió continuar con el mantenimiento y la promoción de la especificación OpenVG 1.1.
Implementaciones
En hardware
- Solución SH7269 basada en SuperH SH2A de Renesas. Desarrollada para interfaces gráficas de usuario integradas de bajo costo, con hasta 2,5 MB de SRAM integrada para búfer de imágenes. [2]
- Núcleo gráfico AMD/ATI Z160 y Z180 OpenVG 1.x. [3] Implementado en Freescale i.MX35, i.MX51 y i.MX53. [4] [5] Propiedad intelectual vendida a Qualcomm y rebautizada como "Adreno" para los núcleos Snapdragon. [6]
- Unidades de procesamiento gráfico ARM Mali [7]
- SoC Broadcom BCM4760: anunciado el 1 de junio de 2009. El BCM4760 contiene “un procesador gráfico compatible con OpenGL(R) ES 1.1/OpenVG(TM) 1.0” [8]
- Digital Media Professionals Inc. (DMP Inc.) SMAPH-F (diente de león VG) [9]
- Imaginación PowerVR VGX150 OpenVG 1.1 [10]
- 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 [11] [12]
- Acelerador gráfico Takumi GV500 – GV300, GV500 IP-Core [13]
- Think Silicon ThinkVG Núcleo gráfico OpenVG 1.1 [14]
- Vivante GC350 (núcleo de gráficos 2D) OpenVG 1.1
- Vivante GC400 y superiores son núcleos de gráficos 3D compatibles con OpenGL ES 2.0 y OpenVG 1.1 [15] [16]
- Las GPU Adreno son compatibles con OpenVG 1.1. Qualcomm ofrece un SDK para Android. [17]
Para GPU
- Mesa Gallium3D – VMware/Tungsten Graphics ofrece implementaciones de OpenVG para tarjetas con controladores Gallium (hay controladores Gallium disponibles para nVidia, AMD/ATI y VMware). [18] OpenVG se ha eliminado de Mesa en la versión 10.6.
Para aceleradores de medios
- AlexVG-forma de Hanwha Systems: API de aceleración de gráficos vectoriales en hardware de aceleración de medios. Utiliza la potencia del hardware de gráficos de mapa de bits 2D o multimedia.
Sobre OpenGL, OpenGL ES
- Hooked Wireless OpenVG: implementación completa de OpenVG 1.01 y OpenVG 1.1, implementado sobre OpenGL ES y totalmente compatible. Afirmación: “Aprovecha la tecnología patentada de Hooked en las áreas de teselación y triangulación para formas y curvas”. Lanzado por primera vez en febrero de 2008. [19]
- Hanwha Systems AlexVG-forge: un motor OpenVG que es un estándar de gráficos vectoriales 2D que utiliza el chip gráfico compatible con OpenGL/OpenGL ES. [20]
- Mazatech AmanithVG GLE – comercial. Desarrollado 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, rotoescalado en tiempo real y muchos otros)”. [21]
- MonkVG – código abierto (BSD), solo “ como OpenVG ” [22]
- ShivaVG – código abierto (LGPL) [23]
- ShaderVG: basado en ShivaVG pero implementa llamadas de dibujo de sombreadores GLSL [24]
En software
- Implementación de referencia de Khronos OpenVG
- Hanwha Systems AlexVG: lanzado por primera vez en septiembre de 2005
- Mazatech AmanithVG: biblioteca multiplataforma OpenVG con backends de renderizado de software puro y OpenGL (/ES 1.1)
- Vega – Rastreador de estado de Gallium3D
- Ginkgo biloba
Véase también
- Cairo – conjunto de herramientas de dibujo vectorial y texto multiplataforma en 2D. OpenVG-1.x y la API de Cairo difieren en su alcance, ya que Cairo intenta unificar la salida de impresión en múltiples backends con soporte para texto. [25] Cairo puede usar OpenVG como backend.
- Direct2D
- Motor gráfico Skia
- Marco de Starling
Referencias
- ^ "OpenVG - el estándar para la aceleración de gráficos vectoriales". 19 de julio de 2011.
- ^ "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 con gran capacidad multimedia". Videsignline.com. Archivado desde el original el 2011-08-09 . Consultado el 2012-03-11 .
- ^ "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 su división de teléfonos móviles a Qualcomm por 65 millones de dólares". Eweek.com . Consultado el 16 de junio de 2013 .
- ^ "Mali-400 MP". ARM . Consultado el 16 de junio de 2013 .
- ^ "Broadcom Corporation; BRCM Mobile & Wireless :: El 'PND-on-a-Chip' de Broadcom integra capacidades GPS avanzadas de bajo consumo con un potente procesamiento de aplicaciones para una navegación gráfica sorprendente". Archivado desde el original el 27 de junio de 2009. Consultado el 3 de junio de 2009 .
- ^ "Productos y servicios | Digital Media Professionals Inc". Dmprof.com. Archivado desde el original el 2012-03-10 . Consultado el 2012-03-11 .
- ^ [1] Archivado el 10 de junio de 2009 en Wayback Machine .
- ^ "Familia de núcleos de IP de gráficos PowerVR SGX Series5". Imgtec.com . Consultado el 11 de marzo de 2012 .
- ^ Núcleos gráficos POWERVR SGX520, SGX530 y SGX535 con soporte para 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 IP de Vivante" . Consultado el 13 de diciembre de 2011 .
- ^ "Procesador gráfico Vivante 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 obtiene soporte para redes". Phoronix.com. 2009-06-01 . Consultado el 2012-03-11 .
- ^ [2] Archivado el 11 de abril de 2009 en Wayback Machine .
- ^ "HuOne AlexVG-forge". 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 2012-03-02 . Consultado el 2012-03-11 .
- ^ micahpearlman. "micahpearlman/MonkVG · GitHub". Github.com . Consultado el 11 de marzo de 2012 .
- ^ ShivaVG
- ^ Takuma Hayashi. "tqm-dev/ShaderVG · GitHub". Github.com . Consultado el 1 de marzo de 2023 .
- ^ Comparación entre OpenVG-1.O y la API de Cairo
- General
- Foros públicos
- Registro público
- Empresas que cumplen 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 publica la especificación OpenVG 1.0
- Nota de prensa de BitBoys: Bitboys presenta un procesador de gráficos vectoriales para dispositivos móviles
- Comunicado de prensa de OpenVG 1.1
- Especificación OpenVG 1.1
Enlaces externos
- Sitio web oficial
- Implementación ANSI C OpenVG de Ivan Leben
- Implementación de OpenVG de Zack Rusin sobre QtOpenGL (a partir de Qt 4.3)
- Ginkgo biloba