Приложение для создания игр. Инструментарий игродела. Подбираем набор бесплатных программ для разработки игр

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

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

————————————-

Defold Game Engine

В этой статье я хочу познакомить вас с весьма молодым и бесплатным игровым движком для создания игр ААА класса - Defold Game Engine . Этот движок разработали Рагнар Свенссон и Кристиан Мюррэй в 2014 году и уже существует более 20 тыс. пользователей и больше 30 тыс. проектов на этом движке.

Defold работает на MacOS/OS х, Windows и Linux (32 бит и 64 бит). С его помощью можно создать игру для 6 известных платформ iOS, Android ,HTML5, а также для MacOS/OS х, Windows и Linux.

Defold - представляет собой полноценный 3D — движок, однако набор инструментов сделан для 2D, так что для создания 3D игр придется делать много тяжелой работы самостоятельно. Улучшение инструментов для создания 3D, разработчики планирую в ближайшем будущем. Все приложения и игровая логика в Defold осуществляется с помощью скриптов на языке lua. Lua - это легкий, динамичный язык, который является быстрым и очень мощным.

————————————-

Amazon Lumberyard

На игровом движке lumberyard можно создавать высококачественные игры класса ААА для PC, Xbox One и PlayStation 4, в скором будущем анонсирована поддержка устройств iOS и Android, с глубокой интеграцией в Amazon Web Services и привлечением фанатов в сервисе Twitch, так же движок Lumberyard можно будет использовать и в создании мультиплатформенных игр, так как он теперь имеет собственный сетевой движок.

Lumberyard создан не «с нуля» он основан на коде движка CryEngine, в середине лета 2015 года компания Amazon приобрела широкую лицензию на движок CryEngine, но как утверждают разработчики в систему было заложено множество нововведений и возможностей такие как: инструмент для создания растений, инструмент для создания скелетной анимации, редактор частиц, шейдеры на основе физики, модульные геммы, облегчающие работу с природными эффектами и многое другое.

————————————-

CryEngine 5

CryEngine - игровой движок, созданный немецкой частной компанией Crytek в 2002 году и первоначально используемый в шутере от первого лица Far Cry . В середине марта компания предоставила миру новый, пятый CryEngine . Движок абсолютно бесплатен и воспользоваться им, может любой желающий, с помощью которогоможно создать игру, различного жанра и различной сложности.

  1. CryEngine Sandbox: редактор игры в реальном времени, предлагающий обратную связь «Что Вы видите, то Вы и ИГРАЕТЕ».
  2. Рендерер: интегрированные открытые (англ. outdoor ) и закрытые (англ. indoor ) локации без швов. Также рендерер поддерживает OpenGL и DirectX 8/9, Xbox с использованием последних аппаратных особенностей, PS2 и GameCube, а также Xbox 360.
  3. Физическая система: поддерживает инверсную кинематику персонажей, транспортные средства, твёрдые тела, жидкость, тряпичные куклы (англ. rag doll ), имитацию ткани и эффекты мягкого тела. Система объединена с игрой и инструментами.
  4. Инверсная кинематика персонажей и смешанная анимация: позволяет модели иметь множественные анимации для лучшей реалистичности.
  5. Система игрового искусственного интеллекта: включает командный интеллект и интеллект, определяемый скриптами. Возможность создания особенных врагов и их поведения, не касаясь кода C++.
  6. Интерактивная динамическая система музыки: музыкальные дорожки отвечают действиям игрока и ситуации и предлагают качество CD-диска с полным 5.1 звуковым окружением.

————————————-

Construct Classic

Construct Classic - небольшая программа, основной функцией которой является создание игр, 2d-анимационных роликов и мультфильмов. Данный конструктор создан по принципу WYSIWYG. Это значит, что вам не предстоит для создания собственного анимационного ролика подолгу сидеть за учебниками программирования. Все гораздо проще - добавили какой-то объект, включили для него анимацию и он начинает двигаться.

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

Основные возможности Construct Classic:

  • Система редактирования событий и реакции на них посредством drag-n-drop.
  • Возможность использования огромного количества плагинов.
  • Программа создана на python, но дорабатывать ее можно на C++.
  • Есть возможность подключать пиксельные шейдеры на HLSL.
  • К программе можно подключать готовые исходные коды игр и приложений в формате САР.

Изменения в последней версии

  • Физика: Исправлен баг версии r1, когда физические объекты созданные после старта, могли улететь за экран на высокой скорости.
  • Поведение: Исправлен баг. когда вы не могли спрыгнуть с платформы. Вызван исправлением бага «приземления в воздухе» в версии r1. Оба исправления теперь работают.
  • Установщик: Исправлена проблема с установкой в версии r1.

————————————-

GameMaker: Studio

GameMaker: Studio - бесплатная версия популярного профессионального набора инструментов для создания небольших мобильных мультиплатформенных игр. Благодаря удобному интуитивно-понятному интерфейсу программы разработчики игр могут разрабатывать свои творения более быстро и эффективно. Все это потому, что им не придется заниматься ручным кодингом, затрачивая на этот процесс уйму времени.

В дистрибутиве GameMaker: Studio содержатся готовые шаблоны спрайтов, комнат и отдельных объектов. Все их можно несколькими движениями мыши перетаскивать на будущее игровое поле, указывая при этом условия их взаимодействия между собой.

Основные возможности GameMaker: Studio:

  • Кроссоплатформенность. Без особых трудностей можно создавать игры для Windows, Android, Linux.
  • Удобное рабочее окно программы, где нет ничего лишнего.
  • Возможность создания небольших двухмерных игр за считанные часы.
  • Готовые приложения можно интегрировать со Steam.
  • К приложению можно подключать готовые шаблоны, пошагово менять пути, объекты, звуки, фоны, скрипты и делать из этого всего интересные и необычные игры.
  • GameMaker классно подойдет для разработки игр и приложений на мобильных платформах.

————————————-

Game Editor

Game Editor - бесплатный конструктор для создания несложных двухмерных игр для операционных систем Windows, Mac, Linux, IOS, Android. Создаваемые игры представляет собой набор игровых объектов, каждому из которых задается реакция на определенное событие, что определяет их поведение в игре.

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

