Compartir a través de


Niveles de representación de gráficos

Un nivel de representación define un nivel de funcionalidad y rendimiento de hardware gráfico para un dispositivo que ejecuta una aplicación WPF.

Hardware gráfico

Las características del hardware gráfico que más afectan a los niveles de representación son:

  • RAM de vídeo La cantidad de memoria de vídeo en el hardware gráfico determina el tamaño y el número de búferes que se pueden usar para crear gráficos.

  • Sombreador de píxeles Un sombreador de píxeles es una función de procesamiento de gráficos que calcula los efectos por píxel. Dependiendo de la resolución de los gráficos mostrados, podría haber varios millones de píxeles que se deben procesar para cada fotograma de pantalla.

  • Sombreador de vértices Un sombreador de vértices es una función de procesamiento de gráficos que realiza operaciones matemáticas en los datos de vértices del objeto.

  • Soporte para multitextura El soporte para multitextura hace referencia a la capacidad de aplicar dos o más texturas diferentes durante procesos de mezcla en un objeto gráfico tridimensional. El grado de compatibilidad con multitextura se determina por el número de unidades de multitextura en el hardware gráfico.

Definiciones de capas de representación

Las características del hardware gráfico determinan la funcionalidad de representación de una aplicación WPF. El sistema WPF define tres niveles de representación:

  • Nivel de representación 0 Sin aceleración de hardware gráfico. Todas las características gráficas usan la representación de software. El nivel de versión de DirectX es menor que la versión 9.0.

  • Nivel de representación 1 Algunas características gráficas usan la aceleración de hardware gráfico. El nivel de versión de DirectX es mayor o igual que la versión 9.0.

  • Nivel de representación 2 La mayoría de las características gráficas usan la aceleración de hardware gráfico. El nivel de versión de DirectX es mayor o igual que la versión 9.0.

La RenderCapability.Tier propiedad permite recuperar el nivel de representación en tiempo de ejecución de la aplicación. Use el nivel de representación para determinar si el dispositivo admite determinadas características gráficas aceleradas por hardware. Luego, la aplicación puede tomar diferentes caminos de código en tiempo de ejecución en función del nivel de renderizado admitido por el dispositivo.

Nivel de representación 0

Un valor de nivel de representación de 0 significa que no hay ninguna aceleración de hardware gráfico disponible para la aplicación en el dispositivo. En este nivel, debería asumir que todos los gráficos serán renderizados por software sin aceleración de hardware. La funcionalidad de este nivel corresponde a una versión de DirectX inferior a la 9.0.

Nivel de representación 1 y Nivel de representación 2

Nota:

A partir de .NET Framework 4, el nivel de representación 1 se ha redefinido para incluir solo hardware gráfico que admita DirectX 9.0 o superior. El hardware gráfico que admite DirectX 7 o 8 ahora se define como nivel de representación 0.

Un valor de nivel de representación de 1 o 2 significa que la mayoría de las características gráficas de WPF usarán la aceleración de hardware si los recursos del sistema necesarios están disponibles y no se han agotado. Esto corresponde a una versión de DirectX mayor o igual que 9.0.

En la tabla siguiente se muestran las diferencias en los requisitos de hardware gráfico para representar el nivel 1 y el nivel de representación 2:

Característica Nivel 1 Nivel 2
Versión de DirectX Debe ser mayor o igual que 9,0. Debe ser mayor o igual que 9,0.
RAM de vídeo Debe ser mayor o igual que 60 MB. Debe ser mayor o igual que 120 MB.
Sombreador de píxeles El nivel de versión debe ser mayor o igual que 2.0. El nivel de versión debe ser mayor o igual que 2.0.
Sombreador de vértices No es necesario. El nivel de versión debe ser mayor o igual que 2.0.
Unidades multitextura No es necesario. El número de unidades debe ser mayor o igual que 4.

Las siguientes características y funcionalidades están aceleradas por hardware para el nivel de renderización 1 y el nivel de renderización 2.

Característica Notas
Representación 2D Se admite la mayoría de la representación 2D.
Rasterización 3D Se admite la mayoría de la rasterización 3D.
Filtrado anisotrópico 3D WPF intenta usar el filtrado anisotrópico al representar contenido 3D. El filtrado anisotrópico hace referencia a mejorar la calidad de la imagen de las texturas en las superficies que están lejos y con ángulos empinados con respecto a la cámara.
MIP mapping 3D WPF intenta usar el mapeo MIP al renderizar contenido 3D. El mapeo MIP mejora la calidad de la representación de texturas cuando una textura ocupa un campo de visión más pequeño en un Viewport3D.
Degradados radiales Aunque se admite, evite el uso de RadialGradientBrush en objetos grandes.
Cálculos de iluminación 3D WPF realiza iluminación por vértice, lo que significa que se debe calcular una intensidad de luz en cada vértice para cada material aplicado a una malla.
Representación de texto El renderizado de fuentes subpixel utiliza sombreadores de píxeles disponibles en el hardware gráfico.

