Избавляемся от швов

Добавлен , опубликован
Наверняка, работая с моделями (особенно экспортированными из других игр, например, World of Warcraft), вы встречались с проблемой появления швов. Если нет, то я поясню, как это выглядит.
У нас имеется каркас из полигонов, который представляет из себя две половинки. На них натянута с двух отражённых сторон одна и та же текстура. На моей модели это лицо персонажа.
Когда мы включаем полный просмотр, получаем следующий результат:
Как видно, на лице просматривается шов. Это последствие склейки полигонов с натянутыми копиями текстуры с разных сторон.
Изначально решением было смещение точек развёртки геосета "вглубь" текстуры, подальше от её краёв.
Но недавно я придумал другое решение: нужно убрать флаги "Wrap Width" и "Wrap Height" в свойствах текущей текстуры.
В War3 Model Editor это делается через меню Windows / Texture Manager / правый клик по текстуре / Edit / Texture Wrapping.
Тогда программа отрисовки не будет понимать текстуру как "тайл" и её края приобретут чёткие границы. Я думаю, что это глюк алгоритма обработки текстур-тайлов, который приводит к швам на границах.
Отдельная благодарность: Wolverine.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
38
Я думаю, это кому-то поможет. Лучше, чем ничего. Если что, я уменьшил количество опыта в 4 раза)
22
"это глюк алгоритма обработки текстур-тайлов, который приводит к швам на границах"
Это не глюк, это фича. Просто векторно текстура представима как матрица вершин окрашенных цветами соответствующих пикселей, а пространство между ними заполняется градиентом цветов соседних вершин. Иначе мы бы наблюдали квадратные (а иногда и не очень) пиксели текстуры на модели.
Т.е. когда точке геосета соответствует позиция (0, 0) на карте текстур (допустим текстура 256х256), то эта точка будет занимать позицию на стыке 4-х пикселей (0,0) (255, 0) (255, 255) (0, 255) и будет окрашена в цвет равномерного смешения цветов этих пикселей. Вот и получается, что вроде бы как край текстуры одного цвета, но вершина окрашивается в смесь цвета этого края, с цветом противоположного края.
А когда ты убираешь тороидальность наложения текстуры, то крайние положения на карте текстур берут цвет пикселей только того же края.
15
Мелочь, но приятно... мне пригодится... спс...
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.