Пятница, 19.04.2024, 13:34
Главная Регистрация RSS
Приветствую Вас, Гость
Поиск по сайту
Авторизация

Меню сайта
Game Maker
Если вы только-только начали изучать игрострой и еще даже не успели скачать сам Game Maker, предлагаем вам на выбор следующие версии программы:

Game Maker 8.1
Классика. Идеально подходит для создания простых 2D игр на PC. Требует активации.
Game Maker for Mac
Абсолютно та же программа, но только для пользователей Mac. Требует активации.
Game Maker Studio
Самая новая версия с возможностью кроссплатформенной разработки. Бесплатна.
Топ 5 игр
Агент Green 4.2 / 5.0
FeDo 4.2 / 5.0
To Mars: Sec... 4.2 / 5.0
To Mars+MapE... 3.9 / 5.0
Paintball 3.8 / 5.0

Топ игр составлен путем пользовательского голосования.

Если вы не согласны с какой-либо оценкой, примите участие и поставьте свой балл игре. Ваша оценка очень важна для нас ;)
Статистика



На сайте: 1
Гостей: 1
Пользователей: 0
Главная » Статьи » Гейм-дизайн и графика

Делаем игру типа Rally

Rally(Гонки) - один из самых любимых всеми жанр компьютерных игр. И так, вы уже наверно догадались что в этом уроке мы будем делать гонку. Сегодня мы рассмотрим основу каждой гонки: физику, управление, дрифт. 

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

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


Перейдем к созданию объекта. Создайте новый объект и назовите его car. Присвойте этому объекту наш спрайт. Теперь добавьте событие Step и напишите следующий скрипт:

if keyboard_check(vk_left) then
image_angle:=image_angle+5;

if keyboard_check(vk_right) then
image_angle:=image_angle-5;

Данный скрипт должен поворачивать нашу машину. Проверим это. Создайте новую комнату и разместите в ней нашу "тачку".


Нажмем влево... Отлично! Машина повернула! Первый шаг завершен.


Шаг второй.
Машина уже поворачивает, но не ездит. Исправим это. Поскольку уж слишком примитивная гоночка нам не нужна, то добавим систему скорости. То есть машина будет плавно разгоняться и плавно тормозить.

И так, воспользуемся переменной speed. Создайте событие Create и напишите скрипт:

speed:=1;

Данный скрипт ставит начальную скорость равной 1. Далее немного подкорректируем скрипт в событии Step:

direction:=image_angle //Смена направления машины

if keyboard_check(vk_up) then 
begin
if speed<7 then //Ограничение скорости
speed:=speed+0.1; //Добавление скорости
end;

if keyboard_check(vk_left) then
image_angle:=image_angle+5;

if keyboard_check(vk_right) then
image_angle:=image_angle-5;

Теперь наша машина будет постепенно разгоняться.


К сожалению тормозить "тачка" еще не умеет, поэтому создайте событие no key и напишите скрипт:

if speed>0
speed:=speed-0.3;
if speed<0 then
speed:=0;

Этот скрипт позволяет мягко остановить машину. Шаг второй закончен.

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


Не забудьте щелкнуть по кнопке "По центру". Далее создайте объект drift_obj и присвойте ему спрайт дрифтовых линий. В событии Create напишите:

image_angle:=car.image_angle;

По желанию можете установить TimeLine для удаления дрифта.

Снова возвращаемся к объекту car. В событии Create добавьте еще один скрипт:

dr:=0;

Этим скриптом мы создали переменную dr, ответственную за дрифт. Снова вернемся к событию Step. Очередной раз смените скрипт:

direction:=image_angle

if keyboard_check(vk_up) then
begin
if speed<7 then
speed:=speed+0.1;
end;

if keyboard_check(vk_left) then
begin
dr:=dr+0.5;
image_angle:=image_angle+5;
end;

if keyboard_check(vk_right) then
begin
image_angle:=image_angle-5;
dr:=dr+0.5;
end;

dr:=dr-0.3;

if dr>5 then
instance_create(x,y,drift_obj)

if dr>5 then
dr:=5;

Теперь этот уже полноценный код будет еще и рисовать полосы при "сильном трении".

Ну а в событии no key добавьте следующий скрипт:

dr:=0;

Ну вот и все! Машина ездит и дрифтует. Урок завершен!

Категория: Гейм-дизайн и графика | Добавил: qwerto (29.01.2012)
Просмотров: 4732 | Комментарии: 3 | Рейтинг: 5.0/4
Всего комментариев: 3
3 prince   (19.07.2012 16:59) [Материал]
prince angry а как сделать чтобы она на месте не поворачивалась?

2 миха   (10.06.2012 09:34) [Материал]
миха Класс!А ты можешь сделать 3д гонку если можно сделай такой УРОК!

1 Начинала   (25.05.2012 17:56) [Материал]
круто спс я как раз хотел сделать гонку

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]