Compartir a través de


Método ID3D11On12Device::AcquireWrappedResources (d3d11on12.h)

Adquiere recursos D3D11 para su uso con D3D 11on12. Indica que la representación en los recursos ajustados puede empezar de nuevo.

Sintaxis

void AcquireWrappedResources(
  [in] ID3D11Resource * const *ppResources,
       UINT           NumResources
);

Parámetros

[in] ppResources

Tipo: ID3D11Resource*

Especifica un puntero a un conjunto de recursos D3D11, definido por ID3D11Resource.

NumResources

Tipo: UINT

Recuento del número de recursos.

Valor devuelto

None

Observaciones

Este método marca los recursos como "adquiridos" en el seguimiento de riesgos.

Los recursos de exclusión mutua con clave no se pueden proporcionar a este método; use IDXGIKeyedMutex::AcquireSync en su lugar.

Ejemplos

Representar texto sobre D3D12 mediante D2D a través del dispositivo 11On12.

// Render text over D3D12 using D2D via the 11On12 device.
void D3D1211on12::RenderUI()
{
    D2D1_SIZE_F rtSize = m_d2dRenderTargets[m_frameIndex]->GetSize();
    D2D1_RECT_F textRect = D2D1::RectF(0, 0, rtSize.width, rtSize.height);
    static const WCHAR text[] = L"11On12";

    // Acquire our wrapped render target resource for the current back buffer.
    m_d3d11On12Device->AcquireWrappedResources(m_wrappedBackBuffers[m_frameIndex].GetAddressOf(), 1);

    // Render text directly to the back buffer.
    m_d2dDeviceContext->SetTarget(m_d2dRenderTargets[m_frameIndex].Get());
    m_d2dDeviceContext->BeginDraw();
    m_d2dDeviceContext->SetTransform(D2D1::Matrix3x2F::Identity());
    m_d2dDeviceContext->DrawTextW(
        text,
        _countof(text) - 1,
        m_textFormat.Get(),
        &textRect,
        m_textBrush.Get()
        );
    ThrowIfFailed(m_d2dDeviceContext->EndDraw());

    // Release our wrapped render target resource. Releasing 
    // transitions the back buffer resource to the state specified
    // as the OutState when the wrapped resource was created.
    m_d3d11On12Device->ReleaseWrappedResources(m_wrappedBackBuffers[m_frameIndex].GetAddressOf(), 1);

    // Flush to submit the 11 command list to the shared command queue.
    m_d3d11DeviceContext->Flush();
}

Consulte el código de ejemplo en la referencia de D3D12.

Requisitos

   
Plataforma de destino Windows
Encabezado d3d11on12.h
Library D3D11.lib
Archivo DLL D3D11.dll

Consulte también

ID3D11On12Device