D3DHAL_CONTEXTCREATEDATA構造体 (d3dhal.h)

D3DHAL_CONTEXTCREATEDATA構造体には、 D3dContextCreate 関数が新しいコンテキストを作成するために必要なすべての情報が含まれています。

構文

typedef struct _D3DHAL_CONTEXTCREATEDATA {
  union {
    LPDDRAWI_DIRECTDRAW_GBL lpDDGbl;
    LPDDRAWI_DIRECTDRAW_LCL lpDDLcl;
  };
  union {
    LPDIRECTDRAWSURFACE       lpDDS;
    LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl;
  };
  union {
    LPDIRECTDRAWSURFACE       lpDDSZ;
    LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl;
  };
  union {
    DWORD     dwPID;
    ULONG_PTR dwrstates;
  };
  ULONG_PTR dwhContext;
  HRESULT   ddrval;
} D3DHAL_CONTEXTCREATEDATA;

メンバー

lpDDGbl

ドライバーの構造 (レガシ)。

lpDDLcl

DIRECT3D への COM インターフェイスを取得するためにアプリケーションが作成する必要がある DirectDraw オブジェクトを指します。 これにより、DirectDraw アプリケーションとドライバーの間でコンテキスト情報を共有できます。 lpDDLcl は、アプリケーションのコンテキストとドライバーのコンテキストの間の共通のバインディング要素です。 特定 Direct3D コンテキストに属し、現在の DirectDraw プロセスにのみ関連するサーフェスを識別するために使用されるDD_DIRECTDRAW_LOCAL構造体を指します。 ドライバーで Direct3D コンテキストを作成する前にサーフェス (深度バッファー、レンダリング バッファー、テクスチャなど) を作成できるため、lpDDLcl が必要です。

lpDDS

ターゲットとして使用するサーフェス。

lpDDSLcl

レンダリング ターゲットとして使用する DirectDraw サーフェスを記述する DD_SURFACE_LOCAL 構造体を指します。

lpDDSZ

Z として使用するサーフェス。

lpDDSZLcl

深度バッファーとして使用する DirectDraw サーフェスを記述するDD_SURFACE_LOCAL構造体を指します。 このメンバーが NULL の場合、深度バッファリングは実行されません。

dwPID

現在のプロセス ID を指定します。 これは、Direct3D デバイスの作成を開始した Direct3D アプリケーションのプロセス ID です。

dwrstates

ドライバーがコマンド バッファーからレンダリング状態コマンドを解析するときに更新する必要があるレンダリング状態配列を指します。 配列バッファーは、少なくとも指定された数の ULONG 値を格納するのに十分な大きさである必要があります。

dwhContext

入力時に Direct3D ユーザー モード ランタイムのバージョンを示し、出力時に、ドライバーがコンテキストを正常に作成したときにコンテキスト ハンドルを返す場所を指定します。 詳細については、「解説」を参照してください。

ddrval

ドライバーが D3dContextCreate のリターン コードを書き込む場所を指定します。 D3D_OKのリターン コードは成功を示します。 D3DHAL_OUTOFCONTEXTSのリターン コードは、ドライバーがコンテキストを作成できないことを示します。 詳細については、「 Direct3D ドライバー コールバックのリターン コード」を参照してください。

注釈

Direct3D ランタイムがドライバーの D3dContextCreate 関数を 呼び出すと、ランタイムは dwhContext メンバーのランタイムのユーザー モード バージョンを示す数値を指定します。 次の表は、数値とユーザー モードバージョンのマッピングを示しています。

Number DirectX ユーザー モードのバージョン
5 9.0
4 8.0
3 7.0
2 6.0
1 5.0
0 3.0

ドライバーがコンテキストを正常に作成した場合、ドライバーは、ドライバーと通信するときに使用する Direct3D ランタイムの dwhContext のコンテキスト ID を返します。

要件

   
Header d3dhal.h (D3dhal.h を含む)

こちらもご覧ください

D3dContextCreate

DD_DIRECTDRAW_LOCAL

DD_SURFACE_LOCAL