Здравствуйте! Это небольшое руководство о том, как можно сгладить анимацию в Game Maker`е. Допустим, нам нужно создать качающиеся деревья. Нам понадобиться спрайт дерева. (любого, например елка или береза). Назовем дерево tree01, а "качание" (помощника) helper01
Создадим объекты tree и helper и присвоим им спрайты tree01 (origin у корня) и helper01 (origin по центру) .
В Create к объекту tree запишем такой код:
Код
rot = 0 back = 0
В Step:
Код
if (back = 0) { rot += 0.5 } else {rot -= 0.5 } if (rot < -5) { back = 0 } if (rot > 5) { back = 1 }
image_angle = rot
Создаем комнату и ставим туда дерево. Результат, мягко говоря, не слишком впечатляющий. Как только дерево наклонилось на 5 градусов от 90 градусов, оно переключает свое движение в иную сторону. В итоге – на качающееся дерево не очень похоже.
И вот здесь то мы и используем "curves". Это слово значит отнюдь не «курва» а «кривая». Поскольку такого понятия, как «кривая» в Game Maker`е нет, то мы его изобретем. А создавать кривые мы будем через пути.
Удаляем все скрипты с дерева. Пишем заново в Create:
rot = 0
Код
icrvobj = instance_create(0,0,helper) with (icrvobj) { path_start(crv01,1,1,true) }
В Step:
Код
rot = 4-icrvobj.y/8 image_angle = rot
А теперь создадим путь crv01: (описываю по точкам)
Плюс отключаем closed и включаем smooth curve с precision в 8.
Еще желательно включить в настройках interpolate colors between pixels. А глюк с «прыганьем» rot`а, когда он подходит к 0, я не знаю как решить. Это особенность программы.
Таким образом, мы запускаем объект helper по заданному пути и используем его y координату как наклонение. Почему мы используем лишнюю переменную rot? Как по мне, так лучше экспериментировать с нестандартными переменными, чем со стандартными. Например, нам захочется «присобачить» силу ветра или, например, гравитационные аномалии. Подставляем всё в rot, а в image_angle уже ставим конечный результат.
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:
Игровые объявления и предложения:
Если вас заинтересовал материал «Практика создания кривых в Game Maker», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела.
Предлагаются такие схожие материалы:
Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.