Кіріспе
Microsoft-тың DirectX API-сінің ескі DirectDraw API-сы (ddraw. dll) – Microsoft-тың DirectX API-сінің бір бөлігі болған API. DirectDraw қолданбаларда 2D графиканы жылдамдату үшін пайдаланылады. DirectDraw сонымен қатар қолданбаларға толық экран режимінде немесе MS Windows-тың көптеген басқа қолданбалары сияқты терезеде жұмыс істеуге мүмкіндік береді. DirectDraw клиенттік компьютерде аппараттық үдеткіш болса, оны пайдаланады. DirectDraw бейне жадына, аппараттық жапсырмаларға, аппараттық блиттерге және беттерді ауыстыруға тікелей қол жеткізуді қамтамасыз етеді. Оның бейне жады менеджері бейне жадыны оңай басқара алады, әртүрлі дисплей адаптерлерінің бояу және түс сығымдау мүмкіндіктерін толыққанды пайдаланады. DirectDraw – 2D API. Яғни, ол 2D рендерингке арналған командаларды қамтиды және 3D аппараттық үдеткішті қолдамайды. Бағдарламашы DirectDraw-ды 3D графика салу үшін пайдалана алады, бірақ рендеринг 3D аппараттық үдеткішті қолдайтын Direct3D сияқты API-мен салыстырғанда баяу болады. DirectDraw Windows Mobile 5.0 нұсқасында Windows Mobile үшін енгізілді, ол бұрын қолданылмай қалған GAPI графикалық компонентін алмастырды. DirectX 8.0 нұсқасы шыққан кезде DirectDraw DirectX Graphics деп аталатын жаңа жиынтыққа біріктірілді, ол Direct3D-ді бірнеше DirectDraw API қосымшаларымен кеңейтті. DirectDraw әлі де бағдарламашылар тарапынан қолданылуы мүмкін, бірақ олар DirectX интерфейстерін (DirectX 7 және одан төмен) пайдалануы керек. 2010 жылдың маусым айында DirectDraw DirectX SDK жиынтығынан алынып тасталды, бірақ 2012 жылы DirectX SDK Windows Platform SDK-ға біріктірілді және DirectDraw қайтадан қосылды.
DirectDraw (ddraw. dll) is an API that used to be a part of Microsoft's DirectX API. DirectDraw is used to accelerate rendering of 2D graphics in applications. DirectDraw also allows applications to run fullscreen or embedded in a window such as most other MS Windows applications. DirectDraw uses hardware acceleration if it is available on the client's computer. DirectDraw allows direct access to video memory, hardware overlays, hardware blitters, and page flipping. Its video memory manager can manipulate video memory with ease, taking full advantage of the blitting and color decompression capabilities of different types of display adapters. DirectDraw is a 2D API. That is, it contains commands for 2D rendering and does not support 3D hardware acceleration. A programmer could use DirectDraw to draw 3D graphics, but the rendering would be slow compared to an API such as Direct3D which does support 3D hardware acceleration. DirectDraw was introduced for Windows Mobile in Windows Mobile 5.0, replacing the graphics component of GAPI, which was then deprecated. With the release of DirectX version 8.0, DirectDraw was merged into a new package called DirectX Graphics, which extended Direct3D with a few DirectDraw API additions. DirectDraw can still be used by programmers, but they must use older DirectX interfaces (DirectX 7 and below). In June 2010, DirectDraw was removed from the DirectX SDK package, but in 2012, the DirectX SDK was merged into the Windows Platform SDK, and DirectDraw was included once again.
Ауыстыру
DirectDraw-ға негізделген ескі ойындармен Windows үйлесімділігі нашарлаған, соның ішінде Command & Conquer, Warcraft 2 және Theme Hospital ойындары да әсер еткен. Windows-тың жаңа нұсқаларында кейбір ойындар 32 биттік тереңдікте (мысалы, Dangerous Waters) іске қосылмайды, ал кейбіреулері ауысқанда қара экранды көрсетеді немесе қателермен жұмыс істейді. DirectDraw-ты қайта іске қосу осы үйлесімділік проблемаларын шешуге көмектеседі. Көбінесе қолданылатын алмастырулар: Wine-дан WineD3D, ол OpenGL-ге аударылады. cnc ddraw және ts ddraw – Command & Conquer көп ойыншылық желісі CnCNet-тен. Олар GDI, OpenGL (GLSL қолдауымен) немесе Direct3D 9 форматына аударылады. DDrawCompat – проблемалық шақыруларды түзетуге арналған стандартты ddraw-дың кеңейтілген нұсқасы. ddwrapper – осыған ұқсас функцияларды орындайтын, бірақ бұрынғы, байланыссыз кеңейтілген нұсқа.
WineD3D from Wine, which translates into OpenGL. cnc ddraw and ts ddraw from CnCNet, a Command & Conquer multiplayer network. Translates into GDI, OpenGL (with GLSL support), or Direct3D 9. DDrawCompat, a wrapper for the vanilla ddraw that corrects problematic calls. ddwrapper is an earlier, unrelated wrapper that does the same thing.