DDSCAPS 構造体 (ddraw.h)

DDSCAPS 構造体は、Microsoft DirectDraw サーフェス オブジェクトの機能を定義します。

構文

typedef struct _DDSCAPS {
  DWORD dwCaps;
} DDSCAPS;

メンバー

dwCaps

サーフェスの機能を指定するフラグのセットを示します。 このメンバーは、次のいずれかのフラグのビットごとの OR です。

フラグ 説明

DDSCAPS_3DDEVICE

このサーフェスは、3D レンダリングに使用できます。 アプリケーションでは、このフラグを使用して、特定のヒープにのみレンダリングできるデバイスに、正しいヒープから割り当てられたオフスクリーン サーフェスがあることを確認できます。 ヒープに対してこのフラグが設定されている場合、サーフェスはそのヒープから割り当てられません。

DDSCAPS_ALLOCONLOAD

サーフェスのメモリは、 IDirect3DTexture::Load メソッドを使用してアプリケーションによって読み込まれるまで割り当てられません。

DDSCAPS_ALPHA

このサーフェスにはアルファ情報のみが含まれます。

DDSCAPS_BACKBUFFER

このサーフェスは、サーフェス反転構造のバック バッファーです。 通常、この機能は、DDSCAPS_FLIP フラグが使用されるときに、アプリケーションの CreateSurface メソッドによって設定されます。 この機能が設定されているのは、DDSCAPS_FRONTBUFFERサーフェスの直前にあるサーフェスだけです。 他のサーフェスは、DDSCAPS_FLIP フラグ、添付ファイルの順序、およびDDSCAPS_FRONTBUFFER機能とDDSCAPS_BACKBUFFER機能がないことによってバック バッファーとして識別されます。 この機能がアプリケーションの CreateSurface メソッドに送信されると、スタンドアロン のバック バッファーが作成されます。 このメソッドを呼び出した後、このサーフェスをフロント バッファー、別のバック バッファー、またはその両方にアタッチして反転サーフェス構造を形成できます。 詳細については、DirectX SDK の AddAttachedSurface メソッドを参照してください。 DirectDraw では、反転構造で任意の数のサーフェスがサポートされます。

DDSCAPS_COMPLEX

複雑なサーフェスが記述されています。 複雑なサーフェスでは、複数のサーフェスが作成されます。 追加のサーフェスはルート サーフェスにアタッチされます。 複雑な構造は、ルートを破棄することによってのみ破棄できます。

DDSCAPS_EXECUTEBUFFER

サーフェスは、Microsoft Direct3D 表示リストを保持するシステムまたはビデオ メモリの線形チャンクである実行バッファーです。 ドライバーは、ビデオ メモリに実行バッファーを作成できることを示すために、この機能ビットを報告します。 Direct3D ランタイムがこのビットを検出すると、ドライバーから実行バッファーを要求できます。 アプリケーションでは、この機能ビットを検出できません。

DDSCAPS_FLIP

このサーフェスは、サーフェス反転構造の一部です。 この機能がアプリケーションの CreateSurface メソッドに渡されると、フロント バッファーと 1 つ以上のバック バッファーが作成されます。 DirectDraw は、フロント バッファーサーフェスのDDSCAPS_FRONTBUFFERビットと、フロントバッファーサーフェスに隣接するサーフェス上のDDSCAPS_BACKBUFFERビットを設定します。 メソッド呼び出しを成功させるには、DDSURFACEDESC 構造体の dwBackBufferCount メンバーを少なくとも 1 に設定する必要があります。 CreateSurface メソッドを使用して複数のサーフェスを作成する場合は、常にDDSCAPS_COMPLEX機能を設定する必要があります。

DDSCAPS_FRONTBUFFER

このサーフェスは、サーフェス反転構造のフロント バッファーです。 このフラグは、通常、DDSCAPS_FLIP機能が設定されている場合に、アプリケーションの CreateSurface メソッドによって設定されます。 この機能が CreateSurface メソッドに送信されると、スタンドアロン のフロント バッファーが作成されます。 このサーフェスには、DDSCAPS_FLIP機能がありません。 アプリケーションの AddAttachedSurface メソッドを使用して、他のバック バッファーにアタッチして反転構造を形成できます。

DDSCAPS_HWCODEC

このサーフェスは、ハードウェアによってストリームを圧縮解除できる必要があります。

DDSCAPS_LIVEVIDEO

この画面は、ライブ ビデオを受信できる必要があります。

DDSCAPS_LOCALVIDMEM

このサーフェスは、ローカル以外の表示メモリではなく、true のローカル表示メモリに存在します。 このフラグを指定する場合は、DDSCAPS_VIDEOMEMORYも指定する必要があります。 このフラグは、DDSCAPS_NONLOCALVIDMEM フラグと共に使用できません。

