Esempio n. 1
0
 public DX11RenderContext(Factory1 factory, DXGIScreen screen, DeviceCreationFlags flags = DeviceCreationFlags.None)
 {
     this.Factory = factory;
     this.Screen = screen;
     this.Device = new Device(screen.Adapter, flags);
     this.immediatecontext = this.Device.ImmediateContext;
     this.CurrentDeviceContext = this.immediatecontext;
 }
Esempio n. 2
0
        public void Refresh()
        {
            foreach (DXGIScreen scr in this.screens)
            {
                scr.Adapter.Dispose();
                scr.Monitor.Dispose();
            }
            screens.Clear();

            for (int i = 0; i < this.Factory.GetAdapterCount1(); i++)
            {
                Adapter1 adapter = this.Factory.GetAdapter1(i);

                for (int j = 0; j < adapter.GetOutputCount(); j++)
                {
                    Output output = adapter.GetOutput(j);

                    DXGIScreen screen = new DXGIScreen();
                    screen.Adapter = adapter;
                    screen.AdapterId = i;
                    screen.Monitor = output;
                    screen.MonitorId = j;

                    screens.Add(screen);
                }
            }
        }