aboutsummaryrefslogtreecommitdiff
path: root/src/sdl/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sdl/main.c')
-rw-r--r--src/sdl/main.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/sdl/main.c b/src/sdl/main.c
index 12f296b..7240d9a 100644
--- a/src/sdl/main.c
+++ b/src/sdl/main.c
@@ -9,6 +9,7 @@
#include "util.h"
#include "action.h"
#include "warp-buf.h"
+#include "sprites.h"
#include "draw.h"
static void
@@ -41,6 +42,7 @@ int main(int argc, char *argv[]) {
size_t level_num = (argc > 1) ? atoi(argv[1]) : 0,
zoom = 0;
const level_t *level = levels_get_level(level_num);
+ const char *sprites_png_path = "../assets/sprites.png";
// init warp buffer
warp_buf_t warp_buf;
@@ -68,7 +70,7 @@ int main(int argc, char *argv[]) {
// create window and renderer
SDL_Window *win;
SDL_Renderer *renderer;
- if (SDL_CreateWindowAndRenderer(800, 600, SDL_WINDOW_RESIZABLE, &win, &renderer)) {
+ if (SDL_CreateWindowAndRenderer(800, 600, SDL_RENDERER_ACCELERATED | SDL_WINDOW_RESIZABLE, &win, &renderer)) {
die("SDL_CreateWindowAndRenderer(): %s", SDL_GetError());
}
@@ -79,8 +81,15 @@ int main(int argc, char *argv[]) {
.ctx = &ctx,
.renderer = renderer,
.zoom = &zoom,
+ .sprites = sprites_init(renderer, sprites_png_path),
};
+ Uint32 format;
+ int access, w, h;
+ if (SDL_QueryTexture(draw_ctx.sprites, &format, &access, &w, &h)) {
+ die("SDL_QueryTexture(): %s", SDL_GetError());
+ }
+
bool done = false;
SDL_Event ev;
while (!done) {
@@ -192,6 +201,7 @@ int main(int argc, char *argv[]) {
}
// fini renderer, window
+ SDL_DestroyTexture(draw_ctx.sprites);
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(win);