예제 #1
0
        public void Start()
        {
            _renderer             = _runner.GetSubSystem <Sdl2Renderer>();
            _ui                   = _runner.GetSubSystem <Ui>();
            _loadingScreenTexture = _runner.GetSubSystem <ResourceLoader>().LoadEmbeddedAsset <ProcessedTexture>(_splashScreen);

            _loadingTexture     = _loadingScreenTexture.CreateDeviceTexture(_renderer.GraphicsDevice, _renderer.ResourceFactory, TextureUsage.Sampled);
            _loadingTextureView = _renderer.ResourceFactory.CreateTextureView(_loadingTexture);

            _loadingScreen = new LoadingScreen(_ui.GetOrCreateImGuiBinding(_renderer.ResourceFactory, _loadingTextureView));

            _ui.Windows.Add(_loadingScreen);

            LoadScene(new MenuScene());
        }
예제 #2
0
파일: Ui.cs 프로젝트: darkfriend77/wom
        public void Start()
        {
            _renderer = _runner.GetSubSystem <Sdl2Renderer>();
            _ft       = _runner.GetSubSystem <FrameTimer>();

            if (_imguiRenderer == null)
            {
                _imguiRenderer = new ImGuiRenderer(_renderer.GraphicsDevice, _renderer.MainSwapchain.Framebuffer.OutputDescription, (int)_renderer.Size.X, (int)_renderer.Size.Y);
            }
            else
            {
                _imguiRenderer.CreateDeviceResources(_renderer.GraphicsDevice, _renderer.MainSwapchain.Framebuffer.OutputDescription);
            }

            _renderer.Render += RenderCallback;
        }
예제 #3
0
 public void Start()
 {
     _renderer = _runner.GetSubSystem <Sdl2Renderer>();
 }
예제 #4
0
 public void Shutdown()
 {
     _renderer = null;
 }