Пятница, 19.04.2024, 14:44
Главная Регистрация 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
Главная » Статьи » Разработка игр

Урок 13

Заключительная часть создания 3D игры. В этом уроке мы нарисуем оружие для игрока и научим его стрелять.

Забил картечью пушку туго
И думал - вынесу ща друга!

Так и рвались на свет эти слова . Но не об этом сейчас. Уйдем от юмора к делу. Наша цель: наконец-то доделать игру. Мы научим нашего игрока стрелять из дробовика. Сразу хочу сказать, что в отличие от второго урока - новых текстур я не нашел  да и найденные то вряд ли вам подойдут. Поэтому вам придется рисовать текстуры самим. 

Начнем прорисовывать оружие.
Спрайт для оружия стоит подобрать под размер экрана игры. Обычно размер экрана зависит от размера комнаты. Посмотрите какого размера у вас комната. У меня например она 800x600. Поэтому я рисую спрайт размерами 800x600. Это sprite4. Теперь рисуем sprite5. Это будет изображение выстрела. Тоже размером 800x600. Например у меня следующий спрайт вышел:


Приступим к созданию изображения оружия на экране. Создайте объект spr_gun. Добавьте событие Draw и пропишите следующий скрипт:

d3d_set_projection_ortho(0,0,800,600,0);
d3d_set_hidden(false);
draw_sprite(sprite4,0,0,0);
d3d_set_hidden(true);

Я подчеркнул размеры экрана игры. Если у вас размер игры 640x480, то первая строчка будет выглядеть так: d3d_set_projection_ortho(0,0,640,480,0);

Вставьте куда-нибудь в комнату этот объект. Запустите игру. Вау! Круто! У нас есть оружие 


С таким стволом не стыдно и на люди показаться) Только одно НО. Ствол то еще не стреляет...


Учимся стрелять.
Для начала нарисуйте спрайт пули. Сойдет и маленький круг размерами 16x16. В игре спрайт не будет отображаться. Создайте объект obj_bullet. Это будет пуля. В событие Create этого объекта перенесите Move Free() и задайте параметры как на рисунке:


Теперь создайте событие Draw. В этом событии будет рисоваться эффект выстрела. Для этого введите скрипт:

d3d_set_projection_ortho(0,0,800,600,0);
d3d_set_hidden(false);
draw_sprite(sprite5,0,0,0);
d3d_set_hidden(true);

Я снова подчеркиваю расширение экрана - которое меняется в зависимости от размера комнаты. Не забываем про то, что пуля как-то должна уничтожаться. Поэтому добавляем событие: Столкновение с wall_parent. Переносим туда Destroy(). Пуля будет уничтожаться при столкновении со стенами. Но на этом мы увы не остановимся. Давайте попробуем что-нибудь уничтожить. Например наш токсичный ящик. Для этого для объекта obj_toxic создаем событие: Столкновение с obj_bullet. Переносим туда . Ну вот и все! 

Наслаждаемся законченной первой 3D игрой! 

Категория: Разработка игр | Добавил: qwerto (14.11.2011)
Просмотров: 8091 | Комментарии: 19 | Рейтинг: 3.7/9
Всего комментариев: 191 2 »
17 admin3481   (30.12.2013 22:58) [Материал]
admin3481 А валына то не стреляет! !! кнопку то мы не задли! !!

18 BRESS   (22.04.2014 09:52) [Материал]
BRESS Так задай ))

19 Мастер   (06.06.2015 06:56) [Материал]
Мастер Как задать кнопку выстрела? Я понимаю, событие левая нажата, а дальше что делать?

16 Денис   (26.07.2013 02:32) [Материал]
Я так и не понял как стрелять?

15 Vicktor   (23.12.2012 21:22) [Материал]
Vicktor У меня не стреляет И ты не написал как там делаешь нажатие на мышку и что дальше sad

14 Vicktor   (23.12.2012 18:06) [Материал]
Vicktor у меня не стреляет sad

13 ЛОЛ_ЛОЛ   (03.07.2012 19:39) [Материал]
ЛОЛ_ЛОЛ У меня несколько вопросов:
1.Зачем мы создали спрайт пули, если все равно не присвоили его ни к одному объекту.
2.Как обозначить кнопку, с помощью которой делается выстрел.
3. И почему у меня пистолет не стреляет.

10 STALKERSuPerDolG   (02.04.2012 14:56) [Материал]
STALKERSuPerDolG Помоги! дробовик не стреляет. cry

12 BRESS   (08.06.2012 11:14) [Материал]
BRESS Ох... Простите. Не успеваю отвечать на вопросы.
Скорее всего ты назвал объект camera каким-то другим именем.

9 Город   (20.03.2012 18:40) [Материал]
Город Спасибо за урок! Но у меня есть проблема - оружие не в правом нижнем, а левом верхнем углу. Подскажите, в чём дело.

11 BRESS   (08.06.2012 11:13) [Материал]
BRESS Наверное спрайт нарисован криво. Убедись что он размером 640 на 480.

7 Demon5880   (05.02.2012 13:15) [Материал]
Demon5880 BRESS напиши 4 урок 3D игры, где рассказывается(точно рассказывается)о том как сделать многополигонную модель, как сделать прыжок, и как сделать человека который даёт квесты плиз... smile

8 BRESS   (05.02.2012 19:13) [Материал]
BRESS Про многополигонные модели тут: http://gamemaker.ucoz.com/publ/uroki/urok_16/4-1-0-28

Больше о них ничего сказать не могу, ибо из меня 3D моделер, как из сантехника музыкант biggrin
А вот про прыжки и т.д. жди. Когда будет свободная минутка напишу...

6 Demon5880   (05.02.2012 13:05) [Материал]
Demon5880 Всё я тоже сделал) я из контры(нож) и из Half life Револьвер ( с картинки где: "Слыш ты в очках повтори это Валере!" biggrin

3 никита   (04.02.2012 12:25) [Материал]
никита как научить игрока прыгать?

5 BRESS   (04.02.2012 16:21) [Материал]
BRESS В событии Space(Пробел) напиши скрипт:
z:=z+10

Далее воткни TimeLine который через определенное время после этого использует скрипт:

z:=z-10;

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