diff --git a/src/renderer/backend.h b/src/renderer/backend.h index edd8e671..ea342729 100644 --- a/src/renderer/backend.h +++ b/src/renderer/backend.h @@ -20,6 +20,7 @@ enum PixelFormat { enum FilterMode { FILTER_NEAREST, FILTER_BILINEAR, + NUM_FILTER_MODES, }; enum WrapMode { diff --git a/src/renderer/gl_backend.cc b/src/renderer/gl_backend.cc index 74e385d9..957f1cc8 100644 --- a/src/renderer/gl_backend.cc +++ b/src/renderer/gl_backend.cc @@ -129,7 +129,7 @@ TextureHandle GLBackend::RegisterTexture(PixelFormat format, FilterMode filter, glGenTextures(1, &gltex); glBindTexture(GL_TEXTURE_2D, gltex); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, - filter_funcs[filter * mipmaps]); + filter_funcs[mipmaps * NUM_FILTER_MODES + filter]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, filter_funcs[filter]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrap_modes[wrap_u]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrap_modes[wrap_v]);