НАЗАД

 

Урок 6 Что такое Soft Body(Мягкое тело)?

 

 

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

 

Главная причина создания мягкотельных объектов состоит в том, чтобы иметь столкновения с препятствиями. Препятствия и столкновения описаны полностью в Главе 9: Obstacles and Collisions на странице 139.

Подобно другим симуляциям, Вы можете заставить мягкое тело реагировать на natural forces(естественные Силы) (гравитация и ветер). Для получения дополнительной информации на них, см. Главу 8: Natural Forces на странице 129.

Мягкое тело вычисляет движения и деформации на объект средствами Из пружинно - основанной решетки, чью разрешающую способность Вы определяете (используя Sampling parameter — см. страницу 104). Решетка автоматически создается вокруг объёма модели. Чем выше разрешающая способность решетки, тем лучше она подражает форме объекта. Вы можете заставлять объект возвращаться назад после столкновение и или сохранять original форму или принимать искаженный вид после события.

 

 

Если мягкое тело объекта анимируется, Вы можете или сохранять анимацию или повторно  вычислять её согласно любым внешним силам, которые Вы применяете. В первом случае Мягкое тело только действует на деформации тела, а не на движения. Вы можете также заставить мягкотельный объект взаимодействовать со статичными или анимируемыми препятствиями. Деформации с  мягким телом вычисляются только однажды и кэшируются так, чтобы они могли повторно  проигрываться быстрее. Если Вы изменяете любой параметр, вычисление перерасчитываются и кэшируются снова.

Вы можете plot  деформации мягкого тела, используя команду Tools > Plot > Shape - см. Plotting Shapes в Главе 21 в Animation guide для получения дополнительной информации. Мягкое тело изменяет вершины на объектах, но оно не перемещает центр. Удостоверитесь, чтобы удалить оператор мягкого тела после окончания plotting.

 

Получение Главного старта с Presets и Примерами Сцены

Для задания Вам главного старта при создании мягкого тела объектов имеется множество пресетов, доступных в SoftBodyOp редакторе свойства, как показано здесь. Для использования их, примените мягкое тело объекту (см. страницу 104), щелкните одну из кнопок на Presets странице для вычисления моделирования.

 

Также, имеются некоторые сцены примеров, доступные в XSI Installation\Data\XSI_SAMPLES\Scenes папке. Если вы используете Windows, Вы можете открывать Net View в области просмотра и перетащить сцены (нажмите Ctrl при перемещении, чтобы объединить) из XSI Local > Library > Simulation в XSI.

 

Начальные установки для Soft Body

Прежде чем Вы начинаете работу с мягким телом, Вы должны выбрать тип геометрии, чтобы использовать для soft body object также, как и для препятствия. Также, Вы должны установить соответствующую разрешающую способность геометрии для изготовления soft body collision effect

Полигоны или NURBS Поверхностные Объекты?

Вы можете использовать или polygon или NURBS поверхностные объекты с мягким телом, но Вы можете убедится, что polygon objects дает слегка более точную деформацию потому что их точки "живут" непосредственно на их поверхности, в отличие от NURBS-поверхностных objects (см. Modeling & Deformations  guide для получения дополнительной информации по геометрии объектов). Вы можете также использовать модели с высоким разрешением: потому что мягкое тело - фактически независима от разрешающей способности (по времени исполнения), что является более важным чем разрешающая способность решетки (как определено параметром Sampling).

 

 

Вы можете использовать мягкое тело на индивидуальных кластерах объектов, но всегда выбирайте Весь объект, когда Вы выбираете препятствие для него. См. Главу 9:

Obstacles and Collisions на странице 139 для большего количества информации.

 

                Вы можете применять мягкое тело к multiple objects, в иерархии или без, но деформация применяется к каждому объекту индивидуально а не иерархическим способом. То есть, если Вы применяете мягкое тело к Предку, это не распространяется на Потомков, чтобы создать “ глобальную переменную деформацию ”:

• Вы не может применять мягкое тело к группам.

• Вы не может применять мягкое тело к lattice(решетке).

 

Высокая или Низкая Разрешающая способность Геометрии?

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

Вообще то мягкое тело объектов, также не должно быть слишком "низкоразрешенным" по двум причинам:

• Вы нуждаются в достаточном числе вершин для получения удовлетворительного результата столкновения. Грани могут проникать через некоторые многоугольники препятствия даже если вершины - хорошо настроены.

• Подразделение не только прибавляет новые вершины но также и перемещает оригинал, так что Вы можете нарушить constraints препятствия.

Как со всеми моделированиями, trick должна найти самую низкую разрешающую способность для приемлемого Вам результата. Один способ выполнять это состоит в том, чтобы использовать приемлемо-низкую разрешающую способность "установленную" в модель, в то время как вы устанавливаете базовые simulation и столкновения. После установки загружают модель с высоким разрешением и подстраивают  параметры.

 

Создание Soft Body Деформации

Следующая процедура обеспечивает пошаговое объяснение того, как создать деформацию с  мягким телом на объекте, который ударяется о препятствие.

Создание базовой деформации, используя препятствие

1. Выбрать object, принимающий soft-body свойства .

2. На инструментальной панели Simulate, выберите Create > Soft Body.

 

 

Для детального описания каждого параметра, нажмите -?- в редакторе свойства, чтобы открыть встроенную подсказку. Имеются некоторые из основных параметров:

3. В SoftbodyOp  редакторе свойства, на Simulation странице определите Start Frame для моделирования деформации. Это будет кадр в котором soft body стартует.

4. Если Вы хотите использовать набор имеющий, начальный и конечный кадры на timeline сцены, щелкните Copy from Scene. Аналогично, Вы можете копировать значения, которые Вы устанавливаете в Start Frame и  Duration это на timeline сцены щелчком Copy to Scene.

5. На Soft Body странице, определите поведение деформации объекта.

 

 

- Sampling управляет разрешающей способностью решетки, используемой в вычислении деформации. Высокие значения вызывают решетку с более близкой похожестью на объем объекта, который будет искажен, и таким образом создает более реалистический результат; однако, более высокие частоты дискретизации  усложняют процесс.

- Stiffness (Жесткость) устанавливает жесткость soft-body  решетки наложенной на object.

Высокие значения заставляют object лучше сопротивляться деформациям. Жесткость также имеет влияние на Body Friction(Трение): более высокое значение Stiffness вызывает больше “Bounciness” с которым мягкое тело нажимает на object

                  • Sampling и Stiffness - ключевые параметры в стабилизации soft body  деформации, также как No Stretch. См. Stabilizing a Soft Body Deformation на странице 107 для получения дополнительной информации.

• в то время как мягкие тела не могут быть реально “ твердыми телами ”, Вы можете добиться наиболее твердых результатов, если Вы устанавливаете Stiffnes настолько высоким, насколько возможно а Sampling как можно низким.

- No Stretch активизирует процесс фильтрации в конечном шаге моделирования, что предотвращает чрезмерное протяжение springs(веса).

- Body Mass определяет вес мягкого тела объекта. Это значение является опорным для того, как объект взаимодействует с силами окружающей среды и при столкновении с препятствиями.

- Body Friction(Скольжение) определяет насколько искаженный объект поглощает энергию препятствия, с которым он сталкивается. Чем выше это значение, тем больше количество трения с препятствием. Это также зависит от Friction значения, которое Вы установили для препятствия.

-Threshold(Порог) определяет пластичность объекта, который будет искажен. Это значение устанавливает точку, вне которой результаты столкновения могут стать постоянными. Порог - процент от длины springs. Со значением 1 (100) %, если пружинная деформация (и растяжение и сжатие) - 100 % длины original springs, эффект столкновения становится постоянным.

-Damping Регуляторует  степень, с которой искаженный объект принимает оригинальную форму, если деформация - по значению Threshold (см. выше). Значение 1- причина для объекта, чтобы остаться деформированным, а 0 моделирует более эластичный материал, который разрешает объекту возвратиться  к первоначальному состоянию.

 

6. Если вы используете мягкое тело на анимируемом объекте, установите параметры на Dynamics странице как описано в Applying Soft Body to Animated Objects на Страница 108.

7. Примените гравитацию и - или ветер к мягкому телу, чтобы создать влияние при движении. Для информации относительно этого, см. Главу 8: Chapter 8: Natural Forces на Страница 129.

8. Настройте мягкое тело объекта, чтобы взаимодействовать с препятствиями, как описано в Глава 9: Obstacles and Collisions на странице 139.

Щелкните значок Play, чтобы воспроизвести simulation. Первый раз, когда Вы запускаете его, оно будет выполняться дольше, потому что файлы моделирования кэшируются. Когда Вы щелкните Play снова – будут использоваться кэшируемые файлы, для более быстрого воспроизведения.

Вы можете видеть, сколько кадров в simulation рассчитаны на progress bar, и Вы можете отменить simulation в любое время.

 

Стабилизация Soft Body Deformation

Деформации с  мягким телом могут иногда давать неожиданные результаты, типа странных форм или преобразования, когда некоторые параметры имеют высокие settings.

Чтобы компенсировать большинство этих проблем, Вы можете корректировать  Iterations per Frame. Они определяют на какой отрезок времени между кадрами, это значение будет подразделено, и simulation выполнена с  мягким телом. Вы можете найти этот параметр на странице Simulation в редакторе свойства Soft Body. Мягкое тело, в отличие от ткани, использует явный метод для вычисления динамики, и этот параметр - главный фактор для предоставления стабильности simulation. Вообще, высокие значения Sampling и Stiffness могут вызывать instabilities, это может быть исправлено установлением  повышенного значения для Iterations per Frame. Конечно когда Вы повышаете значения, это увеличивает время просчета.

• значения High Sampling заставляют решетку более близко походить на объем объекта, который будет искажен и таким образом создает более реалистический результат, но они могут способствовать неустойчивости моделирования. Если это случается, Вы можете понизить значение Stiffness или увеличить Iterations per Frame.

• значения High Stiffness заставляют object лучше сопротивляться деформациям, но снова может способствовать неустойчивости. Если это случается, Вы можете понизить значения Sampling или увеличить Iterations per Frame.

• Выбирайте No Stretch, чтобы помогать стабилизировать деформацию, особенно когда Мягкое тело объекта, кажется,  “взорваным” после столкновения.

Вы можете также помогать стабилизировать деформацию,  увеличивая  Body Mass, которая определяет вес объекта.

 

 

Вы можете применять мягкое тело к анимируемым объектам. По умолчанию simulation берет во внимание только деформацию мягкого тела, то как оно нажимает на препятствие а не движение до столкновения. При Глобальном движение на объект воздействуют только внешние силы подобно гравитации и ветру, которые Вы можете добавить к системе.

Если Вы выбираете для использования animation, которая уже применена к soft-body,  центр soft-body object будет следовать за SRT (масштабирование, вращение, трансформация) анимацией а объект перемещаться как будто перемещаемый  центром. Внешние силы действуют только  как deformers тела вокруг центра, а не как генераторы глобальной переменной движения. Даже в этом местоположении, деформации управляются правильно, когда Мягкое тело сталкивается с препятствием.

Чтобы создать базовую деформацию с анимированным объектом:

1. Выберите анимированный объект, к которому будет применяться soft-body свойство.

2. На инструментальной панели Simulate, выберите Create > Soft Body.

3. В SoftbodyOp редакторе свойств на странице  Simulation, определите Start Frame моделирования деформации. Это будет frame в котором soft body simulation  отменяет любую animation на object.

4. На странице Dynamics, выберите Use Body Animation, чтобы использовать animation которая уже присутствует на soft-body  object. Центр soft-body object будет следовать за SRT animation (масштабирование, вращение, трансформация) а объект перемещаться, по этому центру или выберите Inherit Initial Inertia, если Вы хотите, чтобы soft-body object использовал скорость и активность анимации для старта simulation.

 

 

5. Выберите Solid Body Center, чтобы центр soft-body object's следовал анимации, которая заставляет остальную часть объекта искажаться, когда она будет следовать за центром. Вы можете также выбирать Soft Cluster Boundary, чтобы иметь Кластер точек вызывающий ту же самую реакцию как с Solid Body Center.

Вы можете использовать карты веса и текстур на параметре Decay для модулирования эффекта. Decay определяет расширение(продление) области(региона) вокруг центра объекта или кластера, в котором модель следует частично предопределенной анимации и частично деформации, рассчитанной в simulation. Для получения дополнительной информации на этом, см. Controlling Simulation Properties with Mappable Parameters на странице 24.

6. Выберите Modify > Environment > Set Obstacle.

7. Выберите все препятствия,  с которыми объект столкнется в течение анимации. Препятствия могут анимироваться непосредственно, или постоянно. Щелкните правой кнопкой мыши, чтобы закончить Сеанс выбора.

8. В редакторе свойства Obstacle, установите нужные свойства obstacle object (см. Setting Up Obstacles for Collisions на странице 41.)

 

Использование Soft Body с Envelopes и Другими Деформаторами

 
 

 

 

Если Вы хотите использовать мягкое тело на envelope или использовать его с другим типом деформаций, примените мягкое тело к envelope или объекту прежде, чем Вы применяете Envelope к цепочке или к использованию другими деформациями. Если Вы применяете мягкое тело после наложения Envelope к цепочке или после того, как другая деформация применяется, Envelope или object не искажается должным образом из-за порядка в Хронологии конструкции объекта (стеке оператора). Если envelope или деформация применяется после мягкого тела, тогда мягкое тело не знает, что они существуют.

Если Вы применяете envelope или деформацию перед мягким телом, Вы можете перемещать оператор в explorer так, чтобы это было выше оператора SoftBodyOp. Если эти деформации применяется сначала, то мягкое тело может рассчитываться относительно них.

Другая полезная вещь состоит в том, чтобы отключить некоторые операторы выше текущего.

Чтобы сделать это, откройте explorer, щелкните правой кнопкой мыши на самом низком операторе, который Вы хотите отключить, и выберите Disable from Here. Оператор и все выше него больше не затронут объект.

Для получения дополнительной информации относительно использования стека оператора, см. Operator Stack в Главе 3,  Modeling & Deformations guide.

Для информации относительно деформаций вообще, обратитесь к Главе 5: Deformations на Modeling & Deformations guide.

 

 

 

Saving and Loading Soft Body Presets

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

 

Для сохранения Пресета:

1. Открыть SoftBodyOp редактора свойства, и щелкнуть кнопку Save Preset. Не имеет значения какая страница является видимой в это время (Simulation, Soft Body или Dynamics): Soft Body редактор свойства видит их одинаково.

2. В Save Preset  браузере, выберите папку, в которой Вы желаете сохранить Пресет. Не рекомендуется, чтобы Вы сохраняли ваши, Пресеты в DSPreset папке.

3. В текстовом поле File Name, введите название, которое Вы желаете дать Пресету и щелкните OK.

 

 

Загрузка Пресета:

1. Открыть SoftBodyOp редактор свойства, и щелкнуть кнопку Load Preset.

2. В Load Preset browser, выберите нужный Вам Пресет и щелкните OK.

Выбранные пресетные значения параметра появляются, заменяя таковые в текущем наборе свойств.

 

 

                Поэкспериментируйте с soft body presets в папке  Data > DSPresets > Operators, программы XSI .

 

Советы  по оптимизации Soft Body Performance

Имеются некоторые полезные советы, чтобы помочь ускорить выполнение soft body simulations:

• Прежде, чем Вы применяете, soft body object, проверьте имеет ли объект любые ненужные операторы в стеке геометрии. Например, Вы можете иметь некоторые операторы моделирования (move component, extrude, и т.д.) в которых больше нет потребности. Вы можете freeze object перед применением мягкого тела.

• выберите wildcard selection типа *. softbodyop или *. obstacleprop, чтобы найти уместный simulation objects в Ваших сценах. Вы можете быть удивлены тем, что Вы найдете.

• Удалите любые ненужные препятствия и естественные силы (гравитация, ветер и т.д.).

• Для препятствий, выключите Animatable Deformations если они действительно не нужны. Это необходимо, если геометрия фактически искажается через какое-то время. Это увеличит размер памяти. И если Вы не нуждаетесь Double face collision, будьте уверены, что они выключены в редакторе свойства Obstacle.

• если Вы используете примитивные формы подобно сферам, сеткам, и рамкам (или конфигурации приближенные к этим формам), то использование bounding shape для препятствий быстрее чем Actual Shape. Это поможет сохранить большое количество памяти. Если Вы нуждаетесь в более точной проверке на пересечение (с "actual shape"),  рассмотрите использование объекта с низкой резолюцией, который вы сформировали в “stand in”  для видимой геометрии с высоким разрешением.

• Уменьшите Iterations per Frame настолько, насколько возможно во время сохранения (это требует некоторого навыка — см. Stabilizing a Soft Body Deformation на странице 107). Испытайте сценарий Вашей сцены с только одним или двумя моделируемыми объектами, начав с нескольких кадров, и добавляйте вплоть до получения нужной Вам simulation. В некоторых случаях, Вы можете избежать неприятностей с низкими settings подобно 2. подстраивайте каждый soft body object по-разному — чтобы они не использовали те же самые settings.

Это сильно зависит от свойств, которые вы установили, типа жесткости и массы.

• Используйте самый маленький возможный диапазон моделирования. Если Вы знаете что объекты не будут запускать colliding до frame 107, не запускайте моделирование до этого, и остановите моделирование сразу после окончания. Не используйте в сцене полный диапазон времени если необходим только какой-нибудь его отрезок. Это сохранит некоторую память при кэшировании результатов моделирования.

• Понизьте Sampling насколько возможно для поддержания нормального просмотра.

• Сохраните simulation после того, как она просчитана (когда Вы сохраняете сцену), и Вам не нужно будет повторно  вычислять её каждый раз при открытии сцены.

 

 

Перевод: knezee@yandex.ru

 

 НАЗАД

Hosted by uCoz