Еще один довольно экзотичный способ (использовавшийся в старом добром Power Animator’e) заключается в испускании частиц с нужной области поверхности. Затем с помощью полей и expressions траектории частиц настраиваются так чтобы они напоминали форму будущих волос. С помощью небольшого скрипта траектории нужного количества частиц превращаются в кривые. При необходимости они могут быть дополнены дополнительными пассивными кривыми.
Коллизии прежде всего
Перед тем как начитать динамическую симуляцию и укладку волос очень важно не забыть задать поверхность для взаимодействия с кривыми, так как очевидно что волосы не должны проникать в голову. Если попытаться сделать это позже, то возможо некоторые кривые уже проникнут в поверхность в результате безумных экспериментов с динамикой и борьбы за прическу. Такие кривые будут застревать в поверхности и всяческ портить вам нервы. Поэтому всегда создавайте поверхность для отталкивания кривых заранее.
Вместо того, чтобы использовать модель головы в качестве поверхности для столкновений, гораздо эффективнее будет применение констрейна типа Collide Sphere.
Если сфера не совсем повторяет форму головы, то проще сделать еще пяток сферок и вставить их в нужные места. Просчет столкновений с ними будет производиться в разы быстрее, чем с реальной поверхностью.
• Выберите объект hairSystem1 и выполните операцию Hair=>Convert Selection=> to Follicles, так создание констрейна требует предварительного выбора кривых.
• Затем выполните Hair=>Create Constraint=>Collide Sphere.
Задайте размеры сферы и ее положение, translate = 0.0; 8.2; 2.9
Сохраните сцену как 3_headCollisionSetup.ma
Симметричные трюки
В тех случаях, когда вам требуются ровные проборы или другие симметричные прически, вы можете применить следующий подход.
• Перейдите в камеру Front и выберите все волосины (follicle) на правой стороне головы (не зацепите hairConstrainU при этом).
• Удалите их.
• Теперь выберите оставшиеся кривые (не follicles!) кроме центрального ряда.
• Скопируйте их как инстансы.
• Тут же сгруппируйте скопированные кривые.
• Задайте scaleX=-1 для новой группы.
• Проиграйте анимацию. Скорость воспроизведения увеличится почти в два раза, так происходит просчет только для половины волос.
Сохраните сцену как 4_headlnstancedHair.ma
Ручная укладка
По моему опыту, следует быть максимально бесцеремонным и таскать модель за волосы в нужном направлении. Тем более, что существуют предельно удобные способы выбирать и перемещать сразу все концы волос, а функция сохранения длины кривых во время редактирования позволяет перемещать их довольно правдоподобно. Воспользуемся этим подходом.
Встаньте в первый кадр и выберите сначала объект hairSystem1, а затем концы всех стартовых кривых: Hair=>Convert Selection=>to Start Curves End CVs.
Возьмите в руки Move Toot, затем нажмите и удерживайте клавишу «L» для фиксации длины кривых.