diff options
author | P. J. McDermott <pjm@nac.net> | 2013-02-18 17:57:14 (EST) |
---|---|---|
committer | P. J. McDermott <pjm@nac.net> | 2013-02-18 17:57:14 (EST) |
commit | e289e1dd67d2e1b7769bb0fdd23d064a6c596b2b (patch) | |
tree | a211c8f1343fdb831cff96e4de74b3948847a08b /src/viewport.c | |
parent | c250247b7be8b6a0942f7aaeaab95ad6fef933be (diff) | |
download | overworld-rpg-e289e1dd67d2e1b7769bb0fdd23d064a6c596b2b.zip overworld-rpg-e289e1dd67d2e1b7769bb0fdd23d064a6c596b2b.tar.gz overworld-rpg-e289e1dd67d2e1b7769bb0fdd23d064a6c596b2b.tar.bz2 |
Begin work on areas and viewports.
Diffstat (limited to 'src/viewport.c')
-rw-r--r-- | src/viewport.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/viewport.c b/src/viewport.c new file mode 100644 index 0000000..97e73dd --- /dev/null +++ b/src/viewport.c @@ -0,0 +1,28 @@ +#include <SDL.h> +#include "viewport.h" +#include "logging.h" + +struct viewport * +init_viewport(int width, int height, int bpp) +{ + struct viewport *vp; + + vp = malloc(sizeof(*vp)); + if (vp == NULL) { + err(1, "Failed to allocate viewport"); + } + + vp->x = 0; + vp->y = 0; + vp->w= width; + vp->h= height; + + debug("Setting video mode..."); + vp->screen = SDL_SetVideoMode(width, height, bpp, + SDL_SWSURFACE | SDL_ANYFORMAT); + if (vp->screen == NULL) { + err(1, "Failed to set video mode (%s)", SDL_GetError()); + } + + return vp; +} |