Función DMLCreateDevice1 (directml.h)
Crea un dispositivo DirectML para un dispositivo Direct3D 12 determinado.
Sintaxis
HRESULT DMLCreateDevice1(
ID3D12Device *d3d12Device,
DML_CREATE_DEVICE_FLAGS flags,
DML_FEATURE_LEVEL minimumFeatureLevel,
REFIID riid,
void **ppv
);
Parámetros
d3d12Device
Tipo: ID3D12Device*
Puntero a un dispositivo ID3D12Device que representa el dispositivo Direct3D 12 para crear el dispositivo DirectML. DirectML admite cualquier nivel de característica D3D y dispositivos Direct3D 12 creados en cualquier adaptador, incluido WARP. Sin embargo, no todas las características de DirectML pueden estar disponibles en función de las funcionalidades del dispositivo Direct3D 12. Consulte IDMLDevice::CheckFeatureSupport para obtener más información.
Si la llamada a DMLCreateDevice1 es correcta, el dispositivo DirectML mantiene una referencia fuerte al dispositivo Direct3D 12 proporcionado.
flags
Tipo: DML_CREATE_DEVICE_FLAGS
Valor de DML_CREATE_DEVICE_FLAGS que especifica opciones de creación de dispositivos adicionales.
minimumFeatureLevel
Tipo: DML_FEATURE_LEVEL
Valor de DML_FEATURE_LEVEL que especifica la compatibilidad mínima de nivel de característica necesaria.
Este parámetro puede ser útil para los autores de llamadas que requieren una versión específica de DirectML, pero que pueden encontrarse llamando a una versión anterior de DirectML. Esto puede ocurrir, por ejemplo, cuando el usuario ejecuta la aplicación en una versión anterior de Windows 10.
Las aplicaciones que dependen explícitamente de la funcionalidad introducida en un nivel de característica determinado pueden especificarla como minimumFeatureLevel. Esto garantizará que DMLCreateDevice1 no se realice correctamente a menos que la implementación subyacente sea al menos tan capaz como este nivel de característica mínimo solicitado.
Tenga en cuenta que, como este parámetro especifica un nivel de característica mínimo , el dispositivo DirectML subyacente puede admitir de hecho un nivel de característica superior al mínimo solicitado. Una vez que la creación del dispositivo se realiza correctamente, puede consultar todos los niveles de características admitidos por este dispositivo mediante IDMLDevice::CheckFeatureSupport.
riid
Tipo: REFIID
Referencia al identificador único global (GUID) de la interfaz que desea devolver en el dispositivo. Se espera que sea el GUID de IDMLDevice.
ppv
Tipo: _COM_Outptr_opt_ void**
Puntero a un bloque de memoria que recibe un puntero al dispositivo. Esta es la dirección de un puntero a un IDMLDevice, que representa el dispositivo DirectML creado.
Valor devuelto
Tipo: HRESULT
Si la función se ejecuta correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Si esta versión de DirectML no admite el valor minimumFeatureLevel solicitado, esta función devolverá DXGI_ERROR_UNSUPPORTED.
Comentarios
Se introdujo una versión más reciente de esta función, DMLCreateDevice1, en la versión 1.1.0 de DirectML. DMLCreateDevice1 equivale a llamar a DMLCreateDevice1 y proporcionar un valor minimumFeatureLevel de DML_FEATURE_LEVEL_1_0.
Disponibilidad
Esta API se introdujo en la versión 1.1.0
de DirectML.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | compilación 20348 de Windows 10 |
Servidor mínimo compatible | compilación 20348 de Windows 10 |
Plataforma de destino | Windows |
Encabezado | directml.h |
Library | DirectML.lib |
Archivo DLL | DirectML.dll |