DDSCAPS_MIPMAP

このサーフェスはミップマップの 1 レベルです。 このサーフェスは、ミップマップを形成するために他のDDSCAPS_MIPMAPサーフェスにアタッチされます。 これを明示的に行うには、複数のサーフェスを作成し、アプリケーションの AddAttachedSurface メソッドを使用してアタッチするか、アプリケーションの CreateSurface メソッドで暗黙的にアタッチします。 この機能が設定されている場合は、DDSCAPS_TEXTUREも設定する必要があります。

DDSCAPS_MODEX

このサーフェスは、320 x 200 または 320 x 240 モード X サーフェスです。 この機能ビットが Microsoft Windows 2000 以降のドライバーによって設定されている場合、DirectDraw は無効になります。

DDSCAPS_NONLOCALVIDMEM

このサーフェスは、true のローカル表示メモリではなく、ローカル以外の表示メモリに存在します。 このフラグを指定する場合は、DDSCAPS_VIDEOMEMORYフラグも指定する必要があります。 これは、DDSCAPS_LOCALVIDMEM フラグでは使用できません。

DDSCAPS_OFFSCREENPLAIN

このサーフェスは、オーバーレイ、テクスチャ、z バッファー、フロント バッファー、バック バッファー、アルファ サーフェスではないオフスクリーン サーフェスです。 プレーンサーフェスを識別するために使用されます。

DDSCAPS_OVERLAY

このサーフェスはオーバーレイです。 このオーバーレイの可視性は、現在プライマリ サーフェスにオーバーレイされているかどうかによって異なります。 DDSCAPS_VISIBLEを使用して、現時点でオーバーレイされているかどうかを判断できます。

DDSCAPS_OPTIMIZED

このフラグは現在実装されていません。

DDSCAPS_OWNDC

この画面には、長期間にわたってデバイス コンテキスト (DC) の関連付けが含まれます。 この機能ビットが Windows 2000 以降のドライバーによって設定されている場合、DirectDraw は無効になります。

DDSCAPS_PALETTE

このデバイス ドライバーを使用すると、一意の DirectDrawPalette オブジェクトを作成し、この画面にアタッチできます。

DDSCAPS_PRIMARYSURFACE

このサーフェスはプライマリ サーフェスです。 これは、現時点でユーザーに表示される内容を表します。

DDSCAPS_PRIMARYSURFACELEFT

このサーフェスは、左目のプライマリ サーフェスです。 これは、現時点でユーザーの左目に表示される内容を表します。 このサーフェスを作成すると、DDSCAPS_PRIMARYSURFACE機能を持つサーフェスは、ユーザーの右目に表示される内容を表します。

DDSCAPS_STANDARDVGAMODE

このサーフェスは標準の VGA モード サーフェスであり、ModeX サーフェスではありません。 このフラグは、DDSCAPS_MODEX フラグと組み合わせて使用することはできません。

DDSCAPS_SYSTEMMEMORY

このサーフェス メモリは、システム メモリから割り当てられています。 この機能ビットが Windows 2000 以降のドライバーによって設定されている場合、DirectDraw は無効になります。

DDSCAPS_TEXTURE

このサーフェスは、3D テクスチャとして使用できます。 サーフェスがその目的で使用されているかどうかは示されません。

DDSCAPS_VIDEOMEMORY

このサーフェスは、ディスプレイ メモリに存在します。

DDSCAPS_VIDEOPORT

このサーフェスは、 ビデオ ポート拡張機能 (VPE) オブジェクトからデータを受信できます。

DDSCAPS_VISIBLE

このサーフェスに加えられた変更がすぐに表示されます。 これは常にプライマリ サーフェスに対して設定され、オーバーレイの場合はオーバーレイに設定され、テクスチャが設定されている間はテクスチャ マップに設定されます。

DDSCAPS_WRITEONLY

サーフェスへの書き込みアクセスのみが許可されます。 サーフェスからの読み取りアクセスによって一般的な保護エラー (GPF) が発生する可能性がありますが、このサーフェスからの読み取り結果は意味がありません。 この機能ビットが Windows 2000 以降のドライバーによって設定されている場合、DirectDraw は無効になります。

DDSCAPS_ZBUFFER

このサーフェスは z バッファーです。 表示されるピクセルと隠れているピクセルを決定するために使用されるビット深度情報が含まれています。 z バッファーには、表示できない情報が含まれています。

注釈

この構造体は、ドライバーがサポートするサーフェスの種類を報告するためにドライバーによって使用されます。 また、作成するサーフェスの種類を指定するために、アプリケーションによって入力されます。

要件

要件
Header ddraw.h