DirectDraw

DirectDrawはマイクロソフトのDirectX APIの一部である。パフォーマンスが重要なアプリケーションでコンピュータグラフィックスを高速にレンダリングするために使用する。DirectDrawアプリケーションはフルスクリーンで動作するほか、一般的なWindowsデスクトップアプリケーションのようにウィンドウ内で動作するようにもできる。ビデオカードなどのグラフィックスデバイスが持つハードウェアアクセラレーション機能を利用できる場合はこれを利用する。DirectDrawはビデオメモリ、ハードウェアオーバーレイ、ハードウェアビットブロック転送、ページフリップを直接操作できる。DirectDrawのビデオメモリマネージャは簡単にビデオメモリを操作でき、ビットブロック転送をうまく活用でき、様々なビデオカードで様々な色数に対応できる。

DirectDrawは2次元コンピュータグラフィックスのAPIである。すなわち、2Dレンダリングのためのコマンドが存在するのみで、3Dハードウェアアクセラレーションはサポートしない。半透明合成処理（アルファブレンド）に関しても同様である。DirectDrawを駆使してレンダラーを実装することで3D映像を描画することもできるが、3DハードウェアアクセラレーションをサポートするDirect3DのようなAPIと比較してレンダリングが遅くなる。

DirectXバージョン8.0において、DirectDrawは、Direct3Dに一部のDirectDraw APIを追加しただけのDirectX Graphicsという新しいパッケージに統合され、事実上DirectDrawは廃止された。DirectDrawはDirectX 8以降と共存可能だが、DirectDrawを使用する場合は、古いバージョンのDirectXインターフェイス (DirectX 7およびそれ以前) を使わなければならない。

 対応言語 
DirectDrawはCOMベースのAPIであり、主にC++から利用することを想定されている。ただし、DirectX 7ではC++以外にVisual Basicも正式サポートされたVisual Basic で DirectX を使おう。

Microsoft .NET用のManaged DirectXにもDirectDrawのサポートが存在するManaged DirectX (その 1 DirectDraw)。

 脚注 

 関連項目 
 DirectDraw Surface
 Direct3D
 DirectX

Draw
Category:グラフィックライブラリ