PFND3D10DDI_SO_SETTARGETS コールバック関数 (d3d10umddi.h)
SoSetTargets 関数は、ストリーム出力ターゲット リソースを設定します。
構文
PFND3D10DDI_SO_SETTARGETS Pfnd3d10ddiSoSettargets;
void Pfnd3d10ddiSoSettargets(
D3D10DDI_HDEVICE unnamedParam1,
[in] UINT NumBuffers,
[in] UINT ClearTargets,
const D3D10DDI_HRESOURCE *unnamedParam4,
const UINT *unnamedParam5
)
{...}
パラメーター
unnamedParam1
hDevice [in]
ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。
[in] NumBuffers
phResource が指定 配列内の要素の数。
[in] ClearTargets
ストリーム出力ターゲット リソースの以前の数 (Microsoft Direct3D ランタイムが soSetTargets を呼び出す前) と新しい数のストリーム出力ターゲット リソースとの差を表す、出力ターゲット リソースをストリーミングするハンドルの数。
ClearTargets が指定する数値は、ユーザー モードのディスプレイ ドライバーがこの数を計算できるため、最適化の支援にすぎません。
unnamedParam4
phResource の [in]
設定するストリーム出力ターゲット リソースへのハンドルの配列。 一部のハンドル値は NULL できることに注意してください。
unnamedParam5
pOffsets [in]
phResource が指定する 配列内のストリーム出力ターゲット リソースへのオフセットの配列 (バイト単位)。
戻り値
何一つ
備考
ドライバーは、pfnSetErrorCb コールバック関数を使用してエラー コードを設定できます。
SOTargets パラメーターが指定する数と、すべての NULL 値または非バインド値を含めるために必要なストリーム出力ターゲット リソースの最大数の間のストリーム出力ターゲット リソースの範囲。 ClearTargets パラメーターが指定する番号は、現在の操作に対してドライバーがクリアする必要があるバインド ポイントの数をドライバーに通知します。 SoSetTargets に対する前回の呼び出し SOTargetsで値 2 が渡され、SoSetTargets の現在の呼び出しが SOTargetsで 4 の値を渡した場合、SoSetTargets への現在の呼び出しでは、ClearTargets パラメーターでも値 0 が渡されます。 SoSetTargets への次の連続する呼び出しで、SOTargetsで値 1 が渡された場合、連続する呼び出しでは、ClearTargetsで値 3 (4 - 1) も渡されます。
ドライバーは、D3DDDIERR_DEVICEREMOVEDを除き、エラーが発生しないようにする必要があります。 したがって、D3DDDIERR_DEVICEREMOVEDを除き、pfnSetErrorCb 関数の呼び出しでドライバーがエラーを渡した場合、Microsoft Direct3D ランタイムはエラーが重大であると判断します。 デバイスが削除された場合でも、ドライバーはD3DDDIERR_DEVICEREMOVEDを返す必要はありません。ただし、デバイスの削除が SOTargets の操作に干渉した場合 (通常は発生しないはずです)、ドライバーはD3DDDIERR_DEVICEREMOVEDを返すことができます。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | d3d10umddi.h (D3d10umddi.h を含む) |
関連項目
pfnSetErrorCb の