Главная » Как сделать » Вы здесь

Создание собственной компьютерной игры

Как создать игру

У некоторых пользователей, увлекающихся компьютерными играми, иногда возникает мысль о создании собственного проекта. Однако так просто его не реализовать, ведь одной идеи недостаточно. Как минимум придется освоить специальное программное обеспечение или онлайн-сервис, но в идеале надо будет запастись знаниями языков программирования. В рамках сегодняшней статьи мы продемонстрируем три возможных метода, позволяющих создать игру, а вы, отталкиваясь от увиденного материала, присмотрите подходящий вариант и начнете обучение.

Создаем собственную компьютерную игру

Приведенные ниже руководства помогут только разобраться с принципом создания игр с помощью разных инструментов, они не являются универсальными или полноценными уроками, освоив которые, можно стать профессиональным разработчиком. Мы предлагаем использовать их как ознакомительное средство, наталкивающее на последующее обучение геймдеву.

Еще рекомендуем обратить внимание, что дальнейшая информация будет ориентирована именно на компьютерные игры. Если же у вас появилось желание делать мобильные проекты, советуем ознакомиться с другим материалом на нашем сайте, щелкнув на указанную далее ссылку.

Подробнее: Способы создания игры на Android

Способ 1: Программы для создания игр

В первую очередь рассмотрим специальные программы, которые позволяют создать проект без навыков программирования. Сегодня мы остановимся на известном варианте. Game Maker – одна из самых простых и популярных программ для создания 2D-игр. Здесь доступно создание игр с помощью интерфейса drag’n’drop или же используя встроенный язык GML (с ним-то мы и будем работать). Гейм Мейкер – это лучший вариант для тех, кто только начинает разрабатывать игры.

