Quartz Compositor es el servidor de visualización y el gestor de ventanas de composición en macOS . Es responsable de presentar y mantener los gráficos rasterizados y renderizados del resto del marco de trabajo Core Graphics y otros renderizadores de la familia de tecnologías Quartz . [ 1 ]
Descripción general
La salida de mapa de bits de Quartz 2D , OpenGL , Core Image , QuickTime u otro proceso se escribe en una ubicación de memoria específica, o almacenamiento de respaldo . El Compositor lee los datos del almacenamiento de respaldo y los ensambla en una sola imagen para la visualización, escribiendo dicha imagen en la memoria de búfer de fotogramas de la tarjeta gráfica. Quartz Compositor solo acepta datos rasterizados y es el único proceso que puede acceder directamente al búfer de fotogramas de la tarjeta gráfica. [ 2 ]
Para gestionar ventanas individuales, Quartz Compositor recibe una imagen de mapa de bits del contenido de la ventana, junto con su posición, proporcionada por su motor de renderizado. La elección del motor de renderizado depende de cada aplicación, aunque la mayoría utiliza Quartz 2D. Posteriormente, Quartz Compositor actúa como una mesa de mezclas visual, añadiendo la ventana seleccionada a la escena completa para su visualización.
En su función de gestor de ventanas, Quartz Compositor también dispone de una cola de eventos que recibe eventos, como pulsaciones de teclas y clics del ratón. Quartz Compositor toma los eventos de la cola, determina qué proceso es el propietario de la ventana donde se produjo el evento y lo pasa a dicho proceso. [ 3 ]
Cuarzo Extremo
Mac OS X v10.2 introdujo la aceleración gráfica para el Compositor Quartz, que requiere muchos menos ciclos de procesador para la composición de escenas. El Compositor Quartz encapsula cada almacenamiento subyacente renderizado en un mapa de texturas o superficie OpenGL, que luego se envía a la GPU para componer las superficies y los mapas en una imagen final, que posteriormente se entrega al búfer de fotogramas.
Quartz Extreme solo utiliza comandos OpenGL y requiere una tarjeta gráfica conectada a un bus AGP 2X o superior (incluidos AGP 4X, 8X y PCI Express ), compatible con texturas y mapas de tamaño arbitrario, ya que muchos de los renderizadores no tienen limitación de tamaño (Quartz 2D, por ejemplo). [ 2 ] En Mac OS X Tiger , se habilita automáticamente en sistemas Mac con uno de los siguientes tipos de tarjetas gráficas : [ 4 ]
- AMD (ATI) Radeon , basada en AGP, 16 MB de VRAM como mínimo o superior.
- NVIDIA GeForce2 MX , 16 MB de VRAM como mínimo, o superior.
A partir de OS X El Capitan , Quartz Extreme está habilitado en todos los Mac compatibles.
Cuarzo GL
QuartzGL (conocido como Quartz 2D Extreme cuando se introdujo en Mac OS X Tiger ) es la aceleración por GPU de la API Quartz 2D. Con QuartzGL activado, todos los comandos de dibujo de Quartz se traducen a comandos OpenGL y se ejecutan en la GPU. Esto difiere de Quartz Extreme, que sigue ejecutando los comandos de dibujo de Quartz en la CPU, pero realiza la composición final utilizando la GPU.
En OS X Mountain Lion , QuartzGL aún no estaba habilitado por defecto. Sin embargo, era posible habilitarlo mediante la aplicación Quartz Debug, incluida en las Herramientas para desarrolladores de Apple . QuartzGL se desactivaba de nuevo al salir de Quartz Debug. Una solución alternativa consistía en forzar el cierre de Quartz Debug, lo que dejaba QuartzGL habilitado en todo el sistema.
Todas las tarjetas gráficas compatibles con Core Image también son compatibles con QuartzGL.
Véase también
Referencias
- ↑ Russell, Matthew (11 de octubre de 2005). "¿Qué es Quartz (o por qué Windows no puede hacer eso)?" . O'Reilly Mac DevCenter . O'Reilly Media. Archivado del original el 27 de mayo de 2013. Consultado el 17 de noviembre de 2011 .
- ^ Siracusa, John (28 de abril de 2005) . "Mac OS X 10.4 Tigre" . ArsTechnica . Consultado el 15 de enero de 2010 .
- ↑ "Apple - Desarrollador - Descripción general de la tecnología Mac OS X: gráficos, imágenes y multimedia" . Consultado el 18 de abril de 2007 .
- ↑ "Apple - Mac OS X 10.4: Requisitos para los gráficos Quartz Extreme y Core Image" . Archivado del original el 19 de marzo de 2012. Consultado el 12 de febrero de 2007 .
Enlaces externos
- Entorno de gráficos y ventanas (archivado) – Documentación para desarrolladores de Apple
- Servicios de pantallas Quartz – Documentación para desarrolladores de Apple
- Gestores de ventanas de composición
- Servidores de visualización
- Interfaz de usuario de macOS