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