Имитация связки модификаторов Symmetry и TurboSmooth в Maya

  1. Смоделируйте половину симметичного обьекта.
  2. Создайте независимый ее дубликат.
  3. Соедините атрибут Out Mesh узла формы оригинала с атрибутом In Mesh узла формы копии.
  4. Отразите копию инструментом Mirror Geometry.
  5. Свяжите копию с узлом сглаживания командой Smooth.
  6. Получите удобную связку для моделирования.

Если вы считаете, что я открываю Америку, можете дальше не читать.

А в уроке я собираюсь реализовать в Maya самый удобный для меня способ моделирования, которым часто пользуются в Max. По ходу дела вы также почитаете краткий обзор методик организации моделирования в Maya.

Симметричный обьект удобно моделировать в следующем порядке. Моделируется половина. Затем она зеркально отражается инструментом, который должен уметь объединять вершины на плоскости отражения. В 3ds Max это модификатор Symmetry, в Maya - это, например, инструмент Mirror Geometry. Вы получаете полную модель, к которой можно применить сглаживание. В 3ds Max это делает, например, модификатор TurboSmooth, в Maya - команда Smooth. Если применить сглаживание перед созданием зеркальной копии, инструмент отражения (при недостаточно тщательном подборе значения порога расстояния слияния (treshold)) может обьединить лишние вершины.

Вот фрагмент панели Modify в 3ds Max.

Изображенные средства управления позволяют следующее. В любой момент можно отключить, а также включить сглаживание (для контроля финального результата), можно также отключить видимость зеркальной копии (чтоб не мешала), можно моделировать на низкополигональном уровне, одновременно оценивая окончательный сглаженный вид. Мне это представляется весьма удобным.

Многие спецы скажут:
-ну и что. В Maya такое также возможно.
Отвечаю.
Похоже, но не так. Давайте вкратце проанализируем способы.

Вариант первый. В роли зеркальной копии - экземпляр (instance).

Экземпляр в Maya представляется узлом формы, который обслуживают два узла трансформации (если экземпляров два. В общем случае, на каждый экземпляр - свой узел трансформации). То есть, один и тот же обьект может находиться одновременно в двух разных местах.

При помещении узлов трансформации на отдельные слои, общий узел формы помещается, естественно, лишь на один слой. Отключение видимости слоя, содержащего этот узел формы приводит к отключению видимости всех экземпляров обьекта в сцене. Учтите, это не наследование видимости, это один и тот же узел формы.

На рисунке обозначены: Low2 и Low1 - имена слоев, содержащих экземпляры, bodyLow и bodyLow1 - имена узлов трансформации, bodyLowShape - имя узла формы.
Я не стал тратить слишком много времени на поиски решения, поскольку на виду другой недостаток - ближайшие вершины обеих половин модели (оригинала и копии) необходимо обьединять вручную.

Вариант второй. Использование команды Smooth Proxy.

Малополигональная и сглаженная копии разносятся по слоям. Видимости копий отключаются независимо. С параметрами, показанными на рисунке стрелками, автоматически получается зеркальная сглаженная копия с обьединенными вершинами, расстояние между которыми меньше указанного в поле Tolerence. Обратите внимание, вершины сливаются не у малополигональной, а у сглаженной копии.

На этом рисунке видно, что при значении Tolerence равном 0.0010 (значение по умолчанию) остается шов, а при 0.1 хорошо видны искажения, возникшие из-за слияния лишних вершин. Хороший результат получился со значением 0.01.
Поэкспериментировав с параметром Tolerence, вы можете найти оптимальное значение порога обьединения. Все же мне представляется более удобным использовать в роли зеркальной копии малополигональную: не нужно отслеживать случайно отклонившиеся или слившиеся вершины, не нужно подбирать с особой тщательностью Tolerence. Другими словами, проще отделить свеклу от моркови в целом виде, чем в измельченном.

Вариант третий. Отражение командой Mirror Geometry.