Основные возможности Game Editor:

  • Простой и легкий для восприятия интерфейс.
  • Готовое приложение можно экспортировать на Windows, Linux, Android, IOS.
  • Созданную игру можно сразу протестировать, в любой момент остановить ее и снова начать редактировать.
  • Возможность использования графических файлов в форматах JPEG, GIF, PNG, BMP, PCX, TGA, XPM, XCF и TIF.
  • Возможность использования аудио файлов в форматах Ogg Vordis, MID, MOD, S3M, IT и ХМ.

————————————-

3D Rad

3D Rad - бесплатная программа для простого создания (без использования кода) различных ЗD-игр, интерактивных приложений и физических симуляций. Создание приложений в 3D Rad основывается на сочетании в различных комбинациях компонентов (объектов) и настройки взаимодействия между ними. Физика базируется на учете взаимодействия между объектами.

В 3D Rad есть функция импорта моделей в создаваемый проект, большое количество примеров и образцов трехмерных объектов, а также возможность добавления звуковых эффектов в формате WAV или OGG. Работы сделаны с помощью 3D Rad можно распространять в виде отдельных программ или веб-приложений.

Основные возможности 3D Rad:

  • Создание качественных ЗD-игр.
  • Реалистичная физика взаимодействия объектов.
  • Возможность импорта моделей.
  • Качественная обработка графики.
  • Возможность применения искусственного интеллекта.
  • Возможность использования мультиплеера.
  • Высококачественные аудиоэффекты и музыка
  • Возможность встраивания игр на веб-страницы.

————————————-

Unreal Development Kit

Unreal Development Kit (UDK) - мощный бесплатный движок и среда разработки с огромными возможностями по созданию игр для большого количества платформ и операционных систем. Он содержит все инструменты для создания ЗD-игр, продвинутых визуализаций и детальных симуляций.

В состав Unreal Development Kit входит полностью интегрированная среда редактирования Unreal Editor, а также наборы готовых скриптов, спрайтов, текстур и звуков. Их можно комбинировать между собой, прописывать условия их взаимодействия, создавая при этом новые игры.

Основные возможности Unreal Development Kit:

  • Возможность создания игр для Windows, Mac OS, Xbox, PlayStation 3, Wii, Android.
  • Простой и удобный высокоуровневый язык программирования UnrealScript.
  • Реалистический свет, тени и эффекты.
  • Продвинутая физика поведения и взаимодействия предметов.
  • Поддержка LAN и прямого подключения к IP.
  • Возможность тестирования создаваемого приложения на любом этапе его проектирования.
  • Многопоточный рендеринг создаваемых игр.
  • Готовые шаблоны игр.

————————————-

NeoAxis 3D Engine

NeoAxis 3D Engine Non-Commercial SDK - бесплатная версия мощного качественного приложения для создания трехмерных игр. По сути, оно является готовым движком со своими моделями, физикой, графикой и шаблонами. На основе NeoAxis можно делать как различные трехмерные одиночные модели, так и сложную визуализацию программного обеспечения, или даже создавать полнофункциональные 3D игры. Все зависит от таланта и целей разработчика.

NeoAxis 3D Engine состоит из целого набора необходимых инструментов для реализации любой задумки разработчика. В нем в готовом виде уже есть 24 полноценные карты, некоторые из которых уже являют собой неплохие шутеры, где вам нужно стрелять по пришельцам, бегать по темным коридорам в поисках выхода и воевать с монстрами в деревне.

Основные возможности NeoAxis 3D Engine:

  • Установленная программа состоит из ряда отдельных приложений - конфигуратора, демонстрационных возможностей программы, редактора карт и редактора основного кода.
  • Приложения, разработанные с помощью среды NeoAxis, могут быть запущены на Windows и Mac OS X
  • Весь спектр возможностей встроенного NVIDIA PhysX. Поддержка регдолл и транспортных средств.
  • Встроенная поддержка синхронизации по LAN и интернет.
  • Приложение поддерживает огромный перечень языков, английский, украинский, русский есть в наличии.
  • Редактор построен очень удобно - все ресурсы программы четко структурированы по отдельным тематическим папкам.
  • Программа состоит из готовых наборов объектов, карт и моделей, поэтому разобраться в ней сможет любой школьник.

————————————-

Game Maker Lite

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

Game Maker отличается тем, что для создания игр в нем не нужно знания каких-либо языков программирования, хотя возможности использования скриптов также присутствует.

Основные возможности Game Maker:

  • Простой и интуитивно понятный интерфейс программы.
  • Встроенные уроки по созданию первых игр.
  • Программирование с помощью drag-n-drop.
  • Бесплатная коллекция бесплатных изображений и звуков для игр.
  • Возможность создания простых ЗD-игр.
  • Встроенный язык программирования Game Maker Language (GML), позволяющий разрабатывать более функциональные и интересные игры.

Внимание:

Бесплатная версия Game Maker ограниченна в функциональности, а при запуске созданных в ней игр показывается логотип программы.

————————————-

Unity 3D

Unity 3D - мощная среда разработки, которая позволяет легко создать игру. Созданные с помощью Unity 3D игры и приложения работают в операционных системах Windows, OS X, Android. iOS, Linux, Blackberry а также на игровых приставках Wii, PlayStation 3 и Xbox 360. Приложения, созданные с помощью Unity, поддерживают DirectX и OpenGL.

С помощью Unity 3D можно создавать видеоигры любых жанров. Разработчик может легко импортировать текстуры, модели и звуки. Для текстур поддерживаются все популярные форматы изображений. Создание скриптов осуществляется, в основном, с помощью JavaScript, хотя коды можно писать и на С#.

