Sha256: 058526eec8d21548951b3886bc8351e276414b99b53dd7a55d489d4ca5a388f7
Contents?: true
Size: 1.49 KB
Versions: 3
Compression:
Stored size: 1.49 KB
Contents
#pragma once #include <Gosu/Fwd.hpp> #include <Gosu/Drawable.hpp> #include <Gosu/Platform.hpp> #include <functional> #include <memory> #include <vector> namespace Gosu { /// When an image file is too large to be represented by a single OpenGL texture, Gosu automatically /// splits it up into a rectangle of tiles instead of throwing an error. class TiledDrawable : public Drawable { int m_width, m_height; struct Tile { int x = 0, y = 0; std::unique_ptr<Drawable> data = nullptr; }; std::vector<Tile> m_tiles; public: TiledDrawable(const Bitmap& source, const Rect& source_rect, int tile_size, unsigned image_flags); /// This constructor is used to implement subimage(). TiledDrawable(const TiledDrawable& parent, const Rect& rect); int width() const override { return m_width; } int height() const override { return m_height; } void draw(double x1, double y1, Color c1, // double x2, double y2, Color c2, // double x3, double y3, Color c3, // double x4, double y4, Color c4, // ZPos z, BlendMode mode) const override; const GLTexInfo* gl_tex_info() const override { return nullptr; } std::unique_ptr<Drawable> subimage(const Rect& rect) const override; Bitmap to_bitmap() const override; void insert(const Bitmap& bitmap, int x, int y) override; }; }
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
gosu-2.0.0.pre8 | src/TiledDrawable.hpp |
gosu-2.0.0.pre7 | src/TiledDrawable.hpp |
gosu-2.0.0.pre6 | src/TiledDrawable.hpp |