public override void GetTexture(Size2F surfaceSize, out DrawingSurfaceSynchronizedTexture synchronizedTexture, out RectangleF textureSubRectangle) { if (_synchronizedTexture == null) { _drawingSurfaceUpdateHandler.CreateDeviceResources(); _drawingSurfaceUpdateHandler.CreateWindowSizeDependentResources(surfaceSize); _synchronizedTexture = _host.CreateSynchronizedTexture(_drawingSurfaceUpdateHandler._renderTarget); } synchronizedTexture = _synchronizedTexture; textureSubRectangle = new RectangleF { Right = surfaceSize.Width, Bottom = surfaceSize.Height }; _surfaceUpdateHandler.UpdateGameWindowSize(surfaceSize); _synchronizedTexture.BeginDraw(); _surfaceUpdateHandler.Draw( _drawingSurfaceUpdateHandler._device, _drawingSurfaceUpdateHandler._deviceContext, _drawingSurfaceUpdateHandler._renderTargetView); _synchronizedTexture.EndDraw(); }
public override void Draw(Device device, DeviceContext context, RenderTargetView renderTargetView) { _surfaceUpdateHandler.Draw(device, context, renderTargetView); }