HOME

TheInfoList



OR:

DirectDraw (ddraw.dll) is an API that used to be a part of
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
's
DirectX Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct" ...
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
. DirectDraw is used to accelerate rendering of 2D
graphics Graphics () are visual images or designs on some surface, such as a wall, canvas, screen, paper, or stone, to inform, illustrate, or entertain. In contemporary usage, it includes a pictorial representation of the data, as in design and manufa ...
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 A computer is a machine that can be Computer programming, programmed to automatically Execution (computing), carry out sequences of arithmetic or logical operations (''computation''). Modern digital electronic computers can perform generic set ...
. 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. Because DirectDraw is a 2D API, it contains commands for 2D rendering and although it does not support 3D hardware acceleration, versions through to 7.0 of DirectDraw are tightly coupled to their respective version of Direct3D. In order to utilize 3D acceleration in Direct3D 7.0 and below, DirectDraw ''must'' be used in order to create an IDirect3D interface with the help of IDirectDraw7->''QueryInterface'', from which comes an IDirect3DDevice, and from there the remainder of the Direct3D API can be accessed and utilized. DirectDraw provides Textures (through Surfaces), Clippers, Palettes and Pixel Formats to Direct3D as well as the final presentation pass to display rendered images to the screen. DirectDraw was introduced for
Windows Mobile Windows Mobile is a discontinued mobile operating system developed by Microsoft for smartphones and personal digital assistants (PDA). Designed to be the portable equivalent of the Windows desktop OS in the emerging Mobile device, mobile/port ...
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, and it can be compiled in 64-bit, but they must use older DirectX interfaces (DirectX 7 and below). Drivers from NVIDIA, AMD and Intel provide hardware accelerated support for many of DirectDraw's fundamental features. However, due to changes in Windows Desktop Manager (DWM) in recent Windows versions, features such as Overlays are no longer supported at all. 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.


Replacement

There has been a deterioration of Windows compatibility with old games that rely upon DirectDraw, with '' Command & Conquer'', '' Warcraft 2'', and '' Theme Hospital'' among those affected. In newer Windows versions, some games will refuse to run under a 32-bit bit depth ('' Dangerous Waters'' for example), others showing a black screen or glitching when switched out. Re-implementation of DirectDraw has been observed to fix these compatibility problems. Commonly used replacements include: * WineD3D from
Wine Wine is an alcoholic drink made from Fermentation in winemaking, fermented fruit. Yeast in winemaking, Yeast consumes the sugar in the fruit and converts it to ethanol and carbon dioxide, releasing heat in the process. Wine is most often made f ...
, which translates into
OpenGL OpenGL (Open Graphics Library) is a Language-independent specification, cross-language, cross-platform application programming interface (API) for rendering 2D computer graphics, 2D and 3D computer graphics, 3D vector graphics. The API is typic ...
. * cnc-ddraw and ts-ddraw from CnCNet, a ''Command & Conquer'' multiplayer network. Translates into
GDI GDI may refer to: Science and technology * Gasoline direct injection, a type of fuel injection * Graphics Device Interface, a component of Microsoft Windows * Guanosine nucleotide dissociation inhibitor, a protein Organisations * Gabriel Dumont I ...
, 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.


See also

* DirectDraw Surface *
Direct2D Direct2D is a 2D vector graphics application programming interface (API) designed by Microsoft and implemented in Windows 10, Windows 8, Windows 7 and Windows Server 2008 R2, and also Windows Vista and Windows Server 2008 (with Platform Update ...
*
Direct3D Direct3D is a graphics application programming interface (API) for Microsoft Windows. Part of DirectX, Direct3D is used to render three-dimensional graphics in applications where performance is important, such as games. Direct3D uses hardware ...
*
DirectX Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct" ...
*
QuickDraw QuickDraw was the 2D graphics library and associated application programming interface (API) which is a core part of classic Mac OS. It was initially written by Bill Atkinson and Andy Hertzfeld. QuickDraw still existed as part of the libraries ...


References


External links


Microsoft API Reference for DirectDraw

Microsoft API Overview for DirectDraw
Draw DirectDraw Graphics libraries Microsoft application programming interfaces {{windows-stub