Основные возможности Unity 3D:

  • Широкие возможности настройки.
  • Доступный и понятный интерфейс.
  • Сценарии на С#. JavaScript и Boo.
  • Полная интеграция игрового движка со средой разработки.
  • Поддержка перетягивания объектов в редакторе.
  • Поддержка импорта большого количества форматов.
  • Встроенная поддержка сети.
  • Поддержка физики ткани (PhysX Cloth).
  • Возможность дополнения функционала.
  • Инструменты для совместной разработки.
  • Blender - бесплатный пакет для создания трехмерной (3D) компьютерной графики, содержащий средства моделирования, анимации, рендеринга, постобработки видео, а также создания игр. Функций Blender вполне достаточно для работы как обычным пользователям, так и профессионалам. В программе есть все основные инструменты, используемые в профессиональных ЗD-редакторах.

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

    Основные возможности Blender:

    • Поддержка разнообразных геометрических примитивов (включая полигональные модели, систему быстрого моделирования в режиме SubSurf, кривые Безье, поверхности NURBS, метасферы, скульптурное моделирование и векторные шрифты).
    • Универсальные встроенные механизмы рендеринга и интеграция с внешним рендерером YafRay.
    • Инструменты анимации, среди которых инверсная кинематика, скелетная анимация и сеточная деформация, анимация по ключевым кадрам, нелинейная анимация, редактирование весовых коэффициентов вершин, ограничители, динамика мягких тел, динамика твердых тел, система волос на основе частиц и система частиц с поддержкой коллизий
    • Python используется как средство создания инструментов и прототипов, системы логики в играх, как средство импорта и экспорта файлов, автоматизации задач.
    • Базовые функции нелинейного редактирования и комбинирования видео.
    • Game Blender - подпроект Blender, предоставляющий интерактивные функции, такие как определение коллизий, движок динамики и программируемая логика.

    ————————————-

    Stencyl

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

    Пользователям, которые работали в Photoshop, понравится графический редактор Scene Designer, предназначенный для рисования игровых миров. Его инструментарий поразительно напоминает меню популярного фоторедактора.

    ————————————-

    CraftStudio

    Добавляйте и изменяйте объекты в 3D пространстве, прописывайте сценарии и правила, рисуйте анимации и эффекты. Авторы CraftStudio продумали всё, чтобы создание игр на PC с нуля в реальном времени было понятным и увлекательным. При этом все инструменты для моделирования и анимаций встроены в программу и понятно обозначены. То же самое можно сказать и о визуальном редакторе сценариев. Что самое интересное — вы не обнаружите проблем с совместимостью форматов или их конвертацией. Для более продвинутых пользователей предусмотрен текстовый редактор Lua Scripting.

Вряд ли найдётся человек, который хотя бы раз в жизни не играл хоть в одну компьютерную игру, неважно, на ноутбуке или мобильном устройстве. Ну а кто из вас, дорогой читатель нашего блога, не мечтал создать свою игру и, уж если не стать миллионером благодаря своему проекту, то прославиться как минимум среди своих друзей?

Но как создать игру на Андроид с нуля, не обладая специальными знаниями и не зная даже основ программирования? Оказывается, попробовать себя в роли разработчика игр не такая сложная задача. Это и будет темой нашего сегодняшнего материала.

  1. Идея или сценарий.
  2. Желание и терпение.
  3. Конструктор игр.

И если с первыми двумя составляющими успеха более-менее всё понятно, то на третьей составляющей нужно остановиться подробнее.

Что такое Конструктор игр

Речь идёт о программе, существенно упрощающей разработку игр, делая её доступной для людей, не обладающих навыками программирования. В конструкторе игр объединены интегрированная среда разработки, игровой движок и редактор уровней, который работает как визуальный редактор (WYSIWYG – англ. аббревиатура «что видишь, то и получишь»).

Некоторые конструкторы могут ограничиваться жанром (к примеру, RPG, аркады, квесты). Другие, предоставляя возможность конструировать игры разных жанров, в то же время ограничивают фантазию начинающего разработчика 2D-играми.

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

Как выбрать нужный конструктор

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

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

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

Топ 5 лучших конструкторов игр

Construct 2

Это приложение неизменно занимает первые строчки в рейтингах конструкторов игр. С помощью Construct 2 можно создавать двухмерные игры практически любых жанров для различных платформ, в том числе и для Андроид, а также анимационные игры, ориентированные на браузеры, поддерживающие HTML5.

С учётом огромного количества вспомогательных инструментов, программу вполне смогут осилить даже начинающие юзеры.

Для освоения работы с Construct 2 нет необходимости покупать лицензию, в бесплатной Free-версии предложен вполне достаточный инструментарий и возможность экспорта готового проекта на некоторые платформы. Однако, кодирование готового продукта на мобильные платформы и доступ к полному объёму функционала даст за 129 долларов Personal-лицензия. Если же ваше мастерство в создании игр достигло апогея, и вы уже стали получать доход от своего проекта более 5 тыс.долл., придётся раскошелиться на Business-вариант, который обойдётся в 429 долл.

А теперь, посмотрите несколько практических видеоуроков по созданию игровых приложений с помощью Construct 2:

Clickteam Fusion

Clickteam Fusion – ещё один образчик отличного полноценного игрового конструктора, помогающего даже новичку создать полноценную игру. Программа предоставляет возможность экспортировать созданные приложения совершенно бесплатно в формат HTML5, а это значит, что будет возможность публиковать браузерные игры и кроме того, конвертировать их для публикации в различных мобильных маркетах, например, Google play.

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

Платная Developer-версия программы недоступна для жителей РФ, но её лицензионный диск можно будет заказать с того же Amazon, облегчив личный бюджет в среднем на 100 долларов. Возможна русификация меню через сторонний русификатор.

Как работать с приложением, смотрим специальный видео курс:

Stencyl

Stencyl – ещё один отличный инструмент, позволяющий осуществлять разработку простых компьютерных 2D-игр без специальных знаний кодов, а также языков программирования для всех популярных платформ. Здесь предстоит работа со сценариями и схемами, которые представлены в виде блоков, а перетаскивать объекты или характеристики можно мышкой, что очень удобно.

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

Наличие отличного графического редактора Scene Designer даёт возможность пользователю применить свою фантазию для рисования игровых миров.

Оптимальный набор функций поможет создать качественные игры разных жанров, но наиболее тайловая (плиточная) графика Stencyl будет актуальна для «стрелялок» или «бродилок».

Программа распространяется на бесплатной основе, но экспорт в десктопные форматы требует подписки, которая будет стоить 99$ на год, а лицензия для мобильных игр — 199 долл. В год.

Смотрим ускоренный курс по работе со Stencyl:

Game Maker

Программа существует в платной и бесплатной версии. Бюджетный вариант позволяет создавать добротные двухмерные игры под десктоп. В то время, как платная версия даёт возможность написать довольно «навороченные» 3D-игрушки для Виндовс, iOS и Андроид. Нас же пока интересует бесплатная возможность научиться реализовывать себя в игровой индустрии, а Game Maker – тот самый вариант, который позволит создавать игры с собственным сценарием без ограничений в выборе жанра.

Программа предлагает выбор готовых шаблонов локаций, объектов, а также, персонажей, звуков и фонов. Так что, вся творческая работа сводится к перетаскиванию в рабочую зону выбранные элементы и выбору условий – местонахождение и взаимодействие с другими объектами. Хоть знание языка программирования и не понадобится, но пользователи, которые «в теме» смогут использовать GML, чем-то схожим с JS и C++.

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

