цилиндрическое наложение текстур OpenGL

Я пытаюсь сделать наложение текстуры в OpenGL, используя цилиндр в качестве промежуточной поверхности, то есть

тета = (atan2 (z1, x1)) + M_PI;
h = (y1);
Здесь x1, y1, z1 — x, y, z вершины.

и = тета, v = ч
Вот текстура, которую я использую

Вот как чашка стала текстурированной:

Почему в текстурной карте есть прерывистый патч?

0

Решение

Почему в текстурной карте есть прерывистый патч?

Потому что вы оборачиваете свои текстурные координаты от чего-то, близкого к 1, до 0. «Пробел» есть, потому что вы не добавили пробел в свою геометрию. Вам придется разделить геометрию и добавить шов, где ваша угловая координата текстуры становится равной 1.

3

Другие решения

Других решений пока нет …