Зробите глибокий вдих, розслабтеся і постарайтеся на час звільнитися від усього, що ви знали і вміли при роботі з тканинами.
Чи готові. Тоді починаємо.
Постарайтеся згадати все що Ви вмієте в полімоделінге, особливо тієї його частини, яка не змінює топологію сітки. Це нам дуже знадобиться!
Модифікатори. Ми користуємося ними постійно. Різними, під різні завдання.
Модифікатори мережі Edit Poly, Edit Mesh - основа полімоделінга.
FFD - напевно самий часто використовуваний, де тільки він не виникає.
Bend - гнемо все що потрібно.
Twist - скручуємо де треба і де не треба.)
Push - піднімаємо поверхню.
Spherify - робимо з об'єкта кульку.
Cloth - модифікатор полотна. Додає поверхні об'єкта задані фізичні властивості і дозволяє їй взаємодіяти з іншими об'єктами і силами в сцені.
Так, це всього лише модифікатор. Основною властивістю Cloth є те що він запам'ятовує поверхню такою, якою вона була в момент призначення модифікатора. І як би не змінювалася форма об'єкта при симуляції, які б, завжди зрозумілі для Cloth зміни, не відбувалися в стеці, ця поверхня залишиться незмінним.
На що в першу чергу варто звернути увагу при створенні штор, і це те, чого не вистачає в багатьох моделей? Майже всі штори висять біля стіни, отже перше що ми зробимо - це площина яка послужить нам обмежувачем імітує стіну. При необхідності подібний обмежувач ми можемо встановити і з лицьового боку, щоб обмежити глибину штори. Варто пам'ятати що нормалі цих об'єктів повинні бути спрямовані в бік полотна.
У прикладі розглянемо варіант збірки із зустрічними складками.
Починаємо моделинг зі сплайновой форми, який буде перетин верху нашої штори. У горизонтальній площині створюємо сплайн наступного виду (внизу для наочності показана його структура) і довгою по ширині майбутньої штори (в прикладі 830 мм. По осі X)
Прибираємо в сплайне інтерполяцію (1) і екструдім його на потрібну висоту (2) з необхідною сегментацією (3). Довжину сегмента зробимо по висоті збірки. Щоб проекційні координати відповідали формі полотна, вказуємо що вони будуть (4) в реальних розмірах (5), при необхідності надалі зробимо упаковку в анврапа.
Конвертуємо в Editable Poly і ущільнюємо сітку в місцях складок збірки коннектом (1) Еджей (2).
Заготівля полотна готова. Зробимо копію об'єкта і дамо в назві літеру _morph, скопійований об'єкт приховуємо він нам буде потрібно пізніше. Накидаємо Cloth і вказуємо що curtains буде полотном, а Plane001 об'єктом твердої колізії. У властивостях полотна задамо товщину тканини 2 мм. (1) (параметри полотна завжди в см.), Збільшимо силу відштовхування (2) і трохи знизимо скейлинг по осі U (3).
Для чого ми зменшували скейлинг? Cloth ненавидить перетину сітки і вершини мають одне просторове положення (вершини - тільки для полігональної сітки, до Garment Maker не відноситься) Тому першою блискавичною симуляцією з демпфуванням (1) ми трошки розведемо їх. Зрозуміло з відключеною гравітацією (2) і самоколлізіей (3)
Тепер необхідно створити групу для блокування. Edit Poly в вершині стека і через Graphite Tools виділяємо вершини в місцях зшивання складок.
Перетягуємо Edit Poly під Cloth (1) і переносимо виділення (2). Додаємо до виділення весь верхній ряд вершин, створюємо групу (3) (4) і блокуємо її (5). Зазначимо що у групи будуть відмінні від полотна властивості (6) і залишимо їх по дефолту. Це зробимо для того що між деякими вершинами відстань менше ніж задана товщина полотна.
Для того щоб полотно могло провиснути використовуючи FFD 2х2х2 зменшимо його на 30 мм. по осі X. (Важливо! Теж саме нам необхідно проробити і з об'єктом curtains_morph). Провисання між точками кріплення до карнизу ми поставимо самі, не будемо покладатися на волю випадку. Використовуючи Soft Selection опускаємо серединку.
І залишивши виділення задамо рандомних модифікатором Noise.
Зробимо релакс виключивши з нього заблоковану групу.
Переносимо зміни в Cloth (1) (2) Не забуваємо про відображення вершини стека (3), відключаємо вершину стека (4), включаємо гравітацію (5) і самоколлізію (6), у властивостях полотна повернемо скейлинг по осі U до дефолтного (7 ). Запускаємо симуляцію (8), В процесі симуляції щоб прискорити прорахунок корисно робити перемикання на Simulate Local (damped) щоб заспокоїти інерцію.
При досягненні бажаного результату зупиняємо симуляцію. З'єднуємо наші шви, які ми розвели перед симуляцією. Для цього піднімаємо виділення з першого Edit Poly і робимо морф до об'єкта curtains_morph.
Ось власне полотно із запланованою складанням готове. Як Ви розумієте варіант збірки безпосередньо залежить від створеного на самому початку сплайна, так що зробити можна будь-яку.
Можна було б завершити на цьому розповідь, але залишається відчуття якоїсь незавершеності.
Доповнимо наш урок ще трохи. Опустимо низ шторки на підлогу.
Створюємо площину статі. Ущільнюємо сітку низу штори вже відомим способом.
На всі три об'єкта накидаємо новий Cloth.
За допомогою FFD вносимо рандомних в складки.
Укладаємо низ на площину будь-якими інструментами і так як нам цього захочеться, хоч до останньої складочки! Інструментів в Макса предостатньо.
Переносимо деформації в Cloth. Блокуємо верх у шторки.
Симулюючи, спочатку з демпфуванням щоб полотно розправився, потім як зручно.
Аналогічним способом робимо підхоплення. Якщо збірка на підхоплення складна, то роботу краще розбити на кілька етапів. В процесі роботи зручніше фіксувати вершини в області підхоплення. На фінальному етапі, якщо в цьому виникає необхідність, можна додати до симуляції об'єкт імітує підхоплення. Він може бути як і твердим так і полотном з необхідними властивостями.
Ну от напевно і все.
На закінчення хочу додати:
Даний алгоритм прекрасно підійде не тільки для моделювання з нуля, і зрозуміло не тільки для штор. Ви можете також допрацьовувати з його допомогою вже готові моделі під свої потреби!
Удосконалювати, доповнювати, змінювати дану схему можна нескінченно, отримуючи більш якісний результат і прискорюючи процес симуляції. Все буде залежати тільки від рівня професійної підготовки в Макса, розуміння самого алгоритму і польоту фантазії.