У меня есть программа OpenGl, в которой я отображаю изображение с использованием текстур. Я хочу иметь возможность загрузить новое изображение для отображения.
В моей функции Init я вызываю:
Gl.glGenTextures(1, mTextures);
Поскольку одновременно будет отображаться только одно изображение, я использую одно и то же имя текстуры для каждого изображения.
Каждый раз, когда загружается новое изображение, я вызываю следующее:
Gl.glBindTexture(Gl.GL_TEXTURE_2D, mTexture[0]);
Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_LUMINANCE, mTexSizeX, mTexSizeY, 0, Gl.GL_LUMINANCE, Gl.GL_UNSIGNED_SHORT, mTexBuffer);
Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MIN_FILTER, Gl.GL_LINEAR);
Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MAG_FILTER, Gl.GL_LINEAR);
Первое изображение будет отображаться как положено. Однако все изображения, загружаемые после первого, отображаются как все черное.
Что я делаю не так?