Я много искал и просто не могу найти что-либо по этой теме. У меня есть Macbook с OpenGL 4.1. Я создаю текстуру с:Mac - Линейная интерполяция не работает
glGenTextures(1, &heightMapTexture);
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, heightMapTexture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 13);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST_MIPMAP_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT);
glUniform1i(program1->uniformLocation("heightMap"), 0);
glTexImage2D(GL_TEXTURE_2D, 0, GL_R16UI, heightMap.getWidth(), heightMap.getHeight(), 0, GL_RED_INTEGER, GL_UNSIGNED_SHORT, heightMap.getData().data());
glGenerateMipmap(GL_TEXTURE_2D);
Это прекрасно работает, но я на самом деле хотел бы использовать GL_LINEAR. Но GL_LINEAR дает мне текстуру со всеми нулями/черными.
Mac просто не поддерживает GL_LINEAR или есть расширение для него? В официальной документации я нашел следующий фрагмент кода:
glTexParameteri(GL_TEXTURE_RECTANGLE_ARB,
GL_TEXTURE_MIN_FILTER, GL_LINEAR);
Но я не могу получить расширение работать.
Вы генерируете mipmaps где-нибудь? GL_LINEAR не ожидает никаких mipmaps, поэтому попробуйте, возможно, удалить все, что связано с mipmap gen (уровни и т. Д.). –
Да, я знаю, что он работает так, как сейчас, и когда я меняю GL_NEAREST на GL_LINEAR, этого больше нет. (Я также проверил без mipmapping) – eclipse