Win32: ¿Hay un GDI32.dll reemplazo que la aceleración de hardware usos?
-
27-09-2019 - |
Pregunta
¿Alguien por ahí creó una versión de GDI32.dll
que se aprovecha de la aceleración de hardware disponible en la máquina? gdiplus.dll
?
A partir de Windows Vista, GDI es de hardware ya no se aceleró. (GDI + nunca fue acelerada por hardware). Sin fijación de Microsoft GDI (y GDI +) para poder correr bien en el equipo:. Aplicaciones nativas (C ++ MFC, Delphi, etc), y aplicaciones Windows Forms administradas, continuará funcionando mal para siempre
Mientras i podría utilizar Direct2D para aplicaciones de negocios, no puedo controlar el hecho de que el entorno de desarrollo sigue creando controles, con décadas de código de soporte de la biblioteca, que asume la presencia de GDI.
compatibilidad de aplicaciones: Dispositivo de Interfaz gráfica (GDI) :
GDI primitivas tales como LineTo y Rectángulo ahora se representa en el software en lugar de hardware de vídeo, que simplificar en gran medida los controladores de pantalla.
En XP GDI es acelerado por la GPU a diversos grados, dependiendo de cómo el OS está configurado o el controlador de dispositivo (Para más detalles véase el El enganchar Versus Batea ). En Vista, GDI no es acelerado por la GPU
Como resultado de ello, en Windows Vista, el GDI controlador de pantalla DDI fue cambiado para ser Sólo se implementa mediante una Microsoft controlador suministrado, la pantalla de Canonical Driver (CDD). GDI rindió a un sistema de mapa de bits de memoria. Se utilizaron las regiones sucias para actualizar la textura memoria de vídeo el cual el gestor de ventanas a usos compuesto del escritorio.
Solución
Parece que Vista era un caso especial en la historia de rendimiento GDI. Ambos artículos siguientes muestran que el futuro parece brillante para la GDI de nuevo.
http://msdn.microsoft.com /en-us/library/ff729480%28VS.85%29.aspx
GDI es acelerado por hardware en Windows XP, y se aceleró en Windows 7 cuando el Administrador de ventanas de escritorio se está ejecutando y un controlador WDDM 1.1 está en uso. Direct2D es acelerado por hardware en WDDM casi cualquier conductor y sin tener en cuenta de si DWM está en uso. En Vista, GDI siempre va a hacer en la CPU.
http://blogs.msdn.com/b/e7/archive/2009/04/25/engineering-windows-7-for-graphics-performance.aspx
Sobre la base de la aplicación en el mundo real estadísticas, ... trabajamos con nuestra IHV gráficos asociados a ofrecer apoyar en sus controladores para acelerar el más comúnmente utilizado operaciones GDI.
Otros consejos
Bueno, sí, GDI es la "funciona en cualquier momento en cualquier lugar" API para la representación de gráficos. Se impone exigencias muy bajos en el controlador de vídeo. Todo el mundo tiene ese derecho hace mucho tiempo. Que tardó un poco, tengo una memoria distinta de una tarjeta de vídeo ATI Mach que me dio un sinfín de problemas. Se me ha impedido la compra de productos de ATI durante bastante tiempo.
Todo el mundo tiene derecho DirectX hace en menor tiempo demasiado largo. Es estar aprovechando en el modelo de prestación de WPF, que depende por completo de DirectX para hacer el trabajo. Milcore es el nombre de cuña. No lo conseguirá hasta que comprar en el modelo de programación de WPF.
¿Qué entiende usted por la aceleración de hardware? Es decir, GDI no hace mucho que no sea blits trama, pero los que fueron acelerados por hardware. Y, dado que Vista y Windows 7 ar no terriblemente lento con las aplicaciones de escritorio, todavía lo son.
GDI todavía recibe los controladores de vídeo para hacer todo el trabajo pesado, por lo que si GDI no es acelerado por hardware, entonces es el conductor proveedores de culpa, no de GDI.