Вот скриншоты, там где похуже используется в вебе, получше открытая системным просмотрщиком картинки.
https://dropmefiles.com/3mCXD
Используется такой код
...
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGB, gl.RGB, gl.UNSIGNED_BYTE, imageID);
gl.uniform1i(u_SamplerID, numID);
...
Может ли это быть из-за того что происходит нормировка текстуры от 0 до 1 этим параметром CLAMP_TO_EDGE?
Для сравнения вот часть кода на плюсах
...
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
gluBuild2DMipmaps(GL_TEXTURE_2D, type, width, height, type, GL_UNSIGNED_BYTE, copyData);
...
В нем изображения не шакалятся, пробовал подставить эти четыре функции в веб версию, те картинки у которых длина и ширина не степень двойки - не отрисовываются. Что делать не знаю, все это выглядит ужасно, как в Дум 1 и 2