Condividi tramite


funzione interop::CreateDirect3D11DeviceFromDXGIDevice (windows.graphics.directx.direct3d11.interop.h)

Crea un'istanza di IDirect3DDevice da un IDXGIDevice.

Sintassi

HRESULT CreateDirect3D11DeviceFromDXGIDevice(
  [in]  IDXGIDevice  *dxgiDevice,
  [out] IInspectable **graphicsDevice
);

Parametri

[in] dxgiDevice

Tipo: IDXGIDevice*

Il IDXGIDevice da cui creare Direct3DDevice.

[out] graphicsDevice

Tipo: IInspectable**

Istanza Direct3DDevice che esegue il wrapping di DXGIDevice.

Valore restituito

Tipo: HRESULT

Se la funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di erroreHRESULT .

Osservazioni

Sebbene sia consigliabile C++/WinRT, se si usa C++/CX, è consigliabile chiamare CreateDirect3DDevice anziché CreateDirect3D11DeviceFromDXGIDevice. Se si usa WRL, è possibile usare CreateDirect3D11DeviceFromDXGIDevice come illustrato in questo esempio di codice.

using namespace Microsoft::WRL;
ComPtr<ABI::Windows::Graphics::DirectX::Direct3D11::IDirect3DDevice> device;
ComPtr<IInspectable> inspectableSurface;
If (SUCCEEDED(CreateDirect3D11DeviceFromDXGIDevice(dxgiDevice, &inspectableSurface))
{
    hr = inspectableSurface.As(&device);
}

Fabbisogno

Requisito Valore
piattaforma di destinazione Finestre
intestazione windows.graphics.directx.direct3d11.interop.h
libreria D3D11.lib
dll D3D11.dll

Vedere anche

Funzioni di base