KumiScript/renderer/sdl/SDLRenderer.cs

30 lines
721 B
C#
Raw Permalink Normal View History

2024-01-26 05:37:51 +00:00
using SDL2;
namespace KumiScript.Renderer
{
public class SDLRenderer : IDisposable
2024-01-26 05:37:51 +00:00
{
internal readonly nint id;
internal SDLRenderer(SDLWindow window)
{
id = SDL.SDL_CreateRenderer(window.Id, -1, SDL.SDL_RendererFlags.SDL_RENDERER_ACCELERATED | SDL.SDL_RendererFlags.SDL_RENDERER_PRESENTVSYNC);
2024-01-26 05:37:51 +00:00
if (id == 0)
throw new Exception("Failed to create renderer!");
}
public void Clear()
{
SDL.SDL_RenderClear(id);
}
public void Dispose()
{
SDL.SDL_DestroyRenderer(id);
}
2024-01-26 05:37:51 +00:00
public void SwapBuffers()
{
SDL.SDL_RenderPresent(id);
}
}
}