Files
2026-03-14 22:27:54 +01:00

31 lines
939 B
C++

#pragma once
#include <SDL3/SDL.h>
#include <SDL3_image/SDL_image.h>
#include <string>
#include <utils.hpp>
namespace Game::Renderer {
class Texture {
public:
Texture(std::string id = "noname");
Texture(const std::string& path, SDL_Renderer* renderer, std::string id = "noname");
Texture(const Texture&);
Texture& operator=(const Texture&);
DISABLE_MOVE(Texture);
virtual ~Texture();
SDL_Texture* getSDLTexture();
std::string getId();
float getWidth();
float getHeight();
bool isTiled() { return mIsTiled; }
void setTiled(bool tiled) { mIsTiled = tiled; }
protected:
SDL_Texture* mTex;
std::string mId;
private:
bool mIsTiled = false; // Whether the texture is a tileset that should be rendered as a single tile or not
};
}