public CompositeRenderer() { _glRenderer = new OpenGLRenderer(); _d3dRenderer = new Direct3DRenderer(); _renderers.Add(_glRenderer); _renderers.Add(_d3dRenderer); }
public Direct3DWindow(IController controller, IRenderer renderer, double frameRate) { if (controller == null) throw new ArgumentNullException("controller"); if (renderer == null) throw new ArgumentNullException("renderer"); _controller = controller; _renderer = (Direct3DRenderer) renderer; _renderingAdapter = new Direct3DRenderingAdapter(_controller, _renderer, _renderer.Direct3DDevice, frameRate); Width = controller.Width; Height = controller.Height; if (_controller.IsFullScreen) WindowState = WindowState.Maximized; Title = controller.Name; InitializeComponent(); if (_controller.HasUserInterface) { if (_controller.CentralView != null) MainGrid.Children.Add((UIElement) _controller.CentralView); if (_controller.LeftView != null) LeftGrid.Children.Add((UIElement) _controller.LeftView); if (_controller.RightView != null) RightGrid.Children.Add((UIElement) _controller.RightView); if (_controller.TopView != null) TopGrid.Children.Add((UIElement) _controller.TopView); if (_controller.BottomView != null) BottomGrid.Children.Add((UIElement) _controller.BottomView); } Loaded += OnLoaded; Closing += OnClosing; KeyDown += OnKeyPress; }
public Direct3DRenderingAdapter(IController controller, Direct3DRenderer renderer, Device device, double frameRate) { if (controller == null) throw new ArgumentNullException("controller"); if (renderer == null) throw new ArgumentNullException("renderer"); if (device == null) throw new ArgumentNullException("device"); _controller = controller; _renderer = renderer; _frameRate = frameRate; Device = device; }