На выходе мы получаем общий узел формы bodyLowShape. Редактирование на уровне компонентов происходит именно в этом узле. Узел находится в конце цепочки и представляет всю модель, поэтому изменения одной половины модели на другой не отражаются. Другая причина такой "пассивности" узла кроется в принципах узловой аррхитектуры: узел управляется информацией извне и не может дать самому себе команду на симметричное обновление.
В такой последовательности Mirror Geometry применять не стоит. Это лишь демонстрация типичного применения этой команды. Чуть ниже мы опять применим Mirror Geometry, воспользовавшись предусмотрительностью разработчиков программы. И узел PolyMirror1 заменит нам instance.

Давайте попробуем имитировать в Maya Max'овский способ, описаный вкратце вначале.
Смоделируйте одну половину симметричной модели и поместите ее на отдельный слой.

Продублируйте половину со значениями окна Duplicate Options по умолчанию.

У вас получится нетрансформированная копия со своим узлом фоормы.Я эту копию отодвину немного вглубь, чтоб можно было различить.

Белая копия останется малополигональной, это будет оригинал.
Откройте окно Window > General Editors > Connection Editor. Откройте окно Outliner, в меню Display окна поставьте галочку возле пункта Shapes и выделите узел формы ближайшей копии.

В окне Connection Editor нажмите кнопку Reload Left.
В окне Outliner выделите узел формы дальней копии и в Connection Editor нажмите кнопку Reload Right.
Установите связь между атрибутами Out Mesh и In Mesh просто выделив эти атрибуты, как показано на рисунке.

Теперь все изменения оригинала будут отражаться на копии.
Выделите копию и примените к ней команду Mirror Geometry. Попробуйте подвигать вершины оригинала. Обе половины копии изменяются симметрично. Посмотрите в гиперграф.

Сеть узлов имеет очень похожий вид на тот, что показан в третьем варианте. Но теперь узел bodyLowShape, представляющий оригинал, находится в начале цепочки. Любые изменения в этом узле передаются через узел polyMirror1 в узел bodyLow1Shape, представляющий симметричную полную копию. Измененные данные на входе узла bodyLow1Shape вызывают его обновление.
Мы симитировали Максовский модификатор Symmetry.
Осталось разделить оболочку копии и усреднить ее нормали узлом сглаживания. Для этого выделите копию и выберите команду Polygons > Smooth.

Узел bodyLow1Shape (в сцене это симметричная сглаженная модель) теперь перестраивается с учетом выходных данных узла сглаживания polySmoothFace1.
Вот и все.
Разнесите малополигональный оригинал и сглаженную копию по отдельным слоям, забудьте про все эти узлы и приступайте к моделированию....

