Среда, 16 Января 2019, 04:29

Приветствую Вас Гость

Меню сайта
Категории каталога
Создание игр [315]
Статьи об общих понятиях связанных с созданием игр.
Программирование [69]
Гайды по программированию на разных ЯП.
Движки и Гейммейкеры [124]
Статьи о программах для создания игр, уроки и описания.
Софт [28]
Различные программы, в том числе в помощь игроделам.
2D-графика [11]
Уроки по рисованию, растр, пиксель-арт, создание спрайтов и пр.
3D-графика [10]
Уроки по моделированию, ландшафт, модели, текстурирование и пр.
Моддинг игр [5]
Модификация компьютерных игр, создание дополнений, перевод, хакинг.
Игры [97]
Статьи об играх, в том числе и сделанных на гейммейкерах.
Разное [73]
Статьи, которые не вошли в определённые разделы.
Наш опрос
Как вы относитесь к созданию игр без программирования?
Всего ответов: 10223
Главная » Статьи » Создание игр

Как создать 3D игру на Game Maker 8
В этой статьи я объясню, как создать 3D игру на Game Maker 8.

В Game Maker у вас не выйдет сделать игру с большим миром, графика  в игре будет не на очень большом уровне. Если вас это отпугнуло, то дальше можете не читать... 
Вот пару скриншотов с 3D игр сделаных на Game Maker :

 Если вы решили все-таки сделать игру на Game Maker, то приступим. Для начала создаем объект камеры и назвем его obj_cam. В Create нужно прописать такой код. Совет не копирует код а сами пишите(так легче запомнить).

Code
d3d_start();\\Это значит что функция 3D включена 
draw_set_color(c_white);\\Окружение будет белым цветом
z=20;
pitch=0;

Я решил не все писать кодом. Зачем если есть кнопки, которые упрощают:
Нужно добавить кнопку Set Friction и даем значение 0.4
И добавляем еще кнопку Set Cursor. Там ничего не меняем.
Теперь в событии Step пишем, а не копируем:
Code
direction -= (display_mouse_get_x() -display_get_width()/2)/10; 
pitch += (display_mouse_get_y() -display_get_height()/2)/10;
pitch = max(min(pitch,100),-100);
display_mouse_set(display_get_width()/2,display_get_height()/2);

Со Step завершили.
Теперь нужно добавить управление:
В событии клавиши Влево:
Code

  var xn,yn;
  xn = x - sin(direction*pi/180);
  yn = y - cos(direction*pi/180);
  { x = xn; y = yn; }
}  

В событии клавиши Вверх:
Code
Вставляем кнопку Set Variable 
В верхнюю строчку пишем speed
В нижнюю 5.

В событии клавиши Вправо:
Code

  var xn,yn;
  xn = x + sin(direction*pi/180);
  yn = y + cos(direction*pi/180);
  { x = xn; y = yn; }
}

В событии клавиши Вниз:
Code
Вставляем кнопку Set Variable 
В верхнюю строчку пишем speed
В нижнюю 5.

В событии Draw пишем такой код:
Code
d3d_set_projection(x,y,z,x+cos(direction*pi/180),y-sin(direction*pi/180),z-sin(pitch*pi/180),0,0,1) 

Все с obj_cam завершили.
Теперь создаем объект пола и потолка и называем его так obj_floor
и создаем фоны для пола и потолка и называем для пола floor для потолка roof
В событии Draw пишем такое:
Code
d3d_draw_floor(0,0,0,room_width,room_height,0,background_get_texture(floor),24,24);\\Это рисуется пол 
d3d_draw_floor(0,0,64,room_width,room_height,64,background_get_texture(roof),12,12);\\Это рисуется потолок

И не забудьте сделать его твердым)
Все с obj_floor завершили.
Теперь создаем фон для стен и называем его wall.
Теперь создаем объект и называем его hor_wall делаем твердым.
В событии Draw:
Code
d3d_draw_block(x-16,y-2,0,x+16,y+2,64,background_get_texture(wall),1,1); 

Теперь создаем объект ver_wall, делаем твердым.
И в событии Draw:
Code
d3d_draw_block(x-2,y-16,0,x+2,y+16,64,background_get_texture(wall),1,1); 

