Hair Banch - единственный констрейн, который может прикладывать силу к точкам кривых непосредственно в первом кадре. Этот констрейн пытается разбить волосы на пучки, имитируя, с одной стороны, самостолкновения между кривыми и статическое слипание, с другой стороны. Если точки кривых находятся ближе, чем значение, определенное атрибутом Clump Width (для ноды hairSystem), то кривые отталкиваются друг от друга. Если точки подходят совсем близко друг к другу, они начинают слипаться. Это единственный констрейн, который принимает во внимание ширину пучков волос (Clumping), определенную для все системы волос. Симуляция взаимодействия между волосами с помощью этого констрейна требует гораздо меньших вычислительных затрат, чем при использовании опции Self Collide (у ноды hairSystem) для расчета реальных столкновений между кривыми.
Примечание. Очевидно, что любой констрейн захватывает только по одной точке с каждой кривой. Однако ничто не мешает вам создать ровно столько констрейнов, сколько вам нужно, причем для различных участков кривых. Это может быть несколько констрейнов одного и того же типа, воздействующих на разные (хотя, возможно, и на одни и те же) точки. Констрейны не требуют таких значительных вычислительных ресурсов, как, например, просчет столкновений с поверхностями, поэтому не стесняйтесь использовать их почаще.
Атрибуты констрейнов Поскольку все констрейны представляют из себя один и тот же объект с разным значением атрибута Constraint Method, удобно изучить их немногочисленные атрибуты прямо в Attribute Editor.
Атрибут Stiffness определяет силу, с которой констрейн действует на точки (это не касается типа Transform).
Чтобы почувствовать различие в степени притяжения, задайте, например, Stiffness=0.01 для Rubber Band или Stiffness=5 для HairBunch.
Самое удивительно, что констрейны умеют «обрываться» при очень сильных воздействиях. Если атрибут Glue Strength равен единице, это означает, что констрейн суперпрочный и никогда не порвется. Однако значения меньше единицы означают, что если натяжение (или сила) между точками и констрейном станет достаточно большим, то связь попросту разорвется, и кривая вырвется на свободу. Причем насколько это самое «достаточно большим», как раз и определяется значением атрибута Glue Strength.
Естественно, что атрибут Glue Strength можно анимировать, для симуляции разрыва связей во время анимации.
Если вас смущает, что в первом кадре констрейн авторитарно захватывает ближайшие к нему точки, вы можете прекратить этот произвол и самостоятельно задать набор точек с некоторым значением параметра U, который будет прикреплен к констрейну. Для этого достаточно сменить метод выбора точек в первом кадре (Point Method). Если выбрать Point Method=U Parameter, то с помощью атрибута U Parameter можно задать набор точек на кривых с одинаковым значением U, попадающих под воздействие констрейна.
Симуляция столкновений с помощью констрейнов Как я упоминал, констрейны не требуют значительных вычислительных затрат - в отличие от просчета столкновений с поверхностями. Однако задача взаимодействия динамических кривых с поверхностями встречается настолько часто, что трудно избежать динамического моделирования такой ситуации. Поэтому для экономии времени и увеличения интерактивности существует два специальных констрейна, имитирующих столкновение волос с поверхностью, но не требующих дополнительного времени просчета.