Quartz Compositor is the
display server (and at the same time the
compositing window manager
A compositing manager, or compositor, is software that provides applications with an off-screen data buffer, buffer for each window, then Compositing, composites these window buffers into an image representing the screen and writes the result into ...
) in
macOS
macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
. It is responsible for presenting and maintaining
rasterized, rendered graphics from the rest of the
Core Graphics framework and other renderers in the
Quartz technologies family.
Overview
The bitmap output from
Quartz 2D,
OpenGL
OpenGL (Open Graphics Library) is a Language-independent specification, cross-language, cross-platform application programming interface (API) for rendering 2D computer graphics, 2D and 3D computer graphics, 3D vector graphics. The API is typic ...
,
Core Image
Core Image is a pixel-accurate, near-realtime, non-destructive image processing technology in Mac OS X. Implemented as part of the QuartzCore framework of Mac OS X 10.4 and later, Core Image provides a plugin-based architecture for applying filt ...
,
QuickTime
QuickTime (or QuickTime Player) is an extensible multimedia architecture created by Apple, which supports playing, streaming, encoding, and transcoding a variety of digital media formats. The term ''QuickTime'' also refers to the QuickTime Pla ...
, or other process is written to a specific memory location, or ''backing store''. The Compositor then reads the data from the backing stores and assembles each into one image for the display, writing that image to the frame buffer memory of the graphics card. Quartz Compositor only accepts raster data, and is the only process that can directly access the graphics frame buffer.
In managing individual windows, Quartz Compositor accepts a
bitmap
In computing, a bitmap (also called raster) graphic is an image formed from rows of different colored pixels. A GIF is an example of a graphics image file that uses a bitmap.
As a noun, the term "bitmap" is very often used to refer to a partic ...
image of the window's contents from its renderer, along with its position. The choice of the renderer is up to the individual application, although most use Quartz 2D. Quartz Compositor then acts as a "visual mixing board," by adding the given window to the whole scene for the display.
In its role as window manager, Quartz Compositor also has an
event queue which receives events, such as key strokes and mouse clicks. The Quartz Compositor takes the events from the queue, determines which process owns the window where the event occurred, and passes the event on to the process.
Quartz Extreme
Mac OS X v10.2 introduced Quartz Extreme: graphics processor (GPU) acceleration for the Quartz Compositor. With Quartz Extreme, far fewer central processing unit (CPU) cycles are needed for scene composition. Instead, the Quartz Compositor encapsulates each rendered backing store in an OpenGL texture map or surface. It then directs the GPU to compose the surfaces and maps to provide the final image, which is delivered to the frame buffer.
Quartz Extreme only uses OpenGL commands, and requires a graphics card connected to an
AGP 2X or faster bus (including AGP 4X, 8X, and
PCI Express
PCI Express (Peripheral Component Interconnect Express), officially abbreviated as PCIe, is a high-speed standard used to connect hardware components inside computers. It is designed to replace older expansion bus standards such as Peripher ...
), supporting textures and maps of arbitrary size, since many of the renderers have no size limitation (Quartz 2D for example).
In
Mac OS X Tiger
Mac OS X Tiger (version 10.4) is the 5th major release of macOS, Apple's desktop and server operating system for Mac computers. Tiger was released to the public on April 29, 2005, for US$129.95 as the successor to Mac OS X 10.3 Panther. Inc ...
, it is automatically enabled on
Mac
Mac or MAC may refer to:
Common meanings
* Mac (computer), a line of personal computers made by Apple Inc.
* Mackintosh, a raincoat made of rubberized cloth
* Mac, a prefix to surnames derived from Gaelic languages
* McIntosh (apple), a Canadi ...
systems with one of the following types of
graphics card
A graphics card (also called a video card, display card, graphics accelerator, graphics adapter, VGA card/VGA, video adapter, display adapter, or colloquially GPU) is a computer expansion card that generates a feed of graphics output to a displa ...
s:
*
AMD (ATI) Radeon, AGP-based, 16 MB VRAM minimum, or better
*
NVIDIA GeForce2 MX, 16 MB VRAM minimum, or better
As of
OS X El Capitan
OS X El Capitan ( ) () is the twelfth major release of macOS (named OS X at the time of El Capitan's release), Apple Inc.'s desktop and server operating system for Macintosh. It focuses mainly on performance, stability, and security. Followi ...
, Quartz Extreme is enabled on all supported Macs.
QuartzGL
QuartzGL (called Quartz 2D Extreme when it was introduced in
Mac OS X Tiger
Mac OS X Tiger (version 10.4) is the 5th major release of macOS, Apple's desktop and server operating system for Mac computers. Tiger was released to the public on April 29, 2005, for US$129.95 as the successor to Mac OS X 10.3 Panther. Inc ...
) is GPU acceleration for the Quartz 2D API. With QuartzGL enabled, all Quartz drawing commands are translated to OpenGL commands and executed on the GPU. This differs from Quartz Extreme, which still executes Quartz drawing commands on the CPU but performs final composition using the GPU.
In
OS X Mountain Lion
OS X Mountain Lion (version 10.8) is the ninth major release of macOS, Apple Inc.'s desktop and server operating system for Macintosh computers. OS X Mountain Lion was released on July 25, 2012, for purchase and download through the Mac App S ...
, QuartzGL was still not enabled by default. However, it was possible to enable it using the Quartz Debug application included in the
Apple Developer Tools
The Apple Developer Tools are a suite of software tools from Apple to aid in making software dynamic titles for the macOS and iOS platforms. The developer tools were formerly included on macOS install media, but are now exclusively distributed ...
. QuartzGL would be disabled once again upon quitting the Quartz Debug utility. A workaround was to force quit the Quartz Debug application, which would leave QuartzGL enabled system-wide.
All graphics cards capable of supporting
Core Image
Core Image is a pixel-accurate, near-realtime, non-destructive image processing technology in Mac OS X. Implemented as part of the QuartzCore framework of Mac OS X 10.4 and later, Core Image provides a plugin-based architecture for applying filt ...
also support QuartzGL.
See also
*
Quartz
Quartz is a hard, crystalline mineral composed of silica (silicon dioxide). The Atom, atoms are linked in a continuous framework of SiO4 silicon–oxygen Tetrahedral molecular geometry, tetrahedra, with each oxygen being shared between two tet ...
*
Compositing window manager
A compositing manager, or compositor, is software that provides applications with an off-screen data buffer, buffer for each window, then Compositing, composites these window buffers into an image representing the screen and writes the result into ...
*
X11
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X originated as part of Project Athena at Massachusetts Institute of Technology (MIT) in 1984. The X protocol has been at ...
*
Wayland
*
DXGI
*
Desktop Window Manager
Desktop Window Manager (DWM, previously Desktop Compositing Engine or DCE in builds of pre-reset Windows Longhorn) is the compositing window manager in Microsoft Windows since Windows Vista that enables the use of hardware acceleration to render ...
References
External links
The Graphics and Windowing Environment (archived) Apple Developer Documentation
Quartz Display Services Apple Developer Documentation
{{OS X
Compositing window managers
Display servers
MacOS user interface