예제 #1
0
void CRenderCaptureDX::EndRender()
{
  // send commands to the GPU queue
  auto deviceResources = DX::DeviceResources::Get();
  deviceResources->FinishCommandList();
  ID3D11DeviceContext* pContext = deviceResources->GetImmediateContext();

  pContext->CopyResource(m_copyTex.Get(), m_renderTex.Get());

  if (m_query)
  {
    pContext->End(m_query);
  }

  if (m_flags & CAPTUREFLAG_IMMEDIATELY)
    SurfaceToBuffer();
  else
    SetState(CAPTURESTATE_NEEDSREADOUT);
}
예제 #2
0
void FVulkanDevice::NotifyDeletedRenderTarget(const FVulkanTextureBase* Texture)
{
	//#todo-rco: Loop through all contexts!
	GetImmediateContext().GetPendingState().NotifyDeletedRenderTarget(Texture);
}