А теперь возвращаемся к объекту obj_cam
В столкновении с hor_wall, пишем такое:
Code
x=xprevious; 
y=yprevious;

В столкновении с ver_wall, пишем такое:
Code
x=xprevious; 
y=yprevious;

Все с объектами завершено, теперь комната:
Создаем комнату и добавляем obj_cam и объект obj_floor где то с краю. И произвольно добавляем, стены не забываем что они у нас под именем ver_wall, hor_wall.

Все, спасибо за внимание.

P.S. Не забываем коментировать!
Категория: Создание игр | Добавил: Transced (23 Июня 2011)
Просмотров: 64290 | Комментарии: 25 | Рейтинг: 3.9/8 |
Теги: урок, 3d игра, Создание игры, Обучение, уроки, Game Maker, GM, GML, Game Maker 8, Создание 3D игры
Дополнительные опции:
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:

Игровые объявления и предложения:
Если вас заинтересовал материал «Как создать 3D игру на Game Maker 8», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела. Предлагаются такие схожие материалы: Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.

Всего комментариев: 251 2 3 »
+0-
24 Schwards   (23 Июня 2017 15:41)
SchwardsУсё хорошо только осталось добавить оружие и прыжки :)

+0-
23 GameLog   (17 Марта 2015 09:39)
GameLogСтолкновение игрока со стеною убооогое cry

+0-
22 GameLog   (17 Марта 2015 09:38)
GameLogСтолкновение игрока со стеною убооогое cry

+0-
21 GameLog   (10 Января 2015 18:41)
GameLog___________________________________________
ERROR in
action number 1
of Draw Event
for object obj_floor:

Trying to get texture from non-existing background.

Что делать?

+0-
25 Schwards   (29 Июня 2017 12:16)
SchwardsИзмени имя текстуры.

+-3-
19 Bratаn   (12 Апреля 2012 19:23)
BratаnERROR in
action number 1
of Draw Event
for object obj_cam:

Error in code at line 1:
d3d_set_projection(x,y,z,x+cos(direction*pi/180),y-sin(direction*pi/180),z-sin(pitch*pi/180),0,0,1)
^
at position 80: Unknown variable pitch

___________________________________________
ERROR in
action number 1
of Step Event
for object obj_cam:

Error in code at line 2:
pitch += (display_mouse_get_y() -display_get_height()/2)/10;
^
at position 3: Unknown variable pitch
Мда sad

+-1-
20 strelokden   (09 Мая 2012 15:14)
если у тя line версия хрен ти чё сделаешь в 3d а если pro то я незнаю

+1-
18 NewLang   (28 Января 2012 09:10)
NewLangВторой скрин не с game maker а с 3d game maker wink

+1-
17 antohaz   (22 Января 2012 16:23)
antohazпочему ходит сквозь стены? хотя они solid

+0-
16 antohaz   (22 Января 2012 16:08)
antohazВ событии клавиши Вниз:
Code
Вставляем кнопку Set Variable
В верхнюю строчку пишем speed
В нижнюю 5.

Здесь ошибка
В нижнюю писать -5

+-2-
15 kr1one   (21 Января 2012 19:13)
kr1oneFATAL ERROR in
action number 1
of Create Event
for object obj_cam:

COMPILATION ERROR in code action
Error in code at line 1:
d3d_start();\\
^
at position 13: Unexpected symbol.
кто знает из за чего может быть ошибка.

+0-
14 Bladolitel   (14 Декабря 2011 22:32)
BladolitelБлин не получается а не кто бы не мог у кого получилось куда нить выложить сам фаил гемайкера а я бы посмотрел cry

1-10 11-20 21-21
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск по сайту
10 случ. движков
  • Zelda Classic
  • CopperCube 6
  • Coffee
  • BuildBox
  • Construct 2
  • Proton
  • Banshee
  • TDG
  • GLHeretic
  • QCake
  • Друзья сайта
    Игровой форум GFAQ.ru Перевод консольных игр
    Все права сохранены. GcUp.ru © 2008-2019 Рейтинг