Кого заинтересовала эта программа, предлагаем посмотреть обучающее видео:

Unity 3D

Unity 3D – пожалуй, лучшее, что можно предложить, для создания качественного трёхмерного проекта. В программу интегрированы полностью готовые модели, а также текстуры и скрипты. Кроме того, есть возможность добавлять и собственный контент – звук, изображения и видеозаписи.

Игры, созданные с помощью Unity совместимы со всеми востребованными платформами от мобильных устройств на iOS или Android до SMART TV телевизионных приёмников.

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

Все игровые действия и поведение персонажей базируются на добротном физическом ядре PhysX. Каждый объект, созданный в этом игровом конструкторе, представляет собой определённое сочетание событий и скриптов, управляющимися разработчиком самостоятельно.

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

Серия занятий по созданию игр с помощью Unity 3D:

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

В этой стать пойдет речь о бесплатных программах для создания 2D и 3D игр. Данная статья нацелена не только на начинающих, но и подойдет уже более опытным.

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

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

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

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

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

Немного предыстории.

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

Таким образом появились библиотеки, фреймворки а затем и полноценные движки.

5 Место

Stencyl – конструктор игр, который поможет создать вам игры разных жанров в формате 2D , для таких платформ как Android , IOS , Windows а так же игры в формате Flash и HTML 5.

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

Простота и широкий спектр простых инструментов никак не уменьшает возможности данного конструктора для работы профессионалов. Движок дает возможность варианта написания кода на языке ActionScript 3.0.

С помощью данного движка можно создавать онлайн игры, так называемые флеш игры, в форматах Flash и HTML 5 которые можно запускать в браузере и размещать на вебсайтах.

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

В этом конструкторе стоит отметить наличие магазина, в котором можно загрузить уже готовые сценарии, графику и многое другое.

Примером работы движка является множество онлайн флейш игр, которых полным-полно в сети интернет.

· Простота работы.

· Большое количество видео уроков и инструкций, а также поддержка на официальном сайте.

· Конструктор является полностью бесплатным.

· Возможность коллективной работы над игрой.

· Возможность применения собственных скриптов на языке ActionScript 3.0.

· Разработка игр для разных платформ.

· Англоязычный интерфейс.

· Не сразу понятный интерфейс.

4 Место

Kodu Game Lab – это визуальный редактор позволяющих создавать трехмерные игры без каких любо знаний языков программирования. Этот движок дает возможность создавать игровые миры, карты и размещать в них персонажей, для которых потом можно создавать задания или сценарии.

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

Kodu Game Lab имеет много возможностей и на её базе можно создавать любой жанр игр. Из-за того, что интерфейс программы очень простой любой желающий может создать самую примитивную игру со своим сценарием и миром.

· Большое количество инструментов.

· Простота работы.

· Создание абсолютно любого жанра игр.

· Русскоязычный интерфейс.

· Не требуется наличие мощного компьютера.

· Плохая оптимизация.

· Низкие возможности создания игр.

· Невозможность создания дистрибутива для дальнейшей установки на другом компьютере.

· Невозможность создания своих текстур и добавления своих материалов.

3 Место

Unity – это мощный движок для создания игр. Этот движок является кроссплатформенным, позволяет создавать игры под популярные ОС, такие как Windows , MacOS , Linux , Android , IOS , а также для игровых консолей Xbox , Wii .

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

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

В бесплатной версии Unity достаточно инструментов и возможностей для начинающих в этой сфере. Если вы уже бывалый game creator тогда скорее всего вам не хватит набора инструментов, которые присутствуют в бесплатной версии. Для того, чтобы более тонко настроить графику создаваемых вами игр, советую воспользоваться версией Pro .

Основные языки программирования, которые вам нужны для создания простых игр это C# и JavaScript.

Стоит заметить наличие магазина скинов, текстур и много другого, а также возможность использовать собственно созданные материалы в движке Unity .

Нужно отметить что большинство популярных игр для ПК и Смартфонов были созданы именно на этом движке, поэтому вы должны понимать на сколько это много функциональная и мощная платформа для создания игр.

Что бы понять все возможности данного движка советую ознакомиться с популярными видео играми, которые были полностью созданы на Unity – это Cities Skylines, Hearthstone: Heroes of Warcraft, Rust, Firewatch, Superhot, Kerbal Space Program.

· Ориентировочно-понятный интерфейс.

· Создание абсолютно любого жанра игр.

· Кроссплатформенность.

· Оптимизация.

· Большое количество видео уроков и инструкций.

· Движок является полностью бесплатный.

· Не требуется наличие мощного компьютера.

· Не подходит для начинающих.

· Закрытый исходный код.

· Устаревшая графика.

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

2 Место

Unreal Engine – является довольно мощным движком для создания игр. Эта платформа даёт возможность создания 2D и 3D игр. Неотъемлемой частью таких современных и мощных движков является кроссплатформенность, и в Unreal Engine она довольно хорошо реализована. Можно создавать игр для всех популярных платформ как для смартфонов (Android , IOS ), так и для компьютеров под управлением (Windows , MacOS ).

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

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

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

Хочу заметить, что, будучи не опытным в сфере создания игр, а также если вы не знаете основ программирования на С++, тогда не стоит начинать знакомство с разработкой игр с этого движка. Так как Unreal Engine является профессиональным инструментом для создания игр.

Что бы понять всю силу и возможности движка, можете просмотреть уже созданные на нем популярные проекты, такие как Gears of War 4, We Happy Few, Final Fantasy VII, Dead Island 2, Taken 7 и еще длинный список примеров возможностей.

· Огромное количество инструментов.

· Создание абсолютно любого жанра игр.

· Кроссплатформенность.

· Оптимизация.

· Большое количество видео уроков и инструкций.

· Собственные форумы, обсуждения в разработке игр.

· Движок является полностью бесплатный.

· Встроенный магазин дополнений.

· Возможность создания мульти плеера в играх.

· Высокий уровень графики.

· Открытый код

· Не подходит для начинающих.

· Сложный интерфейс.

1 Место

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

CryEngine – мощный движок для создания современных игр в любом жанре под все возможные платформы. Он так же является кроссплатформенным и позволяет создать игры под ОС Windows , MacOS , Linux , Android , IOS .

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

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

Вот некоторые проекты, реализованные на CryEngine: CrySis, Star Citizen, Sniper: Ghost Warrior 3, Ryse: Son of Rome, Warface, первая часть FarCry и многие другие.

