как загрузить текстуру в opengl?
Я только начал изучать opengl. Дошёл до темы с текстурами. Для загрузки изображения использовал библиотку stb_image. То есть сначала:
unsigned char* data = stbi_load("container.jpg", &width, &height, &nrChannels, 0);
а потом:
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, data);
После этого картинка, которую я взял из туториала, прекрасно вывелась на экран. Позже я захотел вывести любую другую картинку из интернета. Я скачал 2 картинки, которые так же как и первая были в фрмате jpg. Помимо этого во всех трё случаях nrChannels возвращает число 3. Но несмотря на это ни одна из моих картинок не смогла нормально вывестисть так же как и первая. В одном случае изображение почемуто выводилсь чёрно-белое и слегка скошенное, а во втором вообще была какая-то каша из пикселей.
Вопрос: Почему так произошло, и как мне использовать в качестве текстуры любое изображение, которое я захочу ?