public bool DrawFrame(Action <int, int> draw, [CallerMemberName] string frameName = null) { DeviceContext.RSSetViewport(new RawViewport(0.0f, 0.0f, Window.Width, Window.Height)); var clearColor = new RawColor4(0.0f, 0.2f, 0.4f, 1.0f); DeviceContext.ClearRenderTargetView(RenderTargetView, clearColor); // Call callback. draw(Window.Width, Window.Height); var result = SwapChain.Present(1, PresentFlags.None); if (result.Failure && result.Code == DirectX.DXGI.ResultCode.DeviceRemoved.Code) { return(false); } return(true); }