summaryrefslogtreecommitdiffstats
path: root/src/image.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/image.c')
-rw-r--r--src/image.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/image.c b/src/image.c
new file mode 100644
index 0000000..557e1de
--- /dev/null
+++ b/src/image.c
@@ -0,0 +1,22 @@
+#include <SDL.h>
+#include <SDL_image.h>
+#include "logging.h"
+#include "image.h"
+
+SDL_Surface *
+load_png(const char *path)
+{
+ SDL_RWops *rwops;
+ SDL_Surface *img;
+
+ debug("Loading PNG image \"%s\"...", path);
+
+ rwops = SDL_RWFromFile(path, "rb");
+ img = IMG_LoadPNG_RW(rwops);
+ if (!img) {
+ err(1, "Failed to load image \"%s\" (%s)",
+ path, IMG_GetError());
+ }
+
+ return img;
+}