La Extensión X Rendering (Render o XRender) es una extensión del protocolo base de X11 para implementar la composición alfa en el servidor X, para permitir una visualización eficiente de imágenes transparentes.

X Rendering Extension

xclock utiliza la extensión de renderizado para renderizar agujas de reloj translúcidas y antialias
Información general
Tipo de programa software
Autor X.Org Foundation
Desarrollador Fundación X.Org
Licencia Licencia MIT
Información técnica
Plataformas admitidas UNIX-like
Motor 0.11

Historia editar

Fue escrito por Keith Packard en 2000 y se lanzó por primera vez con XFree86 versión 4.0.1. Su diseño fue influenciado por rio, el sistema de ventanas para Plan 9.[1]

Motivación editar

El protocolo de dibujo principal del sistema X Window no tiene una forma eficiente de dibujar objetos transparentes: una pantalla de computadora se compone de píxeles individuales, que solo pueden mostrar un solo color a la vez. Por lo tanto, la transparencia solo se puede lograr mezclando los colores del objeto transparente que se dibujará con el color de fondo (composición alfa). Sin embargo, el protocolo estándar X solo permite dibujar con un color sólido, por lo que la única forma de lograr la transparencia es recuperar el color de fondo de la pantalla, mezclarlo con el color del objeto y luego volver a escribirlo, lo que es bastante ineficiente.[2]

Dado que muchas operaciones requieren transparencia (por ejemplo, anti-aliasing_espacial, especialmente durante rasterización de fuentes y efectos de transparencia en gestores de ventanas, como ventanas o menús transparentes), esta limitación causó problemas y se implementó Xrender para abordarla.

Características editar

Proporciona varias operaciones de renderizado y también mezcla alfa. Para 2011, sirve principalmente para implementar fuentes antialias, pero por ejemplo KWin, el administrador de ventanas de KDE lo usa para dibujar sombras paralelas y translucidez en caso de que OpenGL no esté disponible.

Las figuras geométricas se representan mediante teselación del lado del cliente en triángulos o trapecios. El texto se dibuja cargando los glifos en el servidor y renderizado como un grupo.

Está diseñado para apuntar a las capacidades gráficas 3D de las tarjetas de video más nuevas.

Referencias editar

  1. «Design and Implementation of the X Rendering Extension». 2000. Consultado el 3 de noviembre de 2013. 
  2. Xft - the X Font library Drawing anti-aliased text with the core protocol involves fetching pixels from the destination, merging in the glyphs and shipping them back. This can be a performance problem when the latency between client and server is high.

Enlaces externos editar