DMLCreateDevice 函数 (directml.h)
为给定的 Direct3D 12 设备创建 DirectML 设备。
语法
HRESULT DMLCreateDevice(
ID3D12Device *d3d12Device,
DML_CREATE_DEVICE_FLAGS flags,
REFIID riid,
void **ppv
);
参数
d3d12Device
类型: ID3D12Device*
指向 ID3D12Device 的指针,该 ID3D12Device 表示要创建 DirectML 设备的 Direct3D 12 设备。 DirectML 支持任何 D3D 功能级别,以及在任何适配器(包括 WARP)上创建的 Direct3D 12 设备。 但是,DirectML 中并非所有功能都可用,具体取决于 Direct3D 12 设备的功能。 有关详细信息,请参阅 IDMLDevice::CheckFeatureSupport 。
如果对 DMLCreateDevice 的调用成功,则 DirectML 设备将保留对提供的 Direct3D 12 设备的强引用。
flags
类型: DML_CREATE_DEVICE_FLAGS
指定其他设备创建选项 的DML_CREATE_DEVICE_FLAGS 值。
riid
类型: REFIID
对要在 设备中返回的接口 (GUID) 的全局唯一标识符的引用。 这应为 IDMLDevice 的 GUID。
ppv
类型:_COM_Outptr_opt_ void**
指向接收指向设备的指针的内存块的指针。 这是指向 IDMLDevice 的指针的地址,表示创建的 DirectML 设备。
返回值
类型: HRESULT
如果函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
备注
DirectML 版本 1.1.0 中引入了此函数的较新版本 DMLCreateDevice1。 DMLCreateDevice 等效于调用 DMLCreateDevice1 并提供DML_FEATURE_LEVEL_1_0的 minimumFeatureLevel。
要求
最低受支持的客户端 | Windows 10 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2016 [仅限桌面应用] |
目标平台 | Windows |
标头 | directml.h |
Library | DirectML.lib |
DLL | DirectML.dll |