Platform SDK: DirectX |
ここでは、C および C++ でのアプリケーション開発について説明する。Visual Basic については、「DirectDraw Visual Basic チュートリアル」を参照すること。
オーバーレイ サーフェスを使用するには、最初に DirectDraw を初期化し、オーバーレイ サーフェスを表示するためのプライマリ サーフェスを作成する。Mosquito では、次のコードでプライマリ サーフェスを作成する。
// 構造体を初期化し、dwSize メンバを設定する。 ZeroMemory(&ddsd, sizeof(ddsd)); ddsd.dwSize = sizeof(ddsd); // フラグを設定し、プライマリ サーフェスを作成する。 ddsd.dwFlags = DDSD_CAPS; ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE; ddrval = g_lpdd->CreateSurface(&ddsd, &g_lpddsPrimary, NULL );
上記の例は、使用する DDSURFACEDESC2 構造体の初期化から始まる。次に、プライマリ サーフェスの作成に必要なフラグを設定し、IDirectDraw7::CreateSurface メソッドを呼び出してプライマリ サーフェスを作成する。この呼び出しでは、最初のパラメータが、作成するサーフェスを記述する DDSURFACEDESC2 構造体へのポインタとなる。2 番目のパラメータは、呼び出しが成功した場合の、IDirectDrawSurface7 インターフェイス ポインタを受け取る変数へのポインタとなる。最後のパラメータは NULL に設定し、COM 処理が起こっていないことを示す。