summaryrefslogtreecommitdiff
path: root/gfx/models/texture.h
blob: 8bbba85039d6068242bb91e62fbfd901387839b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef TEXTURE_H
#define TEXTURE_H

#include <GL/glew.h>
#include <filesystem>
#include <special_members.hpp>

template<typename Obj> class Cache;

class Texture {
public:
	explicit Texture(const std::filesystem::path & fileName);

	virtual ~Texture();

	NO_COPY(Texture);
	NO_MOVE(Texture);

	static Cache<Texture> cachedTexture;

	void Bind() const;

private:
	GLuint m_texture;
};

#endif