diff options
author | P. J. McDermott <pjm@nac.net> | 2013-02-19 17:34:25 (EST) |
---|---|---|
committer | P. J. McDermott <pjm@nac.net> | 2013-02-19 17:34:25 (EST) |
commit | 2bc98ed29afcb79c9cdfab6f0940378e4f195280 (patch) | |
tree | 8e518d50c15bd9c3ad29963640df6643f222eaf8 /src/main.c | |
parent | 953782576764dc42ba2abfc1097255f53060ce71 (diff) | |
download | overworld-rpg-2bc98ed29afcb79c9cdfab6f0940378e4f195280.zip overworld-rpg-2bc98ed29afcb79c9cdfab6f0940378e4f195280.tar.gz overworld-rpg-2bc98ed29afcb79c9cdfab6f0940378e4f195280.tar.bz2 |
Limit surfaces to 8 bpp. Set keys and palettes.
Also clean up main() a bit more.
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 53 |
1 files changed, 29 insertions, 24 deletions
@@ -13,6 +13,7 @@ render_area_to_viewport(a, vp); \ SDL_Flip(vp->screen); \ SDL_Delay(10); \ + ++i; \ } while (0) int @@ -20,41 +21,40 @@ main(void) { struct viewport *vp; struct map *map; - struct image *img; +#if 0 struct map_tileset *ts; struct map_exit *e; +#endif struct area *a; + SDL_Color colors[256]; + int i; + Uint32 start, end; int x, y; init(); - vp = init_viewport(240, 160, 32); + vp = init_viewport(240, 160, 8); map = map_get("data/forest1-8bit.tmx"); a = area_new(map); - debug("screen: bpp: %u, masks: 0x%8.8x 0x%8.8x 0x%8.8x 0x%8.8x", - vp->screen->format->BitsPerPixel, - vp->screen->format->Rmask, vp->screen->format->Gmask, - vp->screen->format->Bmask, vp->screen->format->Amask); - img = img_png_get("../forest-6-layer-test_ground.png"); - debug("image: bpp: %u, masks: 0x%8.8x 0x%8.8x 0x%8.8x 0x%8.8x", - img->image->format->BitsPerPixel, - img->image->format->Rmask, img->image->format->Gmask, - img->image->format->Bmask, img->image->format->Amask); - img_png_free(img); - img = img_png_get("data/tilesets/mountain_landscape_19-16.png"); - debug("image: bpp: %u, masks: 0x%8.8x 0x%8.8x 0x%8.8x 0x%8.8x", - img->image->format->BitsPerPixel, - img->image->format->Rmask, img->image->format->Gmask, - img->image->format->Bmask, img->image->format->Amask); - img_png_free(img); - img = img_png_get("data/tilesets/mountain_landscape_19-16-8bit.png"); - debug("image: bpp: %u, masks: 0x%8.8x 0x%8.8x 0x%8.8x 0x%8.8x", - img->image->format->BitsPerPixel, - img->image->format->Rmask, img->image->format->Gmask, - img->image->format->Bmask, img->image->format->Amask); - img_png_free(img); + for (i = 0; i < 256; ++i) { + colors[i].r = (i % 8) * 36; + colors[i].g = (i % 64 / 8) * 36; + colors[i].b = (i / 64) * 85; + } + if (!SDL_SetPalette(vp->screen, SDL_LOGPAL, colors, 0, 256)) { + warn("Failed to set palette"); + } + for (i = 0; i < 256; ++i) { + colors[i].r = i; + colors[i].g = i; + colors[i].b = i; + } +/* if (!SDL_SetPalette(vp->screen, SDL_PHYSPAL, colors, 0, 256)) { + warn("Failed to set palette"); + }*/ +#if 0 debug("Map dimensions: %dx%d", map->width, map->height); for (ts = map->tilesets_head; ts != NULL; ts = ts->next) { debug("Tileset name: %s", ts->tileset->name); @@ -69,8 +69,11 @@ main(void) e->target_map->width, e->target_map->height, e->target_x_coord, e->target_y_coord); } +#endif /* Demo */ + i = 0; + start = SDL_GetTicks(); x = 19 * map->tilewidth ; y = 38 * map->tileheight; for (; y > 34 * map->tileheight; y -= 2) DEMO(); /* Up */ @@ -84,6 +87,8 @@ main(void) for (; y > 5 * map->tileheight; y -= 2) DEMO(); /* Up */ for (; x < 15 * map->tilewidth ; x += 2) DEMO(); /* Right */ for (; y > 1 * map->tileheight; y -= 2) DEMO(); /* Up */ + end = SDL_GetTicks(); + debug("Rendered %d frames in %d milliseconds", i, end - start); quit(0); |