Las siguientes características y funcionalidades solo se aceleran por hardware para el nivel de representación 2:

Característica Notas
Suavizado de bordes 3D El suavizado de bordes 3D solo es compatible con sistemas operativos que admiten Windows Display Driver Model (WDDM), como Windows Vista y Windows 7.

Las siguientes características y funcionalidades no están aceleradas por hardware:

Característica Notas
Contenido impreso Todo el contenido impreso se representa mediante la canalización de software de WPF.
Contenido rasterizado que usa RenderTargetBitmap Cualquier contenido representado mediante el Render método de RenderTargetBitmap.
Contenido en mosaico que usa TileBrush Cualquier contenido en mosaico en el que la propiedad de TileMode de TileBrush esté establecida a Tile.
Superficies que superan el tamaño máximo de textura del hardware gráfico Para la mayoría del hardware gráfico, las superficies grandes son de 2048 x 2048 o 4096 x 4096 píxeles de tamaño.
Cualquier operación cuyo requisito de RAM de vídeo supere la memoria del hardware gráfico Puede supervisar el uso de RAM de vídeo de la aplicación mediante la herramienta Perforator que se incluye en WPF Performance Suite en Windows SDK.
Ventanas superpuestas Las ventanas superpuestas permiten a las aplicaciones WPF representar contenido en la pantalla en una ventana no rectangular. En los sistemas operativos que admiten Windows Display Driver Model (WDDM), como Windows Vista y Windows 7, las ventanas superpuestas son aceleradas mediante hardware. En otros sistemas, como Windows XP, las ventanas superpuestas se representan mediante software sin aceleración de hardware.

Puede habilitar ventanas superpuestas en WPF estableciendo las siguientes Window propiedades:

- WindowStyle = None
- AllowsTransparency = true
- Background = Transparent

Otros recursos

Los siguientes recursos pueden ayudarle a analizar las características de rendimiento de la aplicación WPF.

Configuración del Registro de representación de gráficos

WPF proporciona cuatro configuraciones del Registro para controlar la representación de WPF:

Configuración Descripción
Deshabilitar la opción de aceleración de hardware Especifica si se debe habilitar la aceleración de hardware.
Valor máximo de multisample Especifica el grado de muestreo múltiple para el antialiasing de contenido 3D.
Fecha requerida de configuración del controlador de vídeo Especifica si el sistema deshabilita la aceleración de hardware para los controladores publicados antes de noviembre de 2004.
Usar la opción de rasterizador de referencia Especifica si WPF debe usar el rasterizador de referencia.

Se puede acceder a esta configuración mediante cualquier utilidad de configuración externa que sepa cómo hacer referencia a la configuración del Registro de WPF. Esta configuración también se puede crear o modificar mediante el acceso directo a los valores mediante el Editor del Registro de Windows. Para obtener más información, consulte Configuración del Registro en la representación de gráficos.

Herramientas de generación de perfiles de rendimiento de WPF

WPF proporciona un conjunto de herramientas de generación de perfiles de rendimiento que le permiten analizar el comportamiento en tiempo de ejecución de la aplicación y determinar los tipos de optimizaciones de rendimiento que puede aplicar. En la tabla siguiente se enumeran las herramientas de generación de perfiles de rendimiento que se incluyen en la herramienta Windows SDK, WPF Performance Suite:

Herramienta Descripción
Perforador Se usa para analizar el comportamiento de representación.
Generador de perfiles visuales Se usa para generar perfiles del uso de servicios de WPF, como el diseño y el control de eventos, por elementos del árbol visual.

WpF Performance Suite proporciona una vista gráfica enriquecida de los datos de rendimiento. Para obtener más información sobre las herramientas de rendimiento de WPF, vea WPF Performance Suite.

Herramienta de diagnóstico de DirectX

La herramienta de diagnóstico de DirectX, Dxdiag.exe, está diseñada para ayudarle a solucionar problemas relacionados con DirectX. La carpeta de instalación predeterminada para la herramienta de diagnóstico de DirectX es:

~\Windows\System32

Al ejecutar la herramienta de diagnóstico de DirectX, la ventana principal contiene un conjunto de pestañas que le permiten mostrar y diagnosticar información relacionada con DirectX. Por ejemplo, la pestaña Sistema proporciona información del sistema sobre el equipo y especifica la versión de DirectX instalada en el equipo.

Captura de pantalla: DirectXDiagnosticTool_01 de la herramienta de diagnóstico de DirectX
Ventana principal de la herramienta de diagnóstico de DirectX

Consulte también