Я пропоную Вашій увазі опис прийомів по роботі з CAT Muscle Strand (MuscleStrand) в 3dsmax, які я використовував при роботі над Ведою, а так само додатковий інструментарій спеціально розроблений мною.
A. Веретеноподібна м'яз B. MuscleStrand object C. Модифікований MuscleStrand об'єкт
MuscleStrand являє собою набір сфер, які утворюють форму, схожу на веретенообразную м'яз, при цьому MuscleStrand не є м'язом як такої і не має фізичних властивостей справжньою м'язи. MuscleStrand працює в двох режимах Bones і Mesh, я використовую обидва режими в залежності розташування м'язи і того, як вона буде впливати на модель тіла.
режим Bones
Режим Bones перетворює MuscleStrand об'єкт в ланцюжок пов'язаних один з одним сферичних об'єктів, взаємодіючих з моделлю тіла через Skin modifier. Кожна сфера передає свою трансформацію в просторі заданих в Skin вершин моделі тіла. Розмір сфер в цьому ланцюжку задається за допомогою кривої, тим самим формується форма м'язи, а параметри Squash / Stretch додатково змінюють форму м'язи при розтягуванні і стисненні. В цьому режимі я використовував MuscleStrand для деформації плечей, стегон і зап'ясть, там де використання тільки кісток не давало прийнятного результату.
режим Mesh
Режим Mesh об'єднує ланцюжок сферичних об'єктів в єдиний об'єкт. Використовуючи SkinWrap modifier або SkinFX плагін можна перенести зміна форми MuscleStrand м'язи на модель тіла. На відміну від режиму Bones MuscleStrand в режимі Mesh не призначений для роботи з модифікатором Skin.
Так само MuscleStrand в режимі Mesh можна використовувати для досягнення slide ефекту. На жаль в 3ds max немає вбудованого модифікатора дозволяє налаштувати slide ефект для всього тіла (частково він реалізований в CATMuscle).
Недоліком режиму Mesh є зовнішній вигляд м'язи, її ребриста форма і наявність зайвих вершин заважають як візуальному сприйняттю м'язів в клуні, так і їх функціональності.
Модифіковані мною MuscleStrand м'язи значно поліпшили деформацію деяких частин тіла Веди: шиї, спини, рук і ніг. Для зв'язку цих м'язів з тілом я використовував режим StickyBind з плагіна SkinFX (схожий в роботі з SkinWrap modifier).
Модифікація MuscleStrand об'єкта в 3ds max
Мета модифікації MuscleStrand - надати об'єкту згладжену форму для правильної роботи slide ефекту, а так же позбудеться від зайвих вершин. Для цього я використовував Editable Mesh modifier.
У чому відмінність Poly від Mesh об'єкта в 3ds max?
Poly структура в 3dsmax надає значно більше інструментів при моделювання об'єктів ніж Mesh структура. Вибираючи між Poly і Mesh для моделювання безумовно варто вибрати саме Poly. Але, тим не менше, існують завдання, де застосування Mesh більш виправдано, ніж Poly.
Незважаючи на те, що Poly є по суті еволюцією Mesh, вона при цьому має ряд істотних відмінностей і обмежень в своїй роботі.
На малюнку видно, що при зміні форми Poly об'єкта - Edit / Editable Poly перебудовує внутрішні межі полігону, зображені пунктиром, таким чином, що б не допустити їх перетину. А при роботі з Mesh об'єктом (Edit / Editable Mesh) перестроювання не відбувається. Додаткові обчислення призводять до того, що Poly об'єкти деформуються повільніше, ніж Mesh об'єкти.
Skin modifier
Збільшити продуктивність роботи Skin modifier'а можна якщо cконвертіровать базовий об'єкт з Editbale Poly в Editable Mesh і тільки потім застосовувати Skin Modifier.
CAT MuscleStrand
При перебудові моделі MuscleStrand об'єкта потрібно використовувати Edit Mesh modifier, щоб уникнути «стрибків» ребер об'єкта.
Після модифікації MuscleStrand об'єкт має правильну форму м'язи і не містить зайвих вершин. У такому вигляді він більше підходить для створення slide ефекту і зручний в роботі зі SkinWrap / SkinFX.
Обмеження по роботі з модифікованим MuscleStrand:
Проблема: При створенні клуня, використовуючи link метод об'єкт м'язи не деформується. Причиною є Edit Mesh modifier.
Усунення 1: Замість Link використовувати Position Constraint.
Усунення 2: Використовувати написаний мною scripted modifier - MuscleStrand Mod (не публікувалася)
Усунення: Використовуючи Tools -> Snapshot створити копію основної частини MuscleStrand об'єкта. Використовуючи Edit Mesh modifier модифікувати отриману копію. Прив'язати отриману копію до основної частини MuscleStrand використовуючи SkinWrap modifier.
- Модифікація MuscleStr ...
Дякую за уроки і пояснення, хоча сам використовую для м'язових дефомаціі примітиви, масштаб і переміщення яких заскріптованних (або wire зв'язок) на кути згину рук-ніг, із застосуванням Expose Transform Point. метод кропіткий, але дозволяє експорт в fbx в ігр движки. Виходить клунь із рухливих кубиків, до яких скіни сітка)). Як я не бився, але не зміг зробити з Skin Wrap - SkinFX. Хоча, за логікою SkWrap повинен допускати ковзання під шкірою і Push м'язів, в зв'язку з вбудованим в нього алгоритмом радіусу дії вершин провідною сітки. Шкода.
Відвідую ваш сайт не оч часто, але регулярно)))
Всі м'язові плагіни і хитрощі, на жаль є внутрімаксовскімі. Тобто не дозволяють виносити повні анімаційні дані за межі макса. Тільки вихід на рендер :) Я ось тільки зараз натрапив на спосіб конвертації тягнуться squash кісток в звичайний XYZ Масштаб. І вже це дозволяє через Skin виносити дані. Ще справа в тому, що формат fbx сприймає тільки основні трансформації + skin + morph. Можливо це пов'язано з політикою Autdsk - з інтегрувати в макс деякі потрібні речі. Адже все одно риггери і сетапери дописують недостаюшіе інструменти. Таким чином говорять і CAT з'явився і інші фішки :))
Добрий день. Чи не пробували студію частинок mParticles в максі для імітації мишіц?
Справжній скелет + м'язи (з контролем обсягу).
Розумію що клопітно і архізатратно.
Ні не пробував. Думав над подібним варіантом, але таку ідею відкинув. Я навіть не пригадаю, чи зустрічав я опис схожою системи. Якщо у Вас є посилання на м'язи зроблені через партікли (не важливо в якому софт) скиньте будь ласка посилання, цікаво було б подивитися.
Уроків на «м'ячик» повно, а от як зробити частину м'ячика - велике питання.
Бачив згадка (без подробиць) для тканини максовской. (Настройки типу гума). Пробував повторити ... і знову та-ки уперся в зв'язування областей з контролером.
Основна проблема - збереження обсягу. Те що бачимо зараз або дерев'яне при взаємодії, або паролоновий. М'язам крім тряски і стискання / разжима потрібна «сіліконістость» в певних напрямках і здатність взаємодіяти оболонкою з іншими тілами і м'язами.
Я скіни оболонку на примітиви, поведінка яких скрипт як поведінка м'язів. Але чим деталльнее потрібна опрацювання, тим більше потрібно примітивів .... І скінінга плавно переходить в своєрідний морфинг))))) Я так розумію, що все впирається в апаратну потужність. Все реал тайм симуляції волосся, м'язів та іншого і їх колізії з флексом, труби потужності прорахунків. Ось через рік - другий, якщо будемо живі, під потужне залізо і создатут плагіни. Я так думаю.