World Library  
Flag as Inappropriate
Email this Article

X Rendering Extension

Article Id: WHEBN0002645939
Reproduction Date:

Title: X Rendering Extension  
Author: World Heritage Encyclopedia
Language: English
Subject: Glitz (software), X Window extensions, Xorg.conf, Tom Duff, MIT-SHM
Collection: Freedesktop.Org, X Window Extensions
Publisher: World Heritage Encyclopedia
Publication
Date:
 

X Rendering Extension

X Rendering Extension
xclock uses the render extension for rendering translucent and antialiased clock hands
Original author(s) X.Org Foundation
Stable release 0.11 / July 15, 2009 (2009-07-15)
Platform UNIX

The X Rendering Extension (Render or XRender) is an extension to the X11 core protocol to implement image compositing in the X server, to allow an efficient display of transparent images.

Contents

  • History 1
  • Motivation 2
  • Features 3
  • References 4
  • External links 5

History

It was written by Keith Packard in 2000 and was first released with XFree86 version 4.0.1. Its design was influenced by rio, the windowing system for Plan 9.[1]

Motivation

The core X Window System drawing protocol does not have a way to efficiently draw transparent objects: A computer display is composed of individual pixels, which can only show a single color at a time. Thus transparency can only be achieved by mixing the colors of the transparent object to be drawn with the background color (alpha compositing). However, the standard X protocol only allows drawing with solid color, so the only way to achieve transparency is to fetch the background color from the screen, mix it with the object color, then write it back, which is fairly inefficient.[2]

Since many operations require transparency (for example spatial anti-aliasing, especially during font rasterization, and transparency effects in window managers, such as transparent windows or menus), this limitation caused problems, and Xrender was implemented to address it.

Features

It provides several rendering operations and also does alpha blending. As of 2011 it serves primarily to implement antialiased fonts, but for example KWin, KDE’s window manager uses it to draw drop shadows and translucency in case OpenGL is not available.

Geometric figures are rendered by client-side tessellation into either triangles or trapezoids. Text is drawn by loading the glyphs into the server and rendering as a group.

It is designed to target the 3D graphics capabilities of newer video cards.

Unlike OpenGL, it uses premultiplied alpha.

References

  1. ^ "Design and Implementation of the X Rendering Extension". 2000. Retrieved 2013-11-03. 
  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.

External links

  • The X Rendering Extension (Keith Packard, Latest Official Specification)
  • The Xrender Library
  • A New Rendering Model for X (Keith Packard, USENIX 2000)
  • High Performance X Servers in the Kdrive Architecture (Eric Anholt, USENIX '04)
  • X.Org Glossary (X.Org)
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.