Как работает glTexImage2D?
есть glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, data); где data - unsigned char*.
Я знаю что эта функция загружает наже изображение в память GPU. Знаю, что 3 аргумент - это то, как данные должны быть предсавлены в GPU, а 7 и 8 то как они представленны в передаваемом нами массиве.
Я не могу понять следующие вещи:
Правильно ли я понимаю, что так как мы указали в качестве 7 аргумента
GL_RGB, то все наши данные в массиве будут переведены из диапозона от 0 до 255 в диапозон от 0 до 1?В документации написано, что в качестве седьмого параметра можно передать например такой аргумент:
GL_RGB_INTEGER. Что это значит? Зачем нам здесь указывать тип если мы его указываем в восьмом параметре?В документации написано, что в качестве 3 аргумента можно передать огромное количество различных параметров. Меня интересует различие например между
GL_RGBиGL_RGB8. Я могу предположить, чтоGL_RGB8означает, что на каждый цвет у нас будет уделён 1 байт, но, что тогда означаетGL_RGB?