const uint32_t GetHeight() const
const TextureMetadata & GetMetadata() const
bool MatchesPath(std::string pathToMatch)
const std::string & GetPath() const
void SetData(unsigned char *data, TextureMetadata &meta)
static TexturePtr CreateFromData(unsigned char *data, TextureMetadata &meta)
const uint32_t GetWidth() const
virtual void SetDataImpl(unsigned char *data)=0
virtual void * GetNativeHandle() const =0
static TexturePtr CreateFromColor(const glm::vec3 &color, const std::string &name, uint32_t width=1, uint32_t height=1)
const TextureType GetUsage() const
Texture(TextureMetadata meta)
virtual ~Texture()=default
static TexturePtr CreateFromFile(const std::string &path, TextureType usage=TextureType::Diffuse)
bool IsTextureLoaded() const
const std::string & GetName() const