Render.ru

Скрипт выделяющий полигоны счислом вершин > 4

Рейтинг
638
#1
Всем привет!
Помогите пожалуйста со скриптом - нужен скрипт, который умеет выделять в модели полигоны с числом вершин больше 4. Мне нужно протриангулировать такие полигоны.
Не знаю как их выделить и не получается пока что нормально протриангулировать (тесселейт добавляет дополнительные вершины во внутрь полигона).
Я не могу экспортнуть в obj и обратно (после этого такие полигоны уже оттриангулированы), потому что потеряю uv координаты для разных каналов, у модели больше одной uv карты.
 

Stealthy

Активный участник
Рейтинг
12
#2
??? Парень что-то у тебя задачи нерешаемые... протриангулировать еще раз уже протриангулированный полигон без добавления вершин... круто!
При создании меша из сплайна (ты ведь так их создаешь?) автоматически происходит триангуляция (просто все заново построенные ребра скрыты). И вообще - Макс работает только с треугольными полигонами... больш ни с чем. Все остальное - просто скрытые внутренние ребра (их можно сделать видимыми простым скриптом из 2х строчек, вбитых чуть ли не просто в листенер). Если у тебя теряются, не находятся или еще черт знает что происходит с UVW координатами - либо надо сделать UVW-Mapping, либо просто НЕ ЮЗАТЬ ФОРМАТЫ ФАЙЛОВ, В КОТОРЫХ НЕТ ЭТИХ КООРДИНАТ!
Я не могу экспортнуть в obj и обратно (после этого такие полигоны уже оттриангулированы), потому что потеряю uv координаты для разных каналов, у модели больше одной uv карты.
а вот тут я совсем нифига не понял. Такие грани триангулируются в тот момент, когда создаются, а не при экспорте. Чем тебе не угодила максовсекая триангуляция? и зачем что-то куда-то экспортировать, а потом заново импортировать? Может тебе что-то другое надо? объясни саму задачу, а не то, как ты ее решал....
 
Рейтинг
638
#3
Я не пойму, тебе не понятно что такое триангуляция полигонов в которых вершин больше 4?
И собвственно не надо мне приписывать слова про "протриангулировать уже протиангулированный полигон. Круто!".
Я уже получил вполне адекватный ответ про первую часть вопроса.

Меши я из сплайнов не создаю.
Про Uv каналы тебе не понятно? Посмотри в свойствах модификатора Unwrap UVW map channels.

И не надо писать большими буквами, лучше просто валерианки выпей.
 

Stealthy

Активный участник
Рейтинг
12
#4
Кхм.. ну что на это сказать? еще раз повторить, в максе нет такого понятия как "полигон с вершинами >4"?
напиши в новом скрипте строчку
for i = 1 to selection.count do selection.allEdges=True
увидишь эффект.
это так, насчет триангуляции... наглядно...

А насчет каналов - у меня задача была вообще по мешу объекта восстанавливать все его UVW, т.к. плуг их мутил вместе с нумерацией вершин и ребер. Т.е. он заново по рандому каждый кадр создавал абсолютно новый объект, на котором была сбита нумерация вершин, ребер и все UVW. А вроде как справился, так что все претензии про каналы, триангуляцию и т.п. в мой адрес можешь оставить себе. У тебя чересчур запутанный вопрос. Сути не видно. Сделать можно, но такие вещи делаются вообще-то автоматически, а не скриптами.
 
Рейтинг
638
#5
Пока что я уже получил адекватные ответы. И кроме тебя у людей не возникло претензий к постановке вопроса.
Триангуляция - это вполне известный термин и что такое полигон с вершинами больше 4 понимает подавляющее число пользователей. Что он подразбит на треугольники уже максом все тоже понимают. Вопрос был очень простой.
 
Рейтинг
638
#6
кстати, максовская триангуляция вообще очень далека от оптимальной, часто получаются вытянутые узкие треугольники там где их можно легко избежать. но мне и она достаточна. есть описание одного из программеров майи как надо правильно перетриангулировать имеющийся полигон.
 

Stealthy

Активный участник
Рейтинг
12
#7
Есть несколько способов триангуляции... я только три знаю.. один из них (кажется, Монте-карло зовется) позволяет избежать узких длинных треугольников.
PS оперативно, нечего сказать.... это я к модерам...
 

Protactinium

Пользователь сайта
Рейтинг
2
#8
Кажется в Maxscript reference есть как раз пример такого скрипта.
Он находится в категории How To:
How To ... Select Non-Quad Polygons
вроде это...
 
Сверху