52 lines
1.3 KiB
C#
52 lines
1.3 KiB
C#
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;
|
|
} |