В настоящее время у меня есть текстурный атлас размером 2048 x 2048 пикселей с тремя сохраненными текстурами 512 x 512, и я применяю только одну текстуру к объекту.Поэтому я использовал следующий код для позиционирования координат текстуры (от нуля до 1) в правильное положение на текстурном атласе для этой текстуры:
color = texture2D(tex_0, vec2(0.0, 1024.0/2048.0) + mod(texture_coordinate*vec2(40.0), vec2(1.0))*vec2(512.0/2048.0));
Проблема в том, что когда я применяю это, возникаетчерная рамка вокруг текстуры.Я предполагаю, что это потому, что OpenGL не может смешать два пикселя в месте этой границы.
Так как мне избавиться от границы?
Редактировать * Я уже пыталсяпереместите начальную и конечную границы к центру текстуры, и это не сработало.
Правка * Я нашел источник проблемы, автоматическое создание mipmap смешивает текстуры в атласе текстуры.Это означает, что я должен написать свою собственную функцию отображения.(Насколько я могу судить)
Если у кого-то есть идеи получше, пожалуйста, пишите.