Add setting texture unit in bind()

This commit is contained in:
Riyyi
2021-01-08 01:51:34 +01:00
parent 25e6079000
commit b0d2ef2b93
2 changed files with 8 additions and 2 deletions
+7 -1
View File
@@ -45,9 +45,15 @@ namespace Inferno {
glDeleteTextures(1, &m_id); glDeleteTextures(1, &m_id);
} }
void Texture::bind() const void Texture::bind(uint32_t unit) const
{ {
// Set active unit
glActiveTexture(GL_TEXTURE0 + unit);
glBindTexture(GL_TEXTURE_2D, m_id); glBindTexture(GL_TEXTURE_2D, m_id);
// Reset unit
glActiveTexture(GL_TEXTURE0);
} }
void Texture::unbind() const void Texture::unbind() const
+1 -1
View File
@@ -13,7 +13,7 @@ namespace Inferno {
Texture(const std::string& path); Texture(const std::string& path);
virtual ~Texture(); virtual ~Texture();
void bind() const; void bind(uint32_t unit = 0) const;
void unbind() const; void unbind() const;
inline std::string path() const { return m_path; } inline std::string path() const { return m_path; }