#include "gfx_context.h" GfxContext * GfxContext_new () { GfxContext *self = g_new0 (GfxContext, 1); self->window = SDL_CreateWindow (GAME_NAME, 800, 600, SDL_WINDOW_RESIZABLE); if (!self->window) { g_critical ("Couldn't create window for context %p: %s", self, SDL_GetError ()); } self->renderer = SDL_CreateRenderer (self->window, NULL); if (!self->window) { g_critical ("Couldn't create renderer for context %p: %s", self, SDL_GetError ()); } return self; } void GfxContext_prerender (GfxContext *self) { SDL_RenderClear (self->renderer); } void GfxContext_postrender (GfxContext *self) { SDL_RenderPresent (self->renderer); } void GfxContext_free (GfxContext *self) { SDL_DestroyRenderer (self->renderer); SDL_DestroyWindow (self->window); g_free (self); }