331 0 850 16
22
2006-08-30
гдето я уже это видел.....( всмысле способ)
2006-08-31
А я точно знаю где я это уже повидал. Почитайте доки к Connect Poly Shape.
2006-08-31
эх, не завидую майщикам в плане чарактер моделинга, ыыыхххуооххаа
2006-08-31
дауж.. в максе это дело 2 минут!
2006-08-31
а в кси это дело 2 секунды! -D
2006-09-01
А мне в плане моделинга вообще, до слёз жалко максеров.
2006-09-01
Ну, началось. Кто же круче!?
2006-09-02
ну если на то пошло то и в майя это делается за 1 секунду... можно даже быстрее если хотите. Всё зависит от ловкости нажимания на хот кей. если не понятно как быстро прибить компонент к нулевой координате, то рекомендую использовать вот эти скрипты: move -x 0; move -y 0; move -z 0; установят координату каждой компоненты в заданное положение. Быстро и удобнее не придумать. положите их на полку (shelf) или используйте хот кеи… удачи
2006-09-02
rendermax80 круче всех - 3дмакс
2006-09-03
не, не 3дмакс )))
2006-09-03
В плане моделинга многополигональных персонажей лучше ZBrush 2 нету нечего
2006-09-03
гдето я уже это видел.....( всмысле способ) Кто-то этим пользовался и молчал. А я не знал и мучился. Наверное у каждого бывает ситуация, когда ХОЧЕТСЯ ПОДПРАВИТЬ ГОТОВУЮ МОДЕЛЬ. Приходится по нескольку раз на день удалять узел сглаживания, удалять половину модели, подправлять, потом опять сшивать. Разве это удобно? Я б тоже молчал, но слишком уж долго меня мучила эта проблема... Поэтому, когда я нашел быстрое решение, поделился с помощью урока... Мне интересно, профи, какие вы знаете способы, пишите прямо сюда. Fiend3d, отлично! Вершины также можно выровнять в одной плоскости: Window – General Editor - Component Editor – вкладка Polygons. Или масштабированием, как в Максе, только в несколько этапов (это, наверное, самый быстрый способ).
2006-09-06
нафига в максе в выравнивать масштабированием когда есть кнопки XYZ (рядом с make planar) которые как раз для выравнивания и предназначены что касается кси- да, сетап модели для симметричного моделирования занимает немного времени, есть скрипты и тп- однако это совсем не то же самое, что модификатор симметри- симметри сам режет и склеивает несимметричную модель, а так сделать половинку и инстанс-миррор на нее- это в любом софте можно.
2006-09-06
не понимаю что в максе можно сделать такого чего нельзя в майе ?
2006-09-07
Кто ж говорит, что можно, а что не можно... Можно сайт в Блокноте написать. Скоро программы будут отличаться лишь ценой. Вопрос в удобстве.
2006-09-08
Maya не пробовал, но судя по коментариям очень вязкая прога.
2006-09-11
По-моему в MAX намного проще.
2006-11-01
Вобще то есть сабдивы, но метод понравился я к нему скриптик написал чтобы меньше телодвижений делать, если кому надо могу сбросить на мыло.
2006-11-04
хороший урок, то что надо
2009-09-04
Первое, что хочу сказать, что меня улыбает факт того, что некоторые люди, не работав в Майе и разу, приходят сюда и пропагандируют Макс. Второе, этот урок - попытка описать давно известный способ лучше, чем человек который его написал как никогда лучше (мы его все знаем). Текст, в принципе логичен, отбросим то, что он мне не интересен только потому, что я это знал, но думаю начинающим понравится, т.к. хоть это и своего рода переиздаение, но оно позволяет вникнуть в суть самого процесса. Вижу, что некоторые люди, прочитали и решили, что Майя туфта (не путать с теми, кто даже не хочет научиться в ней работать - здесь и такие фанатики отписывались), а значит - для непосвященного урок изложен непонятно. Качесвто вывожу на 3, может завышено? поощрять! тех кто пишет уроки нужно обязательно! Если они перестанут писать, вы возьметесь за это?? То-то же. Много ли на Рендер.ру новых авторов уроков? ;) А те кто говорят, что ого! фигасе! как-то заумно! не завидую майщикам! их наверное заставляют работать в проге где ничерта не логично/не понятно! - они даже не пытались вникать. А я для себя четко решил ещё на первом месяце изучения Майки, что она чуть ли не в 2 раза функциональнее и многогранне Макса. До этого я просидел в максе 2,5 года. Разрыл всё не считая скрипт эдитора (не нравился он мне), но принял решение не возвращаться в Макс, по крайней мере по своей воле. И только в Майке понял, что скриптование помогает легче жить и в какой-то мере приоткрыть вуаль над сакральной кнопкой "сделать красиво". Уже третий месяц я бегаю вокруг Майки и понимаю: ещё около трети всех её возможностей мне не известны, но уже скорее все проблемы вприются в мою фантазию, а не в знания. Можно было бы назвать меня тем же фанатиком, только на противоположном фронте? Отнюдь, я сравнивал эти пакеты, в обоих более менее разбираюсь чтобы иметь свою точку зрения на них. Это всё имхо, ни с кем спорить не собираюсь. Ваш пакет моделирования лучше всех ;) Актуальность? Да это актуально, особенно если уроки в основном читают новички, не новички уже давно книги читают ;) для новичков - да! Поставлю 4 ;)
2010-01-31
Блин давно хочу изучить маю помимо макса, но если чесно урок очень пугает, столько действий что б заменить 2 модификатора которые в максе накладываются за 2-3 секунды (
2011-09-21
То, что делается в Maya час, в Максе делается за полчаса. то, что делается в Максе за полчаса, делается в Cinema 4d за 15 минут.
RENDER.RU