Скачать Game Maker

  1. Переходим во вкладку «New» и создаем новый проект.
  2. Создание нового проекта в программе Game Maker

  3. Создадим спрайт. Нажмите правой кнопкой мыши на пункте «Sprites», а затем — «Create Sprite».
  4. Создание нового спрайта для игры в программе Game Maker

  5. Задаем ему имя, пусть будет player, и нажимаем «Edit Sprite». Откроется окно, в котором мы сможем изменить или создать спрайт. Создадим новый спрайт, размер менять не будем.
  6. Редактирование готового спрайта для игры в программе Game Maker

  7. Дважды нажмите на новом спрайте. В открывшемся редакторе появляется возможность нарисовать спрайт. В данный момент мы рисуем игрока, а именно танк. Сохраняем наш рисунок.
  8. Создание объекта для игры в программе Game Maker

  9. Чтобы сделать анимацию нашего танка, скопируйте и вставьте изображение комбинациями Ctrl + C и Ctrl + V соответственно и нарисуйте ему другое положение гусениц. Позволяется делать столько копий, сколько посчитаете нужным. Чем больше изображений, тем интереснее анимация.
  10. Анимация объекта для игры в программе Game Maker

  11. Можете поставить галочку напротив пункта предпросмотра. Вы увидите созданную анимации и сможете изменить скорость изменения кадров. Сохраняем изображение и центрируем его кнопкой «Center». Наш персонаж готов.
  12. Сохранение танка для игры в программе Game Maker

  13. Таким же образом нам нужно создать еще три спрайта: враг, стена и снаряд. Назовем их enemy, wall и bullet.
  14. Создание новых спрайтов для игры в программе Game Maker

  15. Теперь необходимо создать объекты. На вкладке «Objects» нажимаем правой кнопкой мыши и выбираем «Create object». Создадим объект для каждого спрайта: ob_player, ob_enemy, ob_wall, ob_bullet.
  16. При создании объекта стена поставьте галочку напротив пункта «Solid». Это сделает стену твердой, и танки не смогут проходить сквозь нее.

    Переход во вкладку управления объектом в программе Game Maker

  17. Переходим к сложному. Открываем объект ob_player и переходим во вкладку «Control». Создаем новое событие кнопкой «Add Event» и выбираем «Create». Правой кнопкой мыши жмем на пункт «Execute Code».
  18. Создание нового контроллера объекта в программе Game Maker

  19. В открывшемся окне нужно прописать, какие действия будет выполнять наш танк. Наберите такие строчки:

    hp = 10;
    dmg_time = 0;

  20. Создайте событие «Step» и таким же образом пропишите для него код:

    image_angle = point_direction (x, y, mouse_x, mouse_y);
    if keyboard_check (ord('W')) {y-=3};
    if keyboard_check (ord('S')) {y+=3};
    if keyboard_check (ord('A')) {x-=3};
    if keyboard_check (ord('D')) {x+=3};

    if keyboard_check_released (ord('W')) {speed = 0;}
    if keyboard_check_released (ord('S')) {speed = 0;}
    if keyboard_check_released (ord('A')) {speed = 0;}
    if keyboard_check_released (ord('D')) {speed = 0;}

    if mouse_check_button_pressed (mb_left)
    {
    with instance_create (x, y, ob_bullet) {speed = 30; direction = point_direction (ob_player.x, ob_player.y, mouse_x, mouse_y);}
    }

  21. Создание событий для игры в программе Game Maker

  22. Добавьте событие «Collision» – столкновение со стеной. Код:

    x = xprevious;
    y = yprevious;

  23. И так же добавьте столкновение с врагом:

    if dmg_time <= 0
    {
    hp-=1
    dmg_time = 5;
    }
    dmg_time -=1;

  24. Событие «Draw»:

    draw_self();
    draw_text(50,10,string(hp));

  25. Добавьте "Step" - "End Step":
    if hp <= 0
    {
    show_message('Игра окончена')
    room_restart();
    };
    if instance_number (ob_enemy) = 0
    {
    show_message('Победа!')
    room_restart();
    }
  26. Меню с игровыми событиями в программе Game Maker

  27. Когда закончили с игроком, переходите к объекту ob_enemy. Добавьте событие «Create»:

    r=50;
    direction = choose(0,90,180,270);
    speed = 2;
    hp = 60;

  28. Для движения добавьте «Step»:

    if distance_to_object (ob_player) <=0
    {
    direction = point_direction(x,y,ob_player.x, ob_player.y)
    speed = 2;
    }
    else
    {
    if r <= 0
    {
    direction = choose (0,90,180,270)
    speed = 1;
    r=50;
    }
    }
    image_angle = direction;
    r-=1;

  29. «End Step»:

    if hp <= 0 instance_destroy();

  30. Создайте событие «Destroy», перейдите во вкладку «Drawing» и в пункте «Other» нажмите на значок со взрывом. Теперь при убийстве врага будет анимация взрыва.
  31. Создание эффекта разрушения в программе Game Maker

  32. Событие «Collision – столкновение со стеной»:

    direction = - direction;

    Событие «Collision – столкновение со снарядом»:

    hp-=irandom_range(10,25)

  33. Создание эффекта столкновения со снарядом в программе Game Maker

  34. Так как стена у нас никаких действий не выполняет, переходим к объекту ob_bullet. Добавляем столкновение «Collision с врагом» (ob_enemy):

    instance_destroy();

    И «Collision со стеной» (ob_wall) с точно таким же кодом:

    instance_destroy();

  35. Эффект столкновения со стеной в программе Game Maker

  36. Наконец создадим уровень «Level 1». Нажимаем правой кнопкой мыши «Room» > «Create Room». Перейдем во вкладку «Objects» и с помощью объекта «Стена» нарисуем карту уровня. Потом добавим одного игрока и несколько врагов. Уровень готов!
  37. Создание игровой комнаты в программе Game Maker

  38. Сейчас нам доступен запуск игры и ее тестирование. Если вы следовали инструкции, багов быть не должно.
  39. Тестирование готовой игры в программе Game Maker