· Огромное количество инструментов.

· Создание абсолютно любого жанра игр.

· Кроссплатформенность.

· Оптимизация.

· Большое количество видео уроков и инструкций.

· Собственные форумы, обсуждения в разработке игр.

· Движок является полностью бесплатный.

· Встроенный магазин дополнений.

· Возможность создания мульти плеера в играх.

· Высокий уровень графики.

· Почти не ограниченные возможности в создании игр.

· Открытый код

· Не подходит для начинающих.

· Довольно требователен к компьютеру.

· Сложный интерфейс.

Заключение

В статье описаны самые популярные и, по моему мнению, лучше движки и конструкторы для создания как примитивных 2D игр, так и для разработки самых продвинутых новых видео игр.

Если вы хотите начать разрабатывать игры, но не знаете никаких языков программирования, тогда вам стоит подать свое внимание на 5-е и 4-е место. Такие движки помогут вам создать простенькие игры без знаний языков программирования и составления скриптов. Для создания своей игры вам хватит обычных визуальных редакторов этих движков

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

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

Как разработать RPG-игру за неделю с нуля и без бюджета. Часть I.

RPG за неделю? С нуля? Это вообще возможно?
Я рискнул, и я сделал это.

В интернете полно информационных ресурсов, доступных мелким, независимым (indi) разработчикам игр. На одном таком общественном форуме, в процессе спора, я имел неосторожность ляпнуть, что, если мне дадут неделю времени, компьютер со свежеустановленной Windows, и хорошее соединение с Интернет, я смогу создать достойную игру, не потратив на это ни цента. Нет, она конечно же не сможет конкурировать с Halo 2 или чем-то такого же уровня(если бы я мог создать такую игру за неделю, я бы давно бросил работу), но она будет достаточно интересной и играбельной.

Tom Bampton, автор ежемесячных обзоров игр в номинации «Игра на день» (www.gameinaday.com), сказал: "Дерзай!" Затем он добавил дополнительное условие - я должен сделать это, не используя существующие игровые движки. Мне можно использовать только основные библиотеки / API.

Сначала я отказался от этой идеи. У меня не было лишнего времени, чтобы на неделю отстранится от разработки текущего игрового проекта на работе. Но потом я подумал: да черт с ним, ведь что такое неделя? В типичной компании, например в Е.А., рабочая неделя составляет 40 часов. Так почему бы не сделать игру не за календарную неделю, а за 40 чистых часов? Это уже реальнее, - но я не хотел создавать очередной тетрис или арканоид. А как насчет ролевой игры - одного из самых сложных игровых жанров? Это возможно?

Я знал, что это будет чрезвычайно трудно. Но я принял вызов.

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

Так вот, как я создал игру в течение одной недели с нуля, и без бюджета. Если вам лень читать, и вы хотите побыстрее заглянуть в конец повествования, чтобы узнать, как выглядит конечный продукт, посмотреть все его баги, вы можете скачать версию игры для Windows здесь: http://www.rampantgames.com/hackenslash.html

ПЛАНИРОВАНИЕ
Цель
Создать олдскульную RPG в стиле старых игр начала 80-х, с видом "сверху вниз", например как The Temple of Apshai, Ultima III, и Telengard. Игрок будет двигаться через комнаты в типичном подземелье, сражаясь с различными монстрами с помощью «меча и магии». Постепенно он будет совершенствовать свои возможности получая опыт, повышая уровень, приобретая магическое снаряжение.

Однако, игра будет состоять не только из самого ведение боевых действий. Игрок также будет иметь возможность прокрасться мимо монстров, или вступить с ними в переговоры. Будут запертые двери и сундуки, и уникальные особенности подземелья, имеющие неожиданные эффекты. В игре не будет длинных описаний или диалогов, - в основном это будет типичный hack & slash. Вы будете двигаться по пути, пока не станете достаточно сильным, чтобы встретится лицом к лицу с финальным боссом, выполнить квест, и благополучно вернуться домой (в вашу стартовую комнату).

Правила разработки

Правило № 1: Время разработки ограничено одной неделей (включающей 40 часов)
На разработку игры должно быть потрачено в сумме не более 40 часов. Они будут включать время, потраченное на непосредственную работу над игрой и на ее обдумывание. Перерывы в разработке больше, чем десять минут, не будут учитываться. Это будет "идеальная" рабочая неделя из 40 высокопроизводительных часов.

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

Правило № 2: Использовать только бесплатные инструменты
За исключением программного обеспечения, которое поставляется с установкой Windows, используется только свободный софт, по возможности с открытым исходным кодом. Смысл этого - показать, что не нужны дорогие (или пусть даже дешевые) инструменты для разработки игры. На оборудование, такое как сканер, микрофон и цифровая фотокамера, данное правило не действует - если у вас их нет, будем считать, что их можно у кого-то одолжить.

Правило № 3: Нет движкам, только стандартные библиотеки / API
Игра должна быть создана "с нуля" без использования существующих игровых движков. Никакого обмана, и создания игры или каких-то ее частей с помощью конструкторов игр или использования подобного программного обеспечения.

Инструменты
Код:

