PFND3D11DDI_CREATEHULLSHADER コールバック関数 (d3d10umddi.h)
CreateHullShader 関数は、ハル シェーダーを作成します。
構文
PFND3D11DDI_CREATEHULLSHADER Pfnd3d11ddiCreatehullshader;
void Pfnd3d11ddiCreatehullshader(
D3D10DDI_HDEVICE unnamedParam1,
const UINT *pShaderCode,
D3D10DDI_HSHADER unnamedParam3,
D3D10DDI_HRTSHADER unnamedParam4,
const D3D11DDIARG_TESSELLATION_IO_SIGNATURES *unnamedParam5
)
{...}
パラメーター
unnamedParam1
hDevice [in]
ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。
pShaderCode
pCode [in]
シェーダー コードを形成する CONST UINT トークンの配列。 シェーダー コード ストリームの最初のトークンは、常にバージョン トークンです。 ストリーム内の次のトークンは、シェーダー コード ストリームの末尾を決定する長さのトークンです。 Direct3D バージョン 11 シェーダー コードの形式の詳細については、WDK に含まれている D3d11tokenizedprogramformat.hpp ヘッダー ファイル内のコメントを参照してください。
unnamedParam3
hShader [in] を する
ハル シェーダーのドライバーのプライベート データへのハンドル。 ドライバーは、Microsoft Direct3D ランタイムがドライバーの CalcPrivateTessellationShaderSize 関数への呼び出しからプライベート データに割り当てる必要があるメモリ領域のサイズ (バイト単位) を返します。 ハンドルはメモリ領域へのポインターであり、ドライバーが要求したサイズです。 ドライバーは、このメモリ領域を使用して、テセレーション シェーダー オブジェクトに関連する内部データ構造を格納します。
unnamedParam4
hRTShader [in]
ドライバーが Direct3D ランタイムに呼び出すときに使用するハル シェーダーのハンドル。
unnamedParam5
pSignatures [in]
テッセレーション シェーダーのシグネチャを形成する D3D11DDIARG_TESSELLATION_IO_SIGNATURES 構造体へのポインター。
戻り値
何一つ
備考
ドライバーは、pfnSetErrorCb コールバック関数を使用してエラー コードを設定できます。
ドライバーは、pfnSetErrorCb 関数の呼び出しでE_OUTOFMEMORY (ドライバーがメモリ不足の場合) またはD3DDDIERR_DEVICEREMOVED (デバイスが削除された場合) を渡すことができます。 Direct3D ランタイムは、その他のエラーが重大であると判断します。 ドライバーがエラー (D3DDDIERR_DEVICEREMOVEDを含む) を渡すと、Direct3D ランタイムはハンドルが無効であると判断します。そのため、ランタイムは DestroyShader 関数を呼び出して、hShader パラメーターが指定するハンドルを破棄しません。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | CreateHullShader は、Windows 7 オペレーティング システム以降でサポートされています。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | d3d10umddi.h (D3d10umddi.h を含む) |
関連項目
CalcPrivateTessellationShaderSize
D3D11DDIARG_TESSELLATION_IO_SIGNATURES
DestroyShader の
pfnSetErrorCb の