Мы рассмотрели Game Maker только в качестве самого простого примера, однако сейчас пользователям доступно множество самых разнообразных подобных приложений для создания игр без знания ЯП. Поэтому у юзера открывается широкий выбор подходящего инструмента.

Читайте также: Программы для создания игр

Способ 2: Онлайн-сервисы

На просторах интернета присутствует множество различных онлайн-сервисов, чья функциональность сосредоточена на выполнении каких-либо задач. Среди подобных веб-ресурсов присутствуют и те, которые помогут создать простую игру без навыков программирования. В большинстве случаев пользователю предлагают воспользоваться встроенными скриптами и библиотекой текстур, персонажей, дополнительных предметов. Давайте рассмотрим пример создания подобного проекта на примере редактора от Gamefroot:

Перейти на сайт Gamefroot

  1. Перейдите по указанной выше ссылке, чтобы попасть на официальный сайт проекта, где нажмите на большую зеленую кнопку с надписью «Start Making».
  2. Переход к созданию игры на онлайн-сервисе Gamefroot

  3. По прохождении авторизации будет предложено выбрать игровой жанр. Для ознакомления мы возьмем платформер со встроенным уроком от разработчиков.
  4. Выбор жанра игры для создания на онлайн-сервисе Gamefroot

  5. После открытия редактора справа появится навигационная панель с ознакомительными инструкциями по данному приложению. Для начала урока потребуется кликнуть на «LET`S GO».
  6. Запуск начального руководства с работой на сайте Gamefroot

  7. Далее нужно будет ознакомиться с каждым шагом, в которых описывается процесс взаимодействия с редактором. Приведенные инструкции помогут разобраться с основами игрового строительства и использованием всех инструментов.
  8. Просмотр всех инструкций по работе на сайте Gamefroot

  9. Мы не будет затрагивать начальное окно игры, поскольку оно и так настроено корректно по умолчанию. С этим вы разберетесь в будущем, если захотите работать над индивидуальным проектом. Сейчас переместитесь во вкладку «Game».
  10. Переход ко вкладке с рабочей средой игры на сайте Gamefroot

  11. Здесь вам понадобится знать о трех основных областях рабочей среды. Слева находятся все инструменты управления, добавление предметов, блоков и скриптов. Посередине располагается сам игровой экран, а ниже показана вся карта. Справа отображено небольшое окно со всеми присутствующими слоями и функциями управления ими. Оно может свободно перемещаться по всей области вкладки.
  12. Основные элементы рабочей среды для создания игры на сайте Gamefroot

  13. Давайте посмотрим, как действует слой главного персонажа. Выберите строку «Player», после чего вокруг человечка появится синий прямоугольник. Он отвечает за перемещение и трансформацию объекта. То есть вы можете поставить его под любым углом, изменить размер или изначальное положение на карте.
  14. Выбор слоя управления персонажем на сайте Gamefroot

  15. Следующий слой «GrassTerrain». Сюда вынесены все блоки, по которым передвигается персонаж. Обратите внимание на доступные блоки слева. Вы можете выделить их и поместить в любое место на игровой зоне, чтобы продлить карту для перемещения персонажа.
  16. Выбор слоя управлением объектов игры на сайте Gamefroot

  17. В этой же панели чуть ниже находится раздел «Collectables», который отвечает за добавление золота и других предметов коллекционирования. На этом примере мы рассмотрим создание и доработку нового слоя. Сначала создайте новую строку в «Layers» и дайте ей название. Затем выделите ее и поместите необходимое количество монет на карту.
  18. Добавление монеток для коллекционирования на сайте Gamefroot

  19. Примерно такие же действия осуществляются с чекпоинтами, завершающими точками, NPC и другими игровыми элементами. Желательно каждый тип объектов добавлять в новый слой, чтобы потом не только не запутаться, но и не совершить ошибки с присвоением скриптов.
  20. Список остальных возможных объектов на сайте Gamefroot

  21. Сейчас вернемся к нашим монетам. Переместитесь в раздел «Scripts» через самую левую панель. Где опуститесь вниз и нажмите скрипт под названием «Score Collectable». Затем выбранным скриптом следует щелкнуть по каждой монете. Таким образом, вы обеспечите корректное коллекционирование и обозначите те самые элементы.
  22. Присвоение скрипта объекту на сайте Gamefroot

  23. В режиме редактирования каждого готового скрипта присутствует множество полезных настроек, о которых говорится в официальных уроках. Здесь вы можете добавить звуки, настроить анимацию и другие действия, которые будут выполняться при достижении определенных условий.
  24. Настройка готового скрипта на сайте Gamefroot

  25. Однако это еще не все. Присутствует функция собственноручного строения скриптов, которая позаимствована из известного многим софта для детей, обучающего программированию. Здесь слева выделены все отдельные действия. С помощью них составляется единая таблица скрипта, образующая ряд действий, выполняемых после достижения указанной цели, например, подбора монеты или попадания в кадр NPC.
  26. Создание собственного скрипта для игры на сайте Gamefroot

  27. Если во время разработки вы захотите протестировать работоспособность игры, кликните на кнопку «Play», располагающуюся справа вверху.
  28. Запуск игры для тестирования на сайте Gamefroot

  29. Начнется запуск приложения. Он занимает определенное количество времени, что зависит от сложности проекта и мощности компьютера.
  30. Загрузка игры для тестирования на сайте Gamefroot

  31. Далее отобразится стартовое окно, где нужно начать игру или проверить действие, например, кнопки «Help».
  32. Запуск игрового процесса во время тестирования игры на сайте Gamefroot

  33. Перемещайтесь по карте с помощью стрелочек или заданных клавиш управления. Обязательно проверьте действенность всех добавленных скриптов в разных ситуациях, чтобы в будущем не возникло проблем с прохождением у других игроков.
  34. Тестирование игры на сайте Gamefroot

  35. По завершении разработки игры или надобности сделать перерыв вы можете сохранить процесс или экспортировать файл на компьютер. Полноценная загрузка готового проекта доступна только после приобретения расширенной версии данного онлайн-сервиса.
  36. Переход к сохранению проекта на сайте Gamefroot

Как видите, ничего сложного в создании игры через Gamefroot нет. От пользователя требуется только разобраться со скриптами, что, пожалуй, является самой сложной частью этого метода. В остальном же остается только проявить креативность и использовать фантазию, чтобы получить по истине хороший и играбельный продукт без задействования навыков программирования. К тому же функциональность этого веб-ресурса позволяет работать со многими жанрами, а также можно начать работу полностью с чистого листа.

Как уже было сказано ранее, подобных Gamefroot сервисов существует множество, все они работают примерно по одному и тому же принципу. Однако у вас вряд ли получится найти сайт с русской локализацией, поэтому придется осваивать английский язык интерфейса.

Способ 3: Среда разработки и язык программирования

Мы подошли к самому сложному, но в то же время интересному способу — использование языка программирования в качестве инструмента для написания собственной игры. Сразу хотим отметить, что сейчас мы не предоставим единственную универсальную инструкцию, которая поможет разобраться со всеми аспектами, поскольку составить такой материал нереально. Взамен предоставим наводящие материалы для тех, кто заинтересован в обучении и дальнейшем развитии своей личности в сфере геймдев.

Для примера возьмем известную миллионам игру Minecraft. Конечно, она достаточно проста, но в то же время показывает, что даже один человек может собственными силами создать проект с нуля, который станет популярным у всего мирового сообщества. Данное приложение изначально писалось на языке Java, а трудился над ним Маркус Перссон (Notch). Из этого выходит, что практически любой пользователь, начав изучение Java, сможет достичь хотя бы немного приближенного результата, написав свой собственный проект. Однако для этого придется немало трудиться. Существуют специальные факультеты в университетах, обучающие основам программирования, но не все хотят подаваться в ВУЗ, потому обращают больше внимания на платные курсы или бесплатные материалы, учебники. Все их не перечислить, укажем лишь один из известных сервисов для начинающих под названием JavaRush.

Обучение азам программирования на сайте JavaRush

Весь курс основан на практических занятиях с подробным и понятным объяснением. Первые уроки доступны бесплатно, чтобы пользователь смог понять, стоит ли в дальнейшем уделять внимание подобному обучению. Ориентировка здесь идет на тех юзеров, кто никогда ранее не сталкивался с кодингом, а объяснения, иллюстрации и подача материала особенно заинтересует подростков. Однако есть у этого сервиса и минусы, среди которых очень сильно выделяется затянутость уроков и огромное количество повторов одного и того же материала, что в будущем начинает раздражать. Попробуйте ознакомиться и пройти уроки на JavaRush, воспользовавшись указанной ниже ссылкой.

Перейти к обучению на сайте JavaRush

Простые приложения можно создавать и на тех языках, которые изучить более легко. Например, сейчас достаточно быстро развивается Python, а на рынке появляется множество вакансий для Python-разработчиков. На скриншоте ниже вы видите практически полный фрагмент кода, описывающий известное приложение «Змейка».

Внешний вид исходного кода игры Змейка на языке Python

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

Простая игра Змейка, написанная на языке программирования Python

Что касается проектов AAA-класса, то Java и тем более Python значительно сдают свои позиции перед C и C++. Преимущественное большинство игровых движков написаны именно на этих ЯП. Они разрабатываются специально для крупных компаний или заимствуются у независимых производителей. Вдобавок к этому в огромных проектах нередко задействовано сразу несколько языков программирования, что задает надобность программистам изучить их все. Из этого выходит, что начать свое движение на пути разработки крупных проектов не так уж и просто. Для этого точно понадобится записаться на онлайн-курсы или поступать в высшее учебное заведение. Если вы заинтересовались этим делом, ознакомитесь с одним из самых известных курсов по созданию игр от GeekBrains по указанной ниже ссылке.

Ознакомиться с курсом обучения по разработке игр на GeekBrains

Во время изучения ЯП следует позаботиться и о среде разработки, где будет писаться код. Разобраться с этим поможет наш отдельный материал далее, где подробно рассказывается о самых популярных и качественных IDE для разных языков.

Подробнее: Выбираем среду программирования

Выше вы были ознакомлены с тремя разными методами создания компьютерных игр. Как видите, все они различаются по сложности и качестве получаемого продукта. Поэтому выбор остается за вами — сделать простой проект быстро, не используя навыков программирования, либо пройти большой и сложный курс обучения, получив возможность стать профессионалом в этом деле.

Мы рады, что смогли помочь Вам в решении проблемы.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

ДА НЕТ


Еще статьи по данной теме:


Поделиться статьей в социальных сетях:
6 комментария

моей первой игрой в гейммейкере был пакман. делал его по мануалу и вроде ничего сложного небыло. потом в тренде была игра флэппи бирдс и я пытался создать аналог на компьютере. нарисовал фон, трубы, пытался реализовать. вроде началобыло неплохое, но вот н смогдо конца довести проект, чтобы рандомно генерировались эти трубы.. в итоге забросил потом и вовсе потерял исходник.. теперь жалею об этом

Как сделать так, чтобы игру можно было ез гейм макера сделать? То есть я наклепал её и хочу другу показать. Гейм макера у него нет, а скачать не хочет.Как вообще запустить сделанное в гейм макеребез гейм макера?

Задайте вопрос или оставьте свое мнение

Примечание: если отправленный комментарий не появился на странице, значит он ушел на проверку и скоро будет опубликован. Пожалуйста, не дублируйте вопрос. Мы ответим Вам в ближайшее время.