Искривленный текст в Game Maker


Здравствуйте. В этом небольшом уроке, я расскажу вам о том, как создать искривленный текст в конструкторе игр Game Maker.
Для начала нужно сказать, что шрифт будет искривляться по заданному пути (path), потому для начала, создайте произвольный путь. Чтобы в дальнейшем текст было проще позиционировать, первую точку пути установите в координатах 0:0
Все основные действия будут выполняться в отдельном скрипте. Сделано это для того, чтобы не переписывать код постоянно, а просто вызывать скрипт с нужными параметрами.
Создадим в папке Scripts новый скрипт и назовем его scr_font_path. Открываем скрипт для редактирования и пишем туда следующий код:

var step, point, s;
step=0;
step=1/string_length(argument2)
for (i=1; i<=string_length(argument2); i+=1)
{
s=string_char_at(argument2,i);
point+=step;
draw_text(argument0+path_get_x (argument3,point),argument1+path_get_y (argument3,point),s)
}
point=0;


Теперь разберемся, что к чему.
Первой строкой мы объявляем переменные, который нам понадобятся. Переменная step будет служить для определения частоты чимволов, переменная point будет хранить номер текущую точку, в которой выводится символ, и наконец переменная s будет хранить текущий символ из текста.
Так как это скрипт, то в нем заданы аргументы: argument0 и argument1 - это координаты вывода текста, argument2 - это сам текст и argument3 - указывает на путь.
Далее мы определяем частоту символов, и запускаем основной цикл, который и делает всю работу. Число итераций цикла зависит от количества символов в тексте string_length(argument2)
В теле цикла идет поочередное присваивание переменной s всех символов из текста. После чего идет отрисовка этих символов. В отрисовке учавствует функция path_get_x(argument3,point) которая определяет координату x указанной точки на пути, аналогично определяется координата y.
Теперь можно протестировать наш скрипт. Создаем новый объект и в событии Draw пишем: scr_font_path (x, y, text, path0);
Разместим этот объект в комнате и запустим проект. Если всё сделано верно, то указанный текст расположится по созданному нами пути.
Ну вот и всё. Спасибо за внимание.

НазадИСХОДНИКДата: 13.03.2012

 
    
    
Наши партнеры:

www.voldimars.ru

 
 
         
     

© LunarPixel, 2011-2012