stringtranslate.com

Compositor de cuarzo

Quartz Compositor es el servidor de visualización (y al mismo tiempo el gestor de ventanas de composición ) de macOS . Es responsable de presentar y mantener gráficos rasterizados y renderizados del resto del marco 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 memoria de respaldo . Luego, el Compositor lee los datos de las memorias de respaldo y ensambla cada uno de ellos en una imagen para la pantalla, escribiendo esa imagen en la memoria de búfer de cuadros de la tarjeta gráfica. Quartz Compositor solo acepta datos rasterizados y es el único proceso que puede acceder directamente al búfer de cuadros de gráficos. [2]

Para gestionar ventanas individuales, Quartz Compositor acepta una imagen de mapa de bits del contenido de la ventana desde su renderizador, junto con su posición. La elección del renderizador depende de cada aplicación, aunque la mayoría utiliza Quartz 2D. Quartz Compositor actúa entonces como una "mesa de mezclas visual", añadiendo la ventana dada a toda la escena para su visualización.

En su función de administrador de ventanas, Quartz Compositor también tiene 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 en la que se produjo el evento y pasa el evento al proceso. [3]

Cuarzo extremo

Mac OS X v10.2 introdujo Quartz Extreme: aceleración del procesador gráfico (GPU) para Quartz Compositor. Con Quartz Extreme, se necesitan muchos menos ciclos de la unidad central de procesamiento (CPU) para la composición de la escena. En cambio, Quartz Compositor encapsula cada fondo renderizado en un mapa o superficie de textura OpenGL. Luego, le indica a la GPU que componga las superficies y los mapas para proporcionar la imagen final, que se envía al búfer de cuadros.

Quartz Extreme sólo utiliza comandos OpenGL, y requiere una tarjeta gráfica conectada a un bus AGP 2X o más rápido (incluyendo AGP 4X, 8X y PCI Express ), que admita 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]

A partir de OS X El Capitan , Quartz Extreme está habilitado en todas las Mac compatibles.

Cuarzo GL

QuartzGL (llamado Quartz 2D Extreme cuando se introdujo en Mac OS X Tiger ) es una aceleración de GPU para la API Quartz 2D. Con QuartzGL habilitado, todos los comandos de dibujo de Quartz se traducen a comandos OpenGL y se ejecutan en la GPU. Esto difiere de Quartz Extreme, que aún ejecuta los comandos de dibujo de Quartz en la CPU, pero realiza la composición final utilizando la GPU.

A partir de OS X Mountain Lion , QuartzGL aún no está habilitado de forma predeterminada. Sin embargo, es posible habilitarlo mediante la aplicación Quartz Debug incluida en Apple Developer Tools . QuartzGL se deshabilitará nuevamente al salir de la utilidad Quartz Debug. Una solución alternativa es forzar el cierre de la aplicación Quartz Debug, lo que dejará QuartzGL habilitado en todo el sistema.

Todas las tarjetas gráficas compatibles con Core Image también admiten QuartzGL.

Véase también

Referencias

  1. ^ Russell, Matthew (11 de octubre de 2005). "What Is Quartz (or Why Can't Can't Do That Windows)" (Qué es Quartz (o por qué Windows no puede hacer eso)). O'Reilly Mac DevCenter . O'Reilly Media. Archivado desde el original el 27 de mayo de 2013. Consultado el 17 de noviembre de 2011 .
  2. ^ ab Siracusa, John (28 de abril de 2005). "Mac OS X 10.4 Tigre". ArsTechnica . Consultado el 15 de enero de 2010 .
  3. ^ "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 .
  4. ^ "Apple - Mac OS X 10.4: Requisitos para gráficos Quartz Extreme y Core Image". Archivado desde el original el 19 de marzo de 2012. Consultado el 12 de febrero de 2007 .

Enlaces externos