6Texture::Texture(
const std::string &path,
int mag_filter,
int min_filter,uint32_t tex_id): m_ID(0),m_TexID(tex_id),m_MagFilter(mag_filter),m_MinFilter(min_filter),m_LocalBuffer(nullptr),m_Width(0),m_Height(0),m_BPP(0){
16 stbi_set_flip_vertically_on_load(1);
19 fprintf(stderr,
"Failed to load texture %s: %s\n",path.c_str(),stbi_failure_reason());
23 glGenTextures(1,&
m_ID);
24 glBindTexture(GL_TEXTURE_2D,
m_ID);
26 glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,min_filter);
27 glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,mag_filter);
28 glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP_TO_EDGE);
29 glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP_TO_EDGE);
std::array< Vertex, 4 > CreateQuadSpriteSheet(float x, float y, float width, float height, float row, float col, int layer, float texID)
void Bind(unsigned int slot=0) const
std::string m_LoadedFilePath
unsigned char * m_LocalBuffer