次の方法で共有


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

DestroyShader 関数は、指定されたシェーダー オブジェクトを破棄します。 シェーダー オブジェクトは、現在ディスプレイ デバイスにバインドされていない場合にのみ破棄できます。

構文

PFND3D10DDI_DESTROYSHADER Pfnd3d10ddiDestroyshader;

void Pfnd3d10ddiDestroyshader(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D10DDI_HSHADER unnamedParam2
)
{...}

パラメーター

unnamedParam1

hDevice [in]

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

unnamedParam2

hShader [in] を する

シェーダー オブジェクトが破棄するドライバーのプライベート データへのハンドル。 Microsoft Direct3D ランタイムは、以前にオブジェクトに割り当てたメモリ領域を解放します。 そのため、ドライバーは、このメモリ領域にアクセスできなくなります。

戻り値

何一つ

備考

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

ドライバーは、D3DDDIERR_DEVICEREMOVEDを除き、エラーが発生しないようにする必要があります。 したがって、pfnSetErrorCb 関数の呼び出しで、ドライバーが D3DDDIERR_DEVICEREMOVEDを除くエラーを渡した場合、Microsoft Direct3D ランタイムはエラーが重大であると判断します。 デバイスが削除された場合でも、ドライバーは D3DDDIERR_DEVICEREMOVEDを返す必要はありません。ただし、デバイスの取り外しが DestroyShader の操作に干渉した場合 (通常は発生しないはずです)、ドライバーは D3DDDIERR_DEVICEREMOVEDを返すことができます。

必要条件

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

関連項目

D3D10DDI_DEVICEFUNCS

pfnSetErrorCb