PFND3D11DDI_CREATERESOURCE コールバック関数 (d3d10umddi.h)
リソースを作成します。
構文
PFND3D11DDI_CREATERESOURCE Pfnd3d11ddiCreateresource;
void Pfnd3d11ddiCreateresource(
D3D10DDI_HDEVICE unnamedParam1,
const D3D11DDIARG_CREATERESOURCE *unnamedParam2,
D3D10DDI_HRESOURCE unnamedParam3,
D3D10DDI_HRTRESOURCE unnamedParam4
)
{...}
パラメーター
unnamedParam1
hDevice [in]
ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。
unnamedParam2
pCreateResource [in]
ユーザー モード ディスプレイ ドライバーがリソースの作成に使用するパラメーターを記述する D3D11DDIARG_CREATERESOURCE構造体への ポインター。
unnamedParam3
hResource [in]
リソースのドライバーのプライベート データへのハンドル。
unnamedParam4
hRTResource [in]
ドライバーが Direct3D ランタイムに呼び出すときに使用するリソースへのハンドル。
戻り値
なし
解説
ドライバーは、 pfnSetErrorCb コールバック関数を使用してエラー コードを設定できます。
ドライバーがメモリ不足になる可能性があります。 そのため、ドライバーは pfnSetErrorCb 関数の呼び出しでE_OUTOFMEMORYまたはD3DDDIERR_DEVICEREMOVEDを渡すことができます。 ドライバーは、 pfnSetErrorCb への呼び出しでDXGI_DDI_ERR_UNSUPPORTEDを渡すこともできます。 DXGI_DDI_ERR_UNSUPPORTED渡しの詳細については、 BltDXGI リファレンス ページの「解説」セクションを参照してください。 Direct3D ランタイムは、他のエラーが重大であると判断します。 ドライバーがエラー (D3DDDIERR_DEVICEREMOVEDを含む) を渡すと、Direct3D ランタイムはハンドルが無効であると判断します。そのため、ランタイムは DestroyResource(D3D10) 関数を呼び出して 、hResource パラメーターが指定するハンドルを破棄しません。
ランタイムは、アプリケーションがリソースを作成するために送信したパラメーターに対してすべてのパラメーターを検証します。 そのため、ドライバーは無効な組み合わせを受け取るべきではありません。
アプリケーションがプレゼンテーション全体で保持するためにリソースの内容を必要としない場合、ランタイムは pCreateResource パラメーターが指すD3D11DDIARG_CREATERESOURCE構造体の MiscFlags メンバーのD3D10_DDI_RESOURCE_MISC_FLAG列挙のD3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT フラグを設定します。 プレゼンテーションは、ドライバーの PresentDXGI または BltDXGI (present フラグがDXGI_DDI_ARG_BLT_FLAGS構造体に設定されている) 関数が呼び出されたときに発生します。 アプリケーションが DXGI_SWAP_EFFECT_DISCARD 値を使用してスワップ チェーンを要求する場合、ランタイムは D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT フラグを使用してスワップ チェーン バック バッファーを作成します。
ステレオ バック バッファーの作成
Windows 8以降、ドライバーがステレオ バック バッファーを作成する必要がある場合は、pCreateResource が指すD3D11DDIARG_CREATERESOURCE構造体のメンバーを次のように設定する必要があります。- ArraySize メンバーを値 2 に設定します。
- BindFlags メンバーでD3D10_DDI_BIND_PRESENT フラグ値を設定します。
入力値に関する制限事項
Windows ディスプレイ ドライバー モデル (WDDM) 1.3 以降のドライバーの場合、Microsoft Direct3D ランタイムは、この関数で使用される入力値の制限されたセットを提供します。 すべての制限された値の一覧については、「Direct3D レンダリングのパフォーマンスの向上](/windows-hardware/drivers/display/direct3d-rendering-performance-improvements)」を参照してください。要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | CreateResource(D3D11) は、Windows 7 オペレーティング システム以降でサポートされています。 |
対象プラットフォーム | デスクトップ |
Header | d3d10umddi.h (D3d10umddi.h を含む) |