次の方法で共有


PFND3D10DDI_CREATEDEPTHSTENCILSTATEコールバック関数 (d3d10umddi.h)

CreateDepthStencilState 関数は深度ステンシル状態を作成します。

構文

PFND3D10DDI_CREATEDEPTHSTENCILSTATE Pfnd3d10ddiCreatedepthstencilstate;

void Pfnd3d10ddiCreatedepthstencilstate(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D10_DDI_DEPTH_STENCIL_DESC *unnamedParam2,
  D3D10DDI_HDEPTHSTENCILSTATE unnamedParam3,
  D3D10DDI_HRTDEPTHSTENCILSTATE unnamedParam4
)
{...}

パラメーター

unnamedParam1

hDevice [in]

ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。

unnamedParam2

pDepthStencilDesc [in]

深度ステンシル状態の作成にユーザー モード ディスプレイ ドライバーが使用するパラメーターを記述する D3D10_DDI_DEPTH_STENCIL_DESC 構造体へのポインター。

unnamedParam3

hDepthStencilState [in]

深度ステンシル状態のドライバーのプライベート データへのハンドル。

unnamedParam4

hRTDepthStencilState [in]

ドライバーが Direct3D ランタイムに呼び出す場合にいつでも使用する必要がある深度ステンシル状態のハンドル。

戻り値

何一つ

備考

ドライバーは、pfnSetErrorCb コールバック関数を使用してエラー コードを設定できます。

ドライバーは、pfnSetErrorCb 関数の呼び出しでE_OUTOFMEMORY (ドライバーのメモリ不足の場合) またはD3DDDIERR_DEVICEREMOVED (デバイスが削除されている場合) を渡すことができます。 Direct3D ランタイムは、他のエラーが重大であると判断します。 ドライバーがD3DDDIERR_DEVICEREMOVEDなどのエラーを渡した場合、Direct3D ランタイムはハンドルが無効であると判断します。そのため、ランタイムは DestroyDepthStencilState 関数を呼び出して、hDepthStencilState パラメーターが指定するハンドルを破棄しません。

ユーザー モード ディスプレイ ドライバーは、一度に 4,096 を超える深度ステンシル状態オブジェクトの一意のインスタンスをデバイスに作成する必要はありません。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
ターゲット プラットフォーム デスクトップ
ヘッダー d3d10umddi.h (D3d10umddi.h を含む)

関連項目

CalcPrivateDepthStencilStateSize

D3D10DDI_DEVICEFUNCS

D3D10_DDI_DEPTH_STENCILOP_DESC

D3D10_DDI_DEPTH_STENCIL_DESC

DestroyDepthStencilState

pfnSetErrorCb