public async Task Initialize() { await gameLoop.Initialize(); await Graphics.Initialize(); await Keyboard.Initialize(); if (Mouse != null) { await Mouse?.Initialize(); } gameLoop.OnUpdate += OnUpdate; Keyboard.KeyPressed += OnKeyPressed; if (Mouse != null) { Mouse.MousePressed += OnMousePressed; } }