This article has multiple issues. Please helpimprove it or discuss these issues on thetalk page.(Learn how and when to remove these messages) (Learn how and when to remove this message)
|
| X Rendering Extension | |
|---|---|
xclock uses the render extension for rendering translucent and antialiased clock hands | |
| Original author | X.Org Foundation |
| Stable release | |
| Platform | Unix,Unix-like |
TheX Rendering Extension (Render orXRender) is an extension to theX11 core protocol to implementimage compositing in theX server, to allow an efficient display of transparent images.
It was written byKeith Packard in 2000 and was first released withXFree86 version 4.0.1. Its design was influenced byrio, the windowing system forPlan 9.[2]
The coreX Window System drawing protocol does not have a way to efficiently draw transparent objects: A computer display is composed of individualpixels, 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.[3]
Since many operations require transparency (for examplespatial anti-aliasing, especially duringfont rasterization, and transparency effects inwindow managers, such as transparent windows or menus), this limitation caused problems, and Xrender was implemented to address it.
It provides several rendering operations and also doesalpha blending. As of 2011[update] it serves primarily to implementantialiasedfonts, but for exampleKWin,KDE’s window manager uses it to drawdrop shadows andtranslucency in caseOpenGL is not available.
Geometric figures are rendered by client-sidetessellation into eithertriangles or trapezoids. Text is drawn by loading theglyphs into the server and rendering as a group.
It is designed to target the 3D graphics capabilities of newer video cards.
{{cite web}}:Missing or empty|title= (help)