PFND3D11DDI_SETSHADER_WITH_IFACES回调函数 (d3d10umddi.h)
CsSetShaderWithIfaces 函数设置计算着色器代码以及一组接口,以便所有后续调度作都使用该代码和这些接口。
语法
PFND3D11DDI_SETSHADER_WITH_IFACES Pfnd3d11ddiSetshaderWithIfaces;
void Pfnd3d11ddiSetshaderWithIfaces(
D3D10DDI_HDEVICE unnamedParam1,
D3D10DDI_HSHADER unnamedParam2,
[in] UINT NumClassInstances,
const UINT *unnamedParam4,
const D3D11DDIARG_POINTERDATA *unnamedParam5
)
{...}
参数
unnamedParam1
hDevice [in]
显示设备的句柄(图形上下文)。
unnamedParam2
hShader [in]
计算着色器代码对象的句柄。
[in] NumClassInstances
接口实现的类实例数。
unnamedParam4
pPointerData [in]
D3D11DDIARG_POINTERDATA 结构的数组。 每个结构描述分配给接口实现的类实例引用的数据的位置。 数组中的元素数由 NumClassInstances 参数指定。
unnamedParam5
pIfaces [in]
函数表标识符的数组。 每个标识符对应于分配给接口实现的类实例。 数组中的元素数由 NumClassInstances 参数指定。
返回值
没有
言论
驱动程序可以使用 pfnSetErrorCb 回调函数来设置错误代码。
接口实现的每个类实例都有以下信息:
- 与该类实例关联的代码
- 该类实例使用的数据的位置
驱动程序可以在调用 pfnSetErrorCb 函数时传递E_OUTOFMEMORY(如果驱动程序内存不足)或D3DDDIERR_DEVICEREMOVED(如果设备已删除)。 Direct3D 运行时确定任何其他错误都至关重要。 如果驱动程序通过任何错误(包括D3DDDIERR_DEVICEREMOVED),Direct3D 运行时将确定句柄无效;因此,运行时不调用 DestroyShader 函数来销毁 hShader 参数指定的句柄。
GsSetShaderWithIfaces 函数设置几何着色器代码以及一组接口,以便所有后续绘图作都使用该代码和这些接口。
PsSetShaderWithIfaces 函数设置像素着色器代码以及一组接口,以便所有后续绘图作都使用该代码和这些接口。
DsSetShaderWithIfaces 函数设置域着色器代码以及一组接口,以便所有后续绘图作都使用该代码和这些接口。
HsSetShaderWithIfaces 函数设置外壳着色器代码以及一组接口,以便所有后续绘图作都使用该代码和这些接口。
VsSetShaderWithIfaces 函数设置顶点着色器代码以及一组接口,以便所有后续绘图作都使用该代码和这些接口。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 7作系统开始,支持 CsSetShaderWithIfaces。 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |