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 回调函数来设置错误代码。
接口实现的每个类实例包含以下信息:
- 与该类实例关联的代码
- 该类实例使用的数据的位置
如果驱动程序) 内存不足,驱动程序可以传递E_OUTOFMEMORY (;如果在调用 pfnSetErrorCb 函数) 删除设备,则驱动程序可以传递D3DDDIERR_DEVICEREMOVED (。 Direct3D 运行时确定任何其他错误都是严重错误。 如果驱动程序通过任何错误(包括D3DDDIERR_DEVICEREMOVED),则 Direct3D 运行时将确定句柄无效;因此,运行时不会调用 DestroyShader 函数来销毁 hShader 参数指定的句柄。
GsSetShaderWithIfaces 函数设置几何着色器代码以及一组接口,以便所有后续绘制操作都使用该代码和这些接口。
PsSetShaderWithIfaces 函数设置像素着色器代码以及一组接口,以便所有后续绘制操作都使用该代码和这些接口。
DsSetShaderWithIfaces 函数设置域着色器代码以及一组接口,以便所有后续绘制操作都使用该代码和这些接口。
HsSetShaderWithIfaces 函数设置外壳着色器代码以及一组接口,以便所有后续绘制操作都使用该代码和这些接口。
VsSetShaderWithIfaces 函数设置顶点着色器代码以及一组接口,以便所有后续绘制操作都使用该代码和这些接口。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 7 操作系统开始支持 CsSetShaderWithIfaces。 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |