Compartilhar via


Função DMLCreateDevice (directml.h)

Cria um dispositivo DirectML para um determinado dispositivo Direct3D 12.

Sintaxe

HRESULT DMLCreateDevice(
  ID3D12Device            *d3d12Device,
  DML_CREATE_DEVICE_FLAGS flags,
  REFIID                  riid,
  void                    **ppv
);

Parâmetros

d3d12Device

Tipo: ID3D12Device*

Um ponteiro para um ID3D12Device que representa o dispositivo Direct3D 12 para criar o dispositivo DirectML. O DirectML dá suporte a qualquer nível de recurso D3D e dispositivos Direct3D 12 criados em qualquer adaptador, incluindo WARP. No entanto, nem todos os recursos no DirectML podem estar disponíveis dependendo dos recursos do dispositivo Direct3D 12. Consulte IDMLDevice::CheckFeatureSupport para obter mais informações.

Se a chamada para DMLCreateDevice for bem-sucedida, o dispositivo DirectML manterá uma forte referência ao dispositivo Direct3D 12 fornecido.

flags

Tipo: DML_CREATE_DEVICE_FLAGS

Um valor DML_CREATE_DEVICE_FLAGS que especifica opções adicionais de criação de dispositivo.

riid

Tipo: REFIID

Uma referência ao GUID (identificador global exclusivo) da interface que você deseja retornar no dispositivo. Espera-se que esse seja o GUID de IDMLDevice.

ppv

Tipo: _COM_Outptr_opt_ void**

Um ponteiro para um bloco de memória que recebe um ponteiro para o dispositivo. Esse é o endereço de um ponteiro para um IDMLDevice, representando o dispositivo DirectML criado.

Valor retornado

Tipo: HRESULT

Se a função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Uma versão mais recente dessa função, DMLCreateDevice1, foi introduzida no DirectML versão 1.1.0. DMLCreateDevice é equivalente a chamar DMLCreateDevice1 e fornecer um minimumFeatureLevel de DML_FEATURE_LEVEL_1_0.

Requisitos

   
Cliente mínimo com suporte Windows 10 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2016 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho directml.h
Biblioteca DirectML.lib
DLL DirectML.dll

Confira também