Files
panopainter/engine/texture.hpp
Omar Mohamed Ali Mudhir 13d8e6e563 base setup for osx in place
2017-01-14 18:30:19 +00:00

19 lines
576 B
C++

#pragma once
class Texture2D
{
GLuint m_tex;
int m_width;
int m_height;
GLint m_format;
public:
bool create(int width, int height, GLint format = GL_RGBA,
const uint8_t* data = nullptr, GLint filter = GL_LINEAR, GLint wrap = GL_CLAMP_TO_EDGE);
bool create(const class Image& img);
bool load(std::string filename);
void destroy() { glDeleteTextures(1, &m_tex); }
void bind() const { glBindTexture(GL_TEXTURE_2D, m_tex); }
void unbind() const { glBindTexture(GL_TEXTURE_2D, 0); }
void update(const uint8_t* data);
};