#ifndef YAZE_APPLICATION_GRAPHICS_SCENE_H #define YAZE_APPLICATION_GRAPHICS_SCENE_H #include #include #include #include #include "Core/Renderer.h" #include "graphics/tile.h" namespace yaze { namespace Application { namespace Graphics { class Scene { public: Scene() = default; void buildScene(const std::vector& tiles, const SNESPalette mPalette, const TilesPattern& tp); void buildSurface(const std::vector& tiles, SNESPalette& mPalette, const TilesPattern& tp); void updateScene(); void setTilesZoom(unsigned int tileZoom); void setTilesPattern(TilesPattern tp); std::unordered_map imagesCache; private: unsigned int tilesZoom; TilesPattern tilesPattern; std::vector allTiles; std::vector > arrangedTiles; }; } // namespace Graphics } // namespace Application } // namespace yaze #endif