Bezpośredni rysunek - DirectDraw

DirectDraw (ddraw.dll) jest Nieaktualne API, które były częścią Microsoft „s DirectX API . DirectDraw służy do przyspieszania renderowania grafiki 2D w aplikacjach. DirectDraw pozwala również aplikacjom na uruchamianie w trybie pełnoekranowym lub osadzone w oknie, tak jak większość innych aplikacji MS Windows. DirectDraw używa akceleracji sprzętowej, jeśli jest ona dostępna na komputerze klienta . DirectDraw umożliwia bezpośredni dostęp do pamięci wideo , nakładek sprzętowych, blitterów sprzętowych i przerzucania stron . Jego menedżer pamięci wideo może z łatwością manipulować pamięcią wideo, w pełni wykorzystując możliwości blittingu i dekompresji kolorów różnych typów kart graficznych .

DirectDraw to API 2D . Oznacza to, że zawiera polecenia do renderowania 2D i nie obsługuje akceleracji sprzętowej 3D . Programista mógłby użyć DirectDraw do rysowania grafiki 3D, ale renderowanie byłoby powolne w porównaniu z API takim jak Direct3D, które obsługuje akcelerację sprzętową 3D.

DirectDraw został wprowadzony dla Windows Mobile w Windows Mobile 5.0, zastępując składnik graficzny GAPI , który był wtedy przestarzały.

DirectDraw jest przestarzały od wersji 7. Wraz z wydaniem DirectX w wersji 8.0, DirectDraw został połączony z nowym pakietem o nazwie DirectX Graphics , który rozszerzył Direct3D o kilka dodatków DirectDraw API. DirectDraw może być nadal używany przez programistów, ale muszą oni używać starszych interfejsów DirectX (DirectX 7 i niższe).

Wraz z wydaniem systemu Windows Vista , DirectDraw nie zajmował się już akceleracją sprzętową grafiki 2D, a zamiast tego stał się warstwą kompatybilności zaimplementowaną przy użyciu Direct3D.

W czerwcu 2010 r. DirectDraw został usunięty z pakietu DirectX SDK, ale w 2012 r. DirectX SDK został połączony z Windows Platform SDK, a DirectDraw został ponownie włączony.

Zastąpienie

Równolegle z wycofaniem DirectDraw nastąpiło pogorszenie kompatybilności systemu Windows ze starymi grami, które opierały się na tym starym interfejsie API, w tym Command & Conquer , Warcraft 2 i Theme Hospital wśród tych, których dotyczyło. W nowszych wersjach systemu Windows niektóre gry nie będą działać w 32- bitowej głębi , inne wyświetlają czarny ekran lub glitch po wyłączeniu. W rezultacie ponowna implementacja DDraw jest niezbędna dla wielu społeczności nadal hostujących te gry. Powszechnie stosowane zamienniki obejmują:

  • WineD3D z Wine , co przekłada się na OpenGL .
  • cnc-ddraw i ts-ddraw z CnCNet, sieci wieloosobowej Command & Conquer. Tłumaczy na GDI , OpenGL (z obsługą GLSL ) lub Direct3D 9.
  • DDrawCompat, wrapper dla waniliowego ddraw, który koryguje problematyczne wywołania. ddwrapper to wcześniejszy, niepowiązany wrapper, który robi to samo.

Zobacz też

Bibliografia

Linki zewnętrzne