using DaggerFramework; using DaggerFramework.Audio; using DaggerFramework.Rendering; public class TestGame : Game { public override string ResourceRoot => "Resources/"; public override void Shutdown() => scene.Renderer.CloseWindow(); protected override void OnStart() { _renderer = new RaylibRenderer(); _inputHandler = new RaylibInputHandler(); scene = new Scene(_renderer, _inputHandler, new DummyAudioBackend()); var mainGameLayer = new EntityLayer(); scene.AddLayer("World", mainGameLayer); var text = new Text2d(); text.Contents = "Hello World!"; text.FontSize = 32; var sprite = new Sprite2d(); sprite.Texture = _funnyTexture; mainGameLayer.AddEntity(text); mainGameLayer.AddEntity(sprite); scene.Init(); scene.Start(); MainLoop(); } protected override void LoadResources() { _funnyTexture = _textureLoader.Load($"{ResourceRoot}icon.png"); } protected override void MainLoop() { while (!scene.ShouldStop()) scene.Update(); } private Renderer _renderer; private RaylibInputHandler _inputHandler; private Texture2dLoader _textureLoader = new(); private Texture2d? _funnyTexture; }