#pragma once #include #include #include struct Sprite { double x; double y; int texture; // ZED: this should be a separate transform parameter double elevation=0; int uDiv=1; int vDiv=1; }; using Image = std::vector; struct TexturePack { int NUM_SPRITES=1; static const int TEXTURE_WIDTH=256; // must be power of two static const int TEXTURE_HEIGHT=256; // must be power of two std::vector images; std::vector sprites{{4.0, 3.55, 6}}; Image floor; Image ceiling; void load_textures(); std::vector load_image(std::string filename); Sprite& get_sprite(size_t sprite_num); Image& get_texture(size_t num); };