Python 2,3 (http://www.python.org/)
PythonWin
PyGame (http://www.pygame.org/)
Py2exe – чтобы собрать что получится в исполняемый файл для распространения. (http://starship.python.net/crew/theller/py2exe/)

Gimp 2,0 (http://gimp-win.sourceforge.net/)
MS Paint (тот что идет с Windows) - для вставки скриншотов, захваченных клавишей PrintScreen (GIMP почему-то отказался это делать)
Бесплатные текстуры были взяты (http://www.textureartist.net/textures/index.htm) и (http://www.mayang.com/textures/)

Audacity (http://audacity.sourceforge.net/) плюс мой микрофон или бесплатные.

Расписание (План) работ
Расписания составляют, чтобы их потом нарушать, но все же они нужны, чтобы контролировать прогресс и строки, и вносить коррективы по мере необходимости.

Час 1-10: Базовая архитектура
Проектирование движка и основных компонентов. Получить отображения мира на экране. Я должен реализовать возможность перемещать тестового игрока по всему миру, и смотреть на вещи, а затем превратить то, что получится, в игровой редактор.

Час 11-20: Возможности игрока
Реализация всех основных возможностей для игрока - перемещение, атака, открытие дверей, смерть, подбор вещей и использование инвентаря. Создать каркас представления всех объектов в окружающей среде, для тестирования возможностей игрока во взаимодействии с миром.

Час 21-30: Оживление мира
Добавить искусственный интеллект, игровые события, ловушки, спецэффекты. К концу этого периода я должен иметь достаточно полное техно-демо, включающее все основные особенности игры.

Час 31-40: Добавление контента и правил
Получить из техно-демки полноценную игру. Добавить все дополнительное содержимое. Добиться завершенности и баланса игровой механики. Отшлифовать все, на что хватит времени, добавить спецэффекты, анимацию и т.д.

После 40 часов: Тестирование и релиз игры
Протестировать, и устранить найденные ошибки (не добавляя новые возможности!) Собрать все в кучу, и выложить в интернете. Завершить документацию.

Дневник разработчика Hackenslash: Игра за неделю

Час 1 – Дикое проектирование и базовые классы
Этот час был проведен за созданием некоторых базовых классов для игры - и использования их в дальнейшем проектировании. Мир будет представлен в виде последовательности комнат, соединенных порталом. Все в мире базируется на комнатах, подобно тому, как это было в старых адвенчурах или MUDах. Большинство объектов в игре представлены как " GameObject ", который имеет позицию и содержимое (в том числе может содержать и другие объекты - карта может содержать комнаты, в комнате может быть сундук, в сундуке - меч... и, я думаю, меч может содержать несколько комнат, но мы так делать не будем.)

Я создаю объекты creature (существо) и player (Игрок)
Я генерирую набор атрибутов для существ, и внедряю их в класс. Видимо я задрот, который играет слишком много в РПГ игры. Я пока еще не знаю точно, как будет выглядеть и работать игровая механика.
Я делаю объект room (комната), наследуемый от GameObject. У комнаты есть ширина, высота, и стены - и на текущий момент больше ничего.

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

Час 2 - PyGame 101
Цель этого часа - инициализация PyGame, ну и начать хоть что-нибудь рисовать на экране. На самом деле, я провожу большую часть времени за чтением документации PyGame, пытаясь выяснить что там и как, поскольку у меня почти нет опыта использования PyGame или SDL.

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

Час 3 - Если бы стены имели уши, я б их сильно отругал.
Цель этой часа – обозначить контуры комнаты стенами, и отобразить это на все еще черном экране. Чтобы сделать это, мне нужна комната, и мне нужна графика. Приходится много сидеть над GIMPом, правя загруженные из интернета текстуры, так чтобы они превратились в подходящие тайлы. Я создаю класс менеджера текстур. И я заполняю структуру образца комнаты. Я также потратил немного больше времени, просматривая документацию PyGame, чтобы найти что-нибудь еще, что можно использовать, дабы сделать работу легче.

Час прошел. А у меня все тот же черный экран. Стен как не было, так и нет.

Часа 4 – В гостинице появился свободный номер
После борьбы с некоторыми синтаксическими ошибками, я, наконец-то смог добиться появления стен на экране. Правда отображаются они неправильно, находятся не в указанном месте, да еще и со щелями между сегментами. Это ужасно. Но немного настройки и правки, и я получил на экране что-то похожее на комнату, размером 10 на 10 квадратов.

Не имея подробного плана проекта, действительно довольно легко запутаться, когда выполнив определенную работу Вы задаетесь вопросом "Что дальше?" Я решил, что если рисунок одной комнаты хорошо, то нарисовать две – вдвойне лучше.

Для хранения созданных комнат я создал файл "minidungeon".
Я начать добавлять логику порталов "portals" - отверстий в стенах, для перехода в другие комнаты (и предоставляющих всю информацию о смещении, необходимую для правильного отображения смежных комнат).

Час 5 - Hackenslash получает больше комнат

Я изменил название окна на "Hackenslash!". Просто потому, что это круто.
Я создал карту объектов для хранения комнат, и класс MapMaster содержащий несколько карт.
Я добавил вторую комнату и подключил к первой через портал.
Соседние комнаты подключены к текущей через порталы, и теперь отображаются на экране.
Я исправил некоторые ошибки отсечения, чтобы правильно отображались стены, частично выходящие за пределы окна.

Час 6 - за который мы улучшаем скил рисования

Добавил класс дверей, а также настроил карты для размещения двери (дверь должна быть общей для двух комнат). (Правка: Жаль, что я никогда это так и не использовал!)
Я создал еще 3 тайла стен, объединил их в одно изображение.
Графический вид стен изменяется в зависимости от типа.
Я делаю простую графику для вида сверху вниз.

Часы 7-8 – Вращения и восклицания!

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

Часы 9-11 – Елементы - бррр!

И вот опять, мне нужно решить вопрос "Что дальше?".

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

Я решил, что элементы могут занимать больше, чем один тайл, и могут быть повернуты на любой градус. (Правка: В ретроспективе, очень тупое решение - я провел слишком много времени на его реализацию, но оно оказалось почти бесполезным.)

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

Часы 12 - 13 - Нам нужен Лут!

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

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

Час 14 - Ковры

Я сильно отстаю от графика, что же мне делать?
Черный фон кажется слишком уродливым, поэтому я замостил полы внутри комнаты коврами - отдельными тайлами.

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

Зато уровень теперь выглядит круто. Ну, по крайней мере круче, чем черный.

Часы 15-16 - Click! Click!

Я занялся управлением мышью и обработкой событий.
Добавил управление персонажем мышью. Движение пока происходит рывками, нет плавной прокрутки уровня.
Игрок может выйти за пределы комнаты, отсутствует проверка столкновений.
Я исправил несколько ошибок.
Помучил GIMP и создал красивые лестницы.
.
На разработку уже затрачено почти 17 часов, так что я начинаю немного нервничать. Я прошел 2/5 пути создания игры, - закончился второй "рабочий день" разработки. То, что у меня уже сделано впечатляет, но я понимаю, что сделать осталось много больше. У меня есть еще четыре часа, чтобы закончить основные возможности игрока, и вложится в график. Это будет трудно... но я все равно не жалею, что потратил лишнее время на рисование графики!

Час 17 – Плавно перемещаемся, пока не стукнемся лбом о стену

Большинство времени потрачено на доводку графики и исправление ошибок.
Добавлено обнаружения столкновений и плавная прокрутка, при движении игрока.
Игрок теперь может делать несколько шагов (оборотов) в ответ на действие мыши.

Час 18 - Переступаем пороги

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

Час 19 - Лестница в небо, Адское меню

Мой брат вызвался сделать музыку для игры. Он сделал музыку для Void War, и получилось довольно хорошо. Это напомнило мне, что нужно сделать воспроизведение звука (и музыки). Вроде бы в PyGame это сделать довольно просто, поэтому оно не должно занять слишком много времени. (Правка:. Я так и не нашел для этого времени, к сожалению в Hackenslash вы не услышите ни единого звука.)

Моя следующая цель состоит в обработке взаимодействия с существами и предметами. Мне очень нравится, как это сделано в The Sims и Neverwinter Nights, когда вы хотите взаимодействовать с игровым объектом, появляется контекстное меню. Я планирую реализовать что-то похожее.

Учу лестницы перемещать игрока в новую комнату.
Я немного проштудировал Интернет и документацию PyGame, ища, нет ли где открытых исходных кодов подобного меню на PyGame. И не нашел ничего.
Я начал делать собственное меню.

Часы 20 - 21 - Что там с меню?

Я продолжаю работать над меню. Меню может быть легко подключено к объекту, точнее объект как бы порождает меню, что позволило легко реализовать обратную связь для обработки выбора игрока.
Я начал работать над меню вещей. Оно уже появляется в нужном месте, и позволяет выбирать какой-нибудь пункт, но при нажатии пока ничего не делает, работает только кнопка закрытия меню.

Час 22 – Заснуть в процессе

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

Я замечаю, что уже поздно, и что вышел далеко за пределы отведенного на эту работу часа. Если бы я не обращал внимания на общее время разработки – просидел бы, наверное, до утра. Но поскольку я ограничен во времени, потраченный практически впустую час - действительно плохие новости. Интересно, как сдвигаются приоритеты, когда не хватает времени. В общем, я ложусь спать.

Час 23 - Боевые параметры!

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

Час 24 - Меню игрока

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

Час 25 – До(раз)пиливаю полы и стены

Сегодня утром у меня в мозгу появилась идея (неужто у меня такой большой мозг, что в него вмещается столько идей?) как устранить проблему перекрытия стен в смежных комнатах (см. описание восемнадцатого часа). Что, если я буду рисовать только половинки стен? Таким образом перекрытия не будет вообще, и не нужно добавлять сложную логику для определения и исправления перекрытий.

Я начинаю работу над реализацией этой идеи. К сожалению, на самом деле придуманное упрощение еще больше усложняет отрисовку комнаты (в частности полов), и реализовать его можно не так быстро, как я надеялся. На создание и отлаживание этой системы было потрачено около часа. Но оно того стоило.

Отлаживая код, я обнаружил еще несколько ошибок, связанных с переходом между комнатами.

ПЕРЕРЫВ - Кризис!

Я только что осознал, что прошло больше чем 3/5 отведенного на разработку времени, и что осталось меньше пятнадцати часов, чтобы закончить игру. Посмотрев расписание необходимых функций игры, и прикинув, что на реализацию каждой нужно в среднем час, я понял, что на реализацию всего мне нужно около двадцати пяти часов. На десять часов больше, чем есть. Проект официально под угрозой срыва.

Выйти за пределы лимита времени мне нельзя. Также нельзя привлечь помощника или купить код/ресурсы, поскольку предусмотрено, что игру за 40 часов сделаю я один. Нужно придумать, как работать еще более эффективно – но я и так уже вкалываю на максимуме производительности. Похоже, у меня нет другого выбора, придется пересмотреть функционал, и решить, какие возможности выбросить из игры.

Двери: Вырезано! Я очень хочу сделать двери в игре. Жалко расставаться с этой функцией - тем более, что я уже некоторое время работал на ней. Но остается еще слишком много работ, например искусственный интеллект. И, наверное, понадобится 2-3 часа, чтобы заставить их работать, а их у меня нет.
Инвентарь: упростить! Забудьте о дополнительном инвентаре, и возможности смены оружия по желанию. Все, что подобрано и не стало текущим оснащением, будет сразу пересчитано в деньги.
Ловушки: упростить! Я хотел бы иметь множество ловушек с интересными и разнообразными последствиями их активации. Не судьба. Ловушки будет иметь простой визуальный эффект, наносить урон и временно увеличивать вероятность нарваться на случайного монстра
Луки (стрелковое оружие): Вырезано! В игре будет только оружие ближнего боя, на расстоянии можно атаковать заклинаниями.
Сохранение / загрузка игры: упростить! Сохранить можно только персонажа, а не состояние мира. (ПРАВКА: Я и этого не сделал!)
Система частиц: Отложить! Создание системы частиц перемещено в самый низ списка приоритетов. Я сомневаюсь, что придется их делать. Хотелось бы сделать впечатляющие визуальные эффекты с помощью частиц для заклинаний... но, скорее всего, этого никогда не будет.
Заклинания: упростить! У меня была серьезная концепция о заклинаниях: их можно было бы найти в виде свитков, и количество более десятка. Это грустно, но будет всего несколько заклинаний: Лечение, Урон, Ослабление, Усиление, и Восстановление. При повышении уровня, можно позволить игроку усилить заклинания за счет увеличения числа магических очков.
Анимация монстров и игроков: Вырезано! Я никудышный художник, чтобы сделать это достаточно быстро.

Принимая решение, что я не буду делать (или то, что отложу на после), не менее важно решить, что нужно сделать в первую очередь.

Есть много вещей, которые запланированные в игре, и которые я считаю очень важным – поиск ловушек, секретных дверей (ну теперь секретных проходов), и взлом сундуков. Но все же основой игры является бой. Поэтому я решил сосредоточится именно на нем, сделать его главным приоритетом. Я поставил перед собой цель, через полтора чала мои монстры оживут настолько, что их можно будет убить.

Отлично, с приоритетами разобрались, продолжаем разработку.

Час 26 - Бросим кости

Я работаю над механикой «игральных костей», - механизма, с помощью которого в игру будет внесен элемент случайности. Поскольку у нас нет ограничения реальных костей, мы можем получать случайное число любого желаемого диапазона. Например от 1 до 33, или от 6 до 17. Так что я могу бросить кости, сравнить то, что выпало со своей атакой и защитой врага. Если выпавшее число выше защиты, атака удалась.

Например, предположим, что у меня общее значение атаки 15. Я атакую монстра, у которого 10 защиты. Мои шансы 15 из 25 (25 =15 +10), или 3 из 5. Так игра будет генерировать случайное число между 1 и 25, и если оно выше десяти, я выиграю.

Для вычисления нанесенного урона используется немного другой способ. Я добавил защищающемуся параметр «броня», а атакующему "урон". Я генерирую случайное число от 1 до их суммы, а затем вычитаю броню. Если результат меньше единицы, урон не наносится. В противном случае, он равен полученному результату. Таким образом, если монстр, с уроном равным 10 атакует игрока с 5 очками брони, игра будет генерировать число от 1 до 15, из которого вычтет 5, то, что получится, и есть нанесенный урон.

Это объяснение и описание заняло больше времени, чем его реализация.

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

Индустрия компьютерных игр - один из самых динамично развивающихся сегментов IT-сферы. Насколько сложно научиться создавать игры или хотя бы отдельные их элементы? Может ли пользователь справляться с подобными задачами в одиночку? Как создают игры на компьютер профессионалы?

Что нужно, чтобы начать создавать игры?

Прежде всего необходима вовлеченность в индустрию в качестве игрока. Без знаний устройства игр изнутри и психологии геймеров, наблюдений за тем, как работает компьютерная графика в режиме реального пользования, а не в теории, успеха в выпуске собственных игр достичь очень тяжело. Если игра создается с прицелом на коммерческие продажи (или хотя бы с целью раскрутки персонального бренда ее разработчика), то она должна быть конкурентоспособной, отражать актуальные запросы игрового сообщества. Выпустить продукт, не угадав с "трендом" - значит потратить время впустую. Поэтому важно быть не просто геймером-любителем, но также и изучать рынок, иметь возможность ставить новые игры на компьютер, тестировать их. А это значит, что разработчику понадобится также и очень И здесь мы переходим ко второму основному условию успеха в сфере гейм-индустрии. Речь идет об аппаратных компонентах - "железе".

Известно, что (из числа ПК, разумеется, речь не идет о промышленных ЭВМ) - игровые. Они включают в себя аппаратные компоненты (процессор, видеокарту, память, чипсет), намного более технологичные, чем ПК для офисных и домашних нужд. Внешне, безусловно, компьютеры различных классов могут почти не различаться, но с точки зрения электронной "начинки" разница существенна. Игровой ПК может стоить в 5-10 раз дороже, чем офисный или домашний. Не исключено, что даже какой-то отдельный его компонент (к примеру, тот же процессор) будет иметь цену выше, чем весь готовый ПК для офиса. Мощное "железо" понадобится, кстати, не только для тестирования геймерских продуктов. Высокопроизводительных компонентов требуют также и специализированные программы для игр на компьютер. Те, при помощи которых будут создаваться шедевры индустрии.

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

Методы создания игр

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

Конструкторы игр

Конструктор - это набор шаблонов, которые имеют запрограммированную модель поведения. Ближайшая аналогия, которую можно привести, объясняя то, как при помощи такого решения создать игру - "лего"-детали. Подобно тому, как дети конструируют, читая руководство или же импровизируя, домики, машинки и прочие интересные шедевры из пластмассы.

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

Игровые движки

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

Что такое движок? Это, по сути дела, всего лишь набор команд (хотя и очень сложный, состоящий из сотен тысяч алгоритмов), позволяющих запускать отдельные игровые процессы. Количество шаблонов, подобных тем, что имеются в конструкторах, как правило, сведено к минимуму. А те, что есть, очень легко поддаются видоизменению или же замене на те, что разработает сам пользователь. Задействование движков требует, конечно же, большей квалификации, чем работа с конструкторами. Если речь идет о создании серьезной игры, то пользователю, скорее всего, придется привлекать в помощь еще кого-то (структуру типичной команды разработчиков мы рассмотрим далее). Но однажды освоившись в интерфейсах движка, впоследствии человек сможет адаптировать имеющиеся знания и навыки к созданию практически любых игровых продуктов.

Игра с нуля

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

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

Профессиональные разработчики

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

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

Структура профессиональной игровой студии

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

В команду разработчиков обязательно должны входить дизайнеры и художники. Без их таланта компьютерная графика не впечатлит пользователей. Графика - это, по признанию многих экспертов, ключевой фактор успешности игры. В некоторых случаях должности этого типа делятся по функциям. Например, в команде создателей игр могут быть отдельно 2-D, 3D-дизайнеры, а также так называемые концепт-художники, которые предлагают своим коллегам и руководству фирмы на утверждение эскизы будущих элементов графики.

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

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

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

Создаем игры сами: обзор программ

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

Game Maker

Эта программа дает возможность создать игру даже тем пользователям, которые не владеют языками программирования. Речь, правда, не идет о разработке трехмерных шедевров. Программа позволяет создавать только 2D-игры, но в широком многообразии жанров. Можно делать очень простые игры "бродилки". Меню, доступное пользователю, содержит большое количество готовых шаблонов. Все, что, по сути, остается сделать - так это придумать свой сценарий игры.

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

Construct-2

Продукт Construct-2 признается экспертами одним из самых функциональных в классе решений для создания игр пользователями, не владеющими языками программирования. Огромный плюс этого решения в том, что с его помощью можно выпускать игры под большинство используемых сегодня платформ - Windows, iOS, Android, создавать их на языке HTML5 и приложения для Facebook (поняв, как делать программы для запуска в этой социальной сети, пользователь научится тому, как в "ВК" создать игру, показать ее друзьям). Пользователи Construct-2 отмечают простоту и понятность ее интерфейса. Работать можно в основном по шаблонам, но их очень много, а потому найдется практически любой, что впишется в сценарий, придуманный пользователем. Приятный аспект - с помощью Conustruct-2 можно бесплатно.

Unity 3D

Две вышеперечисленные программы предназначены для создания игр в 2D-режиме. Unity позволяет работать, используя возможности 3D-графики. Возможностей, которые дает программа - огромное количество. Так же как и в случае с Construct 2, есть мультиплатформенность (присутствует даже поддержка консолей - Xbox, PlayStation, Wii).

В составе программы - один из лучших в мире, по признанию экспертов, игровых движков (называется он так же - Unity). Поэтому это решение, без всякого преувеличения, позволяет создавать геймерские шедевры мирового уровня (если, конечно, нам удастся собрать команду, сопоставимую по кадрам хотя бы со среднестатистической студией разработки). Можно будет выпускать очень серьезные игры на компьютер. Стрелялки - однозначно, стратегии - также вполне реально, гонки, симуляторы - легко.