Win32: существует ли замена GDI32.dll, который использует аппаратное ускорение?

Имеет любой там создал версию GDI32.dll это использует в своих интересах аппаратное ускорение, доступное на машине? gdiplus.dll?

Начиная с Windows Vista, GDI больше не аппаратно ускоряется. (GDI + никогда не аппаратно ускорялся). Без Microsoft, устраняющей GDI (и GDI +), чтобы смочь работать хорошо на компьютере: исходные приложения (C++ MFC, Delphi, и т.д.), и управляемые приложения WinForms, продолжат работать плохо навсегда.

В то время как я мог использовать Direct2D для бизнес-приложений, я не могу управлять тем, что среда разработки все еще создает средства управления с десятилетиями кода поддержки библиотеки, который принимает присутствие GDI.


Совместимость приложений: Графический интерфейс устройства (GDI):

Примитивы GDI, такие как LineTo и Прямоугольник теперь представляются в программном обеспечении, а не видеооборудовании, которые значительно упрощают драйверы дисплеев.

Windows And Video Memory

В XP GDI является GPU, ускоренный до различных градусов в зависимости от того, как ОС настроена, или драйвер устройства (для деталей посмотрите Сцепление По сравнению с Плаванием на плоскодонке). В Vista GDI не является ускоренный GPU

Сравнение Direct2D и GDI

В результате в Windows Vista, драйвер дисплея DDI GDI был изменен, чтобы быть только реализованным предоставленным драйвером Microsoft, Каноническим драйвером дисплея (CDD). GDI представляется к битовому массиву системной памяти. Грязные регионы использовались для обновления структуры видеопамяти который использование менеджера окон составить рабочий стол.

7
задан Daniel DiPaolo 24 June 2011 в 14:36
поделиться

3 ответа

Кажется, Vista была особым случаем в истории производительности GDI. Обе статьи ниже показывают, что будущее GDI снова выглядит радужным.

http://msdn.microsoft.com/en-us/library/ff729480%28VS.85%29.aspx

GDI - это аппаратное ускорение в Windows. XP и ускорение в Windows 7, когда Диспетчер окон рабочего стола запущен и драйвер WDDM 1.1 используется. Direct2D имеет аппаратное ускорение на практически любой драйвер WDDM и независимо от того, используется ли DWM. В Vista, GDI всегда выполняет рендеринг на ЦП.

http://blogs.msdn.com/b/e7/archive/2009/04/25/engineering-windows-7-for-graphics-performance.aspx

На основе реального приложения статистика, ... мы работали с нашими графику партнеров IHV для предоставления поддержка в своих драйверах для ускорения наиболее часто используемые операции GDI.

3
ответ дан 7 December 2019 в 12:17
поделиться

Что ж, да, GDI - это API-интерфейс "он работает в любом месте и в любое время" для рендеринга графики. Это предъявляет очень низкие требования к видеодрайверу. Все получили это право давным-давно. Это заняло некоторое время, и я получил отчетливую память о видеокарте ATI Mach, которая доставляла мне бесконечные проблемы. Это на какое-то время помешало мне покупать продукты ATI.

У всех был правильный DirectX и гораздо меньше времени назад. Он использует преимущества модели рендеринга WPF, он полностью полагается на DirectX для выполнения своей работы. Milcore - это название прокладки. Вы не получите этого, пока не примете участие в модели программирования WPF.

1
ответ дан 7 December 2019 в 12:17
поделиться

Что вы имеете в виду под аппаратным ускорением? Я имею в виду, GDI не делает ничего, кроме растровых блитов, но это было аппаратное обеспечение ускоренный. И, учитывая, что Vista и Windows 7 не намного медленнее с настольными приложениями, они все еще медленнее.

GDI по-прежнему заставляет видеодрайверы выполнять всю тяжелую работу, поэтому, если GDI не ускоряется аппаратно, то это вина производителей драйверов, а не GDI.

1
ответ дан 7 December 2019 в 12:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: