Примечание. По поводу полей чаще всего задаются такие вопросы. Первый из них

- что такое поле Newton и чем оно отличается от гравитации или от поля Radial? Ответ: Ньютоновское поле похоже на точечную гравитацию, то есть тела ускоряются не вдоль некоторого общего направления, а притягиваются к точке

- центру поля. Сила притяжения зависит от массы тел и от расстояния до центра поля (хотя атрибут useMaxDistance по умолчанию выключен), а наличие атрибута minDistance позволяет выключить поле с некоторой окрестности от его центра.

Второй вопрос - что такое поле Volume Axis? Ответ: Это некоторое обобщение всех возможных полей, позволяющее задать объем, внутри (или снаружи) которого действует поле. Можно задавать характер движения вокруг или вдоль оси, проходящей через этот объем, и некоторые другие свойства. С помощью этого поля удобно, например, наполнять частицами некоторые области пространства или делать «объемные» эффекты (типа атомного взрыва). Кстати, ограничивать объемом действие поля можно для всех имеющихся полей с помощью атрибута volumeShape.

Игра «Место под солнцем» Создайте три примитива.

Пусть это будут полигональные поверхности: сфера, цилиндр и тор.

Задайте для них небольшое количество subdivisions в Channel Box (например, восемь), чтобы динамика считалась без рывков.

Растащите их в разные стороны от центра, выберите их и присоедините к ним радиальное поле: Fields=>Radial.

Объекты испуганно убегают от центра.

Как следует из вида иконки для поля Radial, на объекты воздействует центральное поле сил, центр которого определяется translate-атрибутами объекта radialFieldl. Поглядим на атрибуты поля в Channel Box.

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

Сила воздействия поля на объекты определяется атрибутом magnitude, но трюк состоит в том, что, как правило, величина этого атрибута отрицательная. При этом направление действия поля «выворачивается».

Установите magnitude для radialFieldl равным -5. И вы получите первый уровень игры «место под солнцем».

Выберите все твердые тела и увеличьте bounciness до 0.9, чтобы игра стала более веселой.

На выбранные тела навалите поле Vortex (вихрь), чтобы начать закручивать их вокруг вертикальной оси (направление оси, очевидно, также задается атрибутами этого конкретного поля).

Объекты постепенно раскручиваются и, под воздействием центробежной силы, преодолевают притяжение к центру, определяемое радиальным полем. Попробуем ограничить радиус действия поля vortexFieldl, так чтобы, выйдя за него, объекты попадали в объятия radialFieldl и снова стремились к центру.

Выберите vortexFieldl и установите maxDistance=5. При этом надо проверить, включен ли атрибут useMaxDistance. Поле типа Vortex как раз является одним из полей, у которых этот атрибут выключен по умолчанию.

Включите его, то есть установите в on.

Теперь объекты будут раскручиваться только в окрестности начала координат, а на «окраинах» на них будет действовать только притягивающее радиальное поле. С течением времени, однако, объекты все равно накапливают энергию и вырываются даже за пределы его зоны влияния. Посмотрим на зону влияния radialFieldl.


⇐ вернуться назад | | далее ⇒