DRI
Información general
Desarrollador freedesktop.org
Lanzamiento inicial agosto de 1998
Licencia [1]
Información técnica
Programado en C
Versiones
Última versión estable 2.4.5 (23 de febrero de 2009)
Enlaces

En informática, Direct Rendering Infrastructure (abreviado como DRI, Infraestructura de Renderizado Directo) es una interfaz usada en el sistema de ventanas X (X Window System), para que las aplicaciones de usuario puedan acceder de manera segura al hardware de video sin tener que pasar los datos por el servidor X, cosa que degrada el rendimiento. La aplicación principal es proveer de aceleración por hardware a la biblioteca Mesa, que es una implementación libre de OpenGL. DRI también ha sido adaptado para proveer aceleración OpenGL al framebuffer de Linux, sin ejecución de un servidor X.

El proyecto fue iniciado por Jens Owen, de Precision Insight. La primera versión ampliamente distribuida fue como parte de XFree86 4.0, y en la actualidad está integrado dentro de X.Org. En la actualidad su mantenimiento corre a cargo de Tungsten Graphics y muchos otros desarrolladores de software libre.

El soporte OpenGL de DRI se realiza mediante la unión de varios componentes. El primero de ellos es Direct Rendering Manager (DRM). DRM es una combinación de dos módulos del kernel, uno con el código principal de DRM, y otro específico del chip gráfico que provee API para acceder a las clases diferentes de hardware gráfico (como pueden ser ATI o NVidia). El segundo componente es un driver para el espacio de usuario, el cual contiene un driver OpenGL que típicamente realiza la labor de preparar buffers de comandos para ser enviados al hardware gráfico vía DRM, e interactúa con el sistema de ventanas para sincronizar el acceso al hardware de vídeo. El tercer componente es un servidor gráfico. En el entorno de ventanas X, es la biblioteca libdri.so y un driver DRI DDX para 2D. En la implementación para framebuffer es miniglx, el cual inicializa DRM y provee algunas de las API de X al driver de espacio de usuario a pesar de la ausencia del servidor X completo.

Se han escrito varios drivers DRI de código libre para diferente hardware gráfico, incluyendo ATI Mach64, ATI Rage128, ATI Radeon, 3dfx Voodoo3 hasta Voodoo5, Matrox G200 hasta G400, la serie 300 de SiS, Intel i810 hasta i965, S3 Savage, y VIA. Algunos fabricantes de tarjetas gráficas han escrito drivers para DRI de código cerrado, incluyendo ATI y Kyro. DRI es soportado en Linux, FreeBSD y ha sido portado a NetBSD en el pasado.

DRI2

editar

Desde el 2007, en el X Developers' Summit, el desarrollo de una versión sucesora de DRI empezó. La nueva infraestructura para renderizado arregla muchas limitaciones del antiguo diseño, en particular en combinación de DRI con AIGLX. A principios de 2008 comenzó el desarrollo del primer driver de gráficos DRI2 en el árbol de desarrollo del servidor X.Org.

Los componentes necesarios de la infraestructura DRI2 están actualmente incluidos en X.Org Server 1.6, Linux 2.6.28 y en Mesa 3D 7.4.

Referencias

editar

Véase también

editar

Enlaces externos

editar

📚 Artikel Terkait di Wikipedia

Sombreador

en algoritmos de animación o iluminación (p. ej., tiled forward rendering). Algunas API de renderizado permiten que los sombreadores de cómputo compartan

Metal (API)

Metal es una API de sombreado y gráficos 3D acelerada por hardware de bajo nivel y baja sobrecarga creada por Apple. Debutó en iOS 8. Metal combina funciones

Blink

2013.  «Blink: A rendering engine for the Chromium project». The Chromium Blog.  «Google going its own way, forking WebKit rendering engine». Ars Technica

EXA (X11)

servidor X. El conjunto de aceleración 3D se proporcionó a través del Direct Rendering Manager, que trabajó mapeando imágenes representadas en 3D sobre la imagen

Controlador de dispositivos gráficos de fuente abierta y libre

y abierto se desarrollan a través del Proyecto Mesa. Intel GMA Direct Rendering Infrastructure (DRI) Gráficos 3D por computadora Proyectos de software

Sombreado diferido

simplificación de la segmentación del software para el rendering. Una desventaja clave de deferred rendering es la incapacidad para manejar la transparencia

GeoJSON

de datos desde el 19 de marzo de 2014.​​ GitHub también apoya GeoJSON rendering y Potrace GeoJSON export.​ Una implementación de referencia​ de la especificación

PhantomJS

automatizar la interacción de las páginas web. PhantomJS proporciona una API de Javascript que permite la navegación automatizada, capturas de pantalla