Естественно, нам понадобиться создать базовый объект (циркуль) и проанимировать его, создав цикл ходьбы. (Конечно, читатель вправе проявить все свои творческие способности и фантазию при создании и анимации базового объекта). В моем примере цикл ходьбы (один двойной шаг) циркуля составил 20 кадров по времени и 20 единиц сетки по пространству:
Замечу, что цикл ходьбы удобнее создавать в пространстве, а не на месте, так легче избежать возможного проскальзывания «ног» нашего циркуля при любом характере движения (нейтральная походка, хромота, бег вприпрыжку и так далее).
Следующий шаг - преобразование движения в пространстве в бесконечный цикл ходьбы на месте. В зависимости от устройства персонажа на этом этапе могут возникнуть разные ньюансы, но общий принцип такой: группируем проанимированный объект и сдвигаем группу в направлении, противоположном движению. В нашем случае на перемещение группы с движущимся циркулем необходимо поставить 2 ключа : О в нулевом кадре и -20 в 20-м. Интерполяция между ключевыми кадрами - линейная. Забегая вперед замечу, что в дальнейшем, когда мы «наклеим» фазы движения циркуля как текстуру на равномерно движущийся спрайт, то «спрайтовый» циркуль так же будет «шагать» без проскальзывания. Задав анимционным кривым и нашего объекта и его группы соответсвующее поведение после последнего ключа (post infinity) cycle или cycle with offset легко получить бесконечный цикл на месте шагающего циркуля.
Определим материалы нашему объекту, поставим свет, создадим камеру и расположим ее фронтально по отношению к нашему шагающему чуду по аналогии с предыдущим примером чтобы получить набор картинок - полный комплект фаз движения циркуля под различными углами к камере. Напомню, что в отличие от предыдущего примера поворачивать нужно шагающий на месте циркуль вокруг своей оси, а не камеру вокруг него. Ограничимся поворотом на 180 ( а не на 360 градусов) с шагом 2 градуса. При каждом угле поворота нам необходимо будет отрендерить полный набор фаз движения (20 картинок). Итого 90 позиций угла поворота (0, 2, 4,…, 178) да по 20 изображений на каждую позицию - нам предстоит создать 1800 картинок. Немало.... Естественно задать базовое имя последовательности что-нибудь типа circul, и использовать нумерацию наших картинок в формате cir-cul.####, то есть cirul.0000-circul.0019 - это цикл движения нашего циркуля под углом к камере в 0 градусов, circul.0020 - curcul.0039 - тот же цикл но под углом в 2 градуса и так далее…
После того, как «титанический» труд по созданию необходимого набора спрайтов будет завершен, можно приступать к созданию самой сцены. «Толпу шагающих циркулей» можно создавать любым способом, но один из самых простых - создать поток частиц с помошью имеющейся в maya технологии surface flow - создание потока частиц вдоль поверхности.
Итак, создадим NURBS-плоскость, подвигаем контрольные точки этой плоскости для придания поверхности s-образной формы и создадим поток частиц вдоль этой поверхности (в меню Dynamics выбираем Effects -> Create Surface Flow ). В результате у нас получиться такая сцена: