Funzione DMLCreateDevice1 (directml.h)
Crea un dispositivo DirectML per un dispositivo Direct3D 12 specificato.
Sintassi
HRESULT DMLCreateDevice1(
ID3D12Device *d3d12Device,
DML_CREATE_DEVICE_FLAGS flags,
DML_FEATURE_LEVEL minimumFeatureLevel,
REFIID riid,
void **ppv
);
Parametri
d3d12Device
Tipo: ID3D12Device*
Puntatore a un dispositivo ID3D12Device che rappresenta il dispositivo Direct3D 12 per creare il dispositivo DirectML tramite. DirectML supporta qualsiasi livello di funzionalità D3D e i dispositivi Direct3D 12 creati in qualsiasi scheda, tra cui WARP. Tuttavia, non tutte le funzionalità in DirectML possono essere disponibili a seconda delle funzionalità del dispositivo Direct3D 12. Per altre informazioni , vedere IDMLDevice::CheckFeatureSupport .
Se la chiamata a DMLCreateDevice1 ha esito positivo, il dispositivo DirectML mantiene un riferimento sicuro al dispositivo Direct3D 12 fornito.
flags
Tipo: DML_CREATE_DEVICE_FLAGS
Valore DML_CREATE_DEVICE_FLAGS che specifica altre opzioni di creazione del dispositivo.
minimumFeatureLevel
Tipo: DML_FEATURE_LEVEL
Valore DML_FEATURE_LEVEL che specifica il supporto minimo del livello di funzionalità richiesto.
Questo parametro può essere utile per i chiamanti che richiedono una versione specifica di DirectML, ma chi può chiamare in una versione precedente di DirectML. Ciò può verificarsi, ad esempio, quando l'utente esegue l'applicazione in una versione precedente di Windows 10.
Le applicazioni che dipendono in modo esplicito dalle funzionalità introdotte in un determinato livello di funzionalità possono specificarlo come minimoFeatureLevel. In questo modo, DMLCreateDevice1 non avrà esito positivo a meno che l'implementazione sottostante non sia almeno in grado di supportare questo livello minimo di funzionalità richiesto.
Si noti che come questo parametro specifica un livello di funzionalità minimo , il dispositivo DirectML sottostante può infatti supportare un livello di funzionalità superiore rispetto al minimo richiesto. Una volta completata la creazione del dispositivo, è possibile eseguire query su tutti i livelli di funzionalità supportati da questo dispositivo usando IDMLDevice::CheckFeatureSupport.
riid
Tipo: REFIID
Riferimento all'identificatore univoco globale (GUID) dell'interfaccia da restituire nel dispositivo. Si prevede che sia il GUID di IDMLDevice.
ppv
Tipo: _COM_Outptr_opt_ void**
Puntatore a un blocco di memoria che riceve un puntatore al dispositivo. Si tratta dell'indirizzo di un puntatore a un IDMLDevice, che rappresenta il dispositivo DirectML creato.
Valore restituito
Tipo: HRESULT
Se la funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Se questa versione di DirectML non supporta il minimo RichiestoFeatureLevel , questa funzione restituirà DXGI_ERROR_UNSUPPORTED.
Commenti
Una versione più recente di questa funzione, DMLCreateDevice1, è stata introdotta in DirectML versione 1.1.0. DMLCreateDevice1 equivale a chiamare DMLCreateDevice1 e fornire un minimoFeatureLevel di DML_FEATURE_LEVEL_1_0.
Disponibilità
Questa API è stata introdotta in DirectML versione 1.1.0
.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 Build 20348 |
Server minimo supportato | Windows 10 Build 20348 |
Piattaforma di destinazione | Windows |
Intestazione | directml.h |
Libreria | DirectML.lib |
DLL | DirectML.dll |