public DataBindingApplication() { var services = new ServiceRegistry(); // Needs to be declared before the D3D device manager as it hooks to // the D3D device creation event var d2dDeviceManager = new Direct2DDeviceManager(services); deviceManager = ToDispose(new SimpleDeviceManager(services) { HorizontalDpi = 96.0f, VerticalDpi = 96.0f, PreferredBackBufferWidth = 1280, PreferredBackBufferHeight = 720, PreferredBackBufferFormat = Format.R8G8B8A8_UNorm, IsFullScreen = false, IsStereo = false, PreferredGraphicsProfile = new[] { FeatureLevel.Level_11_0, }, PreferredMultiSampleCount = 1 }); form = new RenderForm("OdysseyUI Test") { ClientSize = new Size(deviceManager.PreferredBackBufferWidth, deviceManager.PreferredBackBufferHeight), }; deviceManager.CreateDevice(form.Handle, DeviceCreationFlags.Debug | DeviceCreationFlags.BgraSupport); var content = new ContentManager(services); var styleManager = new StyleManager(services); uiManager = new DesktopUserInterfaceManager(services); services.AddService(typeof(IStyleService), styleManager); services.AddService(typeof(IDirect2DService), d2dDeviceManager); services.AddService(typeof(IUserInterfaceState), uiManager); services.AddService(typeof(IWindowService), this); content.LoadAssetList("Assets/Assets.yaml"); overlay = ToDispose(SampleOverlay.New(services)); overlay.Initialize(); uiManager.Initialize(); uiManager.CurrentOverlay = overlay; }
static async Task Main() { using var overlay = new SampleOverlay(); await overlay.Run(); }