2d движки для создания игр. Полный перечень программ для создания игр (2D PC). Бесплатный софт для игровых ресурсов

Карта теней вероятно, самая трудная часть в создания визуального представления объекта. Мы используем их, чтобы получить запеченные свет и тень.
Они должны быть однозначно развернуты, так что каждая часть модели имеет свое собственное место в UV пространстве, чтобы в итоге получать корректную информацию о свете и тени.
Важно помнить, что разрешение карты теней крошечное по сравнению с размером UV пространства.
Важно также понимать, что чем больше уровень должен быть оптимизирован тем ниже дизайнер уровней должен использовать разрешение на лайтмапах, иногда доходя до 8 на 8 или 16 на 16 в случае с более мелкими объектами.
Эта тенденция требует, чтобы мы оставили много дополнительного пространства вокруг каждой секции из развертки объекта так, чтобы области, которые являются темными,
не воздействовали на светлые и не уничтожали иллюзию визуальной корректности теней в игре.

Есть 3 основных способа создания такой развертки:

BOX UNWRAP

Часто это самый надежный метод создания развертки объекта, поскольку большинство моделей окружающей среды близки по форме к блокам, которые объединены в некую структуру.
Непрерывный меш (меш в которой нет отстоящих от основной частей) часто бывает очень полезным решением при построении развертки,
это решение поможет обеспечить более эффективное распределение сетки геометрии в UV пространстве.
Это так же будет хорошо работать даже при низком разрешении карты теней, поскольку тогда она образует единый градиент от темного к светлому.
В отличии от фрагментированной развертки где результат покажется более неоднозначным и может потребоваться повысить разрешение карты теней для парирования эффекта резких переходов.
Мы должны стараться избегать этого там где мы можем. К сожалению иногда нет возможности использовать пониженное разрешение или единую развертку геометрии.

PLANAR UNWRAP

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

CYLINDRICAL UNWRAP

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

Примеры

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


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


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


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


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


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


У некоторых проектов не выходит следовать этим простым правилам, как на скриншоте ниже.


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


Иногда развернуть объект легко, достаточно разбить его на несколько обоснованных частей. А затем просто “расслабить” развертку. Отличный пример объект ниже.


Такая конструкция является по существу цилиндром с плоским основанием поэтому здесь используются эти два основных метода развертки объекта.
Planar разворачивает части геометрии вниз по оси Z, а затем применяется модификатор “расслабления” и немного регулируется положение вершин чтобы убедиться, что ничего не получает слишком мало покрытия.
В середине схожий с основанием случай, здесь центральная часть разделена и использован Planar вместо Cylindrical для того что бы обеспечить большую зону покрытия.
Как всегда, мы больше озабочены охватом, чем чем соотношением сторон 1 на 1. Большим преимуществом будет располагать швы в их реальных местах, это позволит выглядеть теням более естественно.
Если на вашем объекте есть глубокие вырезы, крайне резкие стыки геометрии то это отличное место что бы здесь проложить шов, если конечно он требуется.

Lightmap Coordinates Index

По умолчанию, первый набор UV (индекс 0) статик меша будет использоваться при создании карты теней для статического освещения.
Это означает, что один и тот же набор координат, который используется для нанесения материалов на меш, так же будет использован для статического освещения.
Этот метод довольно часто не является идеальным. Одной из причин этого является то, что UV, используемые для генерации карты теней должны быть уникальными,
а это означает, что каждая грань сетки не должна перекрывать любую другую поверхность в UV пространстве. Причина этого достаточно очевидна: если фейсы перекрывают друг друга на UV развертке,
часть карты теней, соответствующая этому пространству будет применяться к обеим граням. Это приведет к неправильному освещению, появлению теней там где их в принципе быть не должно.
Статик меши имеют свойство LightmapCoordinateIndex , которое позволяет использовать заданную UV развертку под карту теней. Установите это свойство, чтобы указать на набор UV, который правильно настроен для освещения.

UV чарты и отступы

Группы обособленных треугольников с сопредельными UVs называются UV чарты (charts).

Разделять развертку на чарты и располагать их отдельно следует если вы хотите исключить воздействие теней одного чарта на другой. Так же делая отступ следует помнить о простом правиле:
Размер отступа должен быть больше чем 4х4 текселя, так как DXT сжатие работает с блоками именно такого размера.

  1. Потраченный впустую отступ
  2. Необходимый отступ

Это означает, что для карты теней разрешением 32, отступы между частями UV развертки должны быть 12,5% от всего UV-пространства.
Однако, имейте в виду, что использование слишком больших отступов между частями UV развертки приведет к трате памяти, отведенной на карту теней, впустую на более высоких разрешениях.
Чем ближе ближе вы сможете расположить UV чарты, тем лучше. Это позволит уменьшить количество растраченной впустую памяти.


Это далеко не идеальная развертка.

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


Лучший способ создания развертки для карты теней является моделирование всего меша как одного непрерывного элемента или создание развертки вручную.


Это даст единую развертку, на которой почти нет швов и которая гораздо более эффективна.

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


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


Ранее мы затрагивали тему бесплатных игровых движков — . Правда название статьи дали более простое, чтобы привлечь больше желающих сделать свою 2D/3D игру.

В этом обзоре я решил рассмотреть более серьезные игровые движки CryENGINE 3, Unreal Engine. А также посмотрим на новую версию Unity3D.

CryENGINE 3 Free SDK

CryENGINE 3 — бесплатный игровой движок созданный компанией Crytek, которая выпустила первую версию движка в 2002 году. Третья же версия появилась на свет в 2009 году. Мировая известность этого движка оправдана потрясающими графическими показателями выпускаемых продуктов, некоторые из которых выглядят невероятно фотореалистично.


Возможности:

  • Лучшей демонстрацией возможностей я считаю уже готовые игры и тут у CryENGINE 3 есть чем похвастаться. За все время этот движок использовался разработчиками таких игр как Far Cry, Crysis и AION. Конечно же, список созданных игр гораздо больше, но я привел наиболее известные игры.
  • CryEngine 3 является кроссплатформенным движком и поддерживает PC, PlayStation ® 3 и Xbox 360 ™.
  • Импортировать текстуры можно из 3ds max, maya а также из предыдущих версий движка.
  • Процитирую слова основателя компании Цеват Ерли: «Движок был готов к следующему поколению еще 3 года назад. У нас давно есть продвинутая система частиц, GPU-рендеринг, Deferred shading, тесселяция, поддержка DX11 и так далее» — Действительно, реальные примеры созданных игр, говорят о многом.

Примеры игр: на официальном сайте представлены наиболее популярные игры на CryENGINE http://mycryengine.com/index.php?conid=68

С чего начать?

SDK скачивается в виде архива, без инсталлятора. В архиве содержится несколько папок, каждая из которых имеет свое назначение. Например, для запуска редактора используйте папки bin32 или bin64 (в зависимости от разрядности вашей системы). Файл редактора editor.exe , ну а для просмотра результата — launcher.ex e.

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

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

Язык интерфейса: Английский

Unreal Development Kit (UDK)

Unreal – именно это слово разработчики Unreal Engine решили использовать не только в названии движка, но и в названии некоторых игр — «Unreal», Unreal Tournament, Unreal Championship. В числе выпущенных продуктов присутствуют также Mass Effect, XCOM, Borderlands 2 и еще более сотни необычных игр, получивших мировое признание.


Возможности:

  • Unreal Engine является кроссплатформенным движком и поддерживает IBM PC-совместимый компьютеры, Xbox 360, PlayStation 3, Wii, Android. Если быть точнее, разработать игру Вы сможете на Windows, а запустить полученный продукт на вышеописанных игровых консолях и конечно же самой Windows.
  • Изначально движок приспособлен под создание шутеров, но также подходит для других жанров, например, ММО игр.
  • Графика на очень высоком уровне. Высокая детализация теней и света. Присутствует система расчета освещения Unreal Lightmass.
  • Встроенный редактор имеет огромный набор встроенных инструментов, среди них FaceFX Studio (анимация лица), редактор меши, Unreal Facade (разработка архитектуры и зданий), Unreal PhAT (работа с физикой) а также редакторы анимации, текстур, звуков, уровней, ландшафта и прочие.
  • Скриптинг осуществляется на языке Unreal Script, который включает в себя множество функций, упрощающих разработку 3D игр. Несмотря на некоторые трудности вроде наследования классов, внешний вид кода на Unreal Script похож на тот же C/C++.

Примеры игр: вот плюс к тому, что выше написал — http://www.unrealengine.com/en/showcase/

Язык интерфейса: Английский

Unity3D

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



Возможности:

  • Мультиплатформенность игр и самого движка. Поддерживаются Android, iOS, Blackberry, Windows XP/Vista/7, OSX, Wii, Playstation 3, Xbox, Flash, Web Player. Особо хочется подчеркнуть веб-плагин, ведь теперь можно играть в созданные 3D игры прямо в браузере, ниже c примерами игр я привел ссылку.
  • Охвачены практически всевозможные жанры современных игр, это действительно впечатляет (http://unity3d.com/gallery/made-with-unity/profiles/)!
  • Упрощенный импорт текстур, звуков, шрифтов. Для импорта достаточно перетащить элементы в папку с текстурами на панели движка. Поддерживаемые форматы: JPEG, PNG, GIF, BMP, TGA, IFF, PICT, PSD, TIFF (изображения); FBX, COLLADA, 3DS, DXF (3D модели); MP3, OGG, AIFF, WAV, MOD, IT, S3M, XM (аудио).
  • Скриптинг. Скрипты можно писать на JavaScript, C# и диалект Python’а под названием Boo. Чаще всего код пишут на JavaScript, к тому же, практически вся справка к Unity содержит примеры именно на JavaScript. Проверить работу скрипта можно сразу в игре, не покидая окна Unity.
  • Графическая система хорошо оптимизирована и работает на DirectX(включает поддержку DirectX 11) и OpenGL. Есть поддержка отложенного освещения(Deferred Shading) и теней в реальном времени. Так же присутствуют встроенный генератор ландшафтов и встроенный редактор шейдеров.
  • Если хотите разрабатывать игру в команде, для Вас в движке предусмотрена система совместной разработки — Asset Server.

Примеры игр: Bad Piggies, Wasteland 2. В некоторые игры можно поиграть прямо на сайте Unity (требуется установка специального плагина UnityWebPlayer)

Язык интерфейса: Английский

С чего начать?

На нашем форуме есть тема посвященная этому движку (ссылка ниже). Тут Вы найдете видеоуроки и прочий материал по изучению Unity3D.

Подытожим. Что выбрать?

Разумеется, для выбора движка Вы должны четко знать, под какую платформу собираетесь разрабатывать игру. Под мобильные платформы выбирайте между Unity3D и Unreal Development Kit(UDK). Самый богатый выбор платформ у Unity3D: Android, iOS, Blackberry, Windows XP/Vista/7, OSX, Wii, Playstation 3, Xbox, Flash, Web Player(в бесплатной версии большинство платформ исключены).

Жанр игры:

На этих трех движках можно сделать игру любого жанра, но CryENGINE 3 и UDK будут более ориентированы на FPS(шутеры). Гоночные симуляторы — UDK, т.к лучше дело с физикой, но и Unity также подойдет.

Обучение/Интерфейс:

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

Графика:

В обзоре приведены примеры готовых продуктов, уже их достаточно, чтобы сделать выводы. CryENGINE 3 превосходит конкурентов, но нельзя говорит про явное превосходство. Unity в бесплатной версии лишился многих технологий, полный список возможностей смотрите здесь — https://store.unity3d.com/ (кнопка «read more» > «License Comparison»)

Выбирайте движок исходя из своих потребностей и знаний. Стоит все-таки попробовать каждый и выбрать что Вам ближе и проще.

Дата написания: 26.11.2016

Программы для создания 2D игр

Game Maker

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

Construct 2

Эта программа - простой конструктор 2D игр. Знание языков программирования не обязательно. В "Construct 2" можно создавать игры для множества аппаратных систем: iOS, Android, Facebook, Chrome Web Store, Desktop Windows, Windows 8 Apps, Web (HTML5), Kongregate и для множества других платформ. В этой программе присутствуют библиотеки звуков, музыки, различных инструкций.

Программы для создания 3D игр

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

NeoAxis Game Engine SDK

Игровой движок для создания игрлюбых жанров. Обладает простым интерфейсом и богатыми возможностями В качестве языка программирования используется C# и C++ и платформа.NET, но есть возможность обходиться без программирования благодаря специальным библиотекам готовых действий. В программе присутствует экспорт для 3dsMax и Maya, Autodesk Softimage и Blender. Поддерживаются шейдеры, освещение и тени PSSM (Parallel-Split Shadow Map).

Unity 3D

"Unity 3D" работает с DirectX и OpenGL. Поддерживает обработку 3D моделей, создание шейдеров, теней, ландшафтов, физики и звуков. "Unity 3D" подходит для создания игр любого жанра. В качестве платформ поддерживаются обычные компьютеры (Windows XP/Vista/7, OSX), мобильные устройства (Android, iOS, Blackberry), игровые консоли (Wii, Playstation 3, Xbox), интернет браузеры (Flash, Web Player).

Unreal Development Kit (UDK)

Профессиональный игровой движок. На нем были созданы такие известные игры, как "Unreal Tournament", "XCOM", "Devil May Cry". "UDK" поддерживает следующие платформы: PC, Xbox 360, PlayStation 3, Wii, Android. Этот движок изначально заточен под создание 3D-шутеров, но так же есть возможности для создания игр смежных жанров: слешеров, приключений, ММО-игр. Использовать "UDK" можно совершенно бесплатно, если созданная игра является бесплатной. Для людей, решивших глубоко изучить данный игровой движок существует подробный курс лекций по работе с движком. Также можно пройти экзамен и получить сертификат, подтверждающий навыки владения Unreal Development Kit.

CryENGINE 3 Free SDK

"CryENGINE 3" - конкурент движку Unreal Engine. Движок обеспечивает фотореалистичную графику с поддержкой DirectX 11 и шейдеров третьего поколения. Этот движок так же бесплатен. Импортировать текстуры можно из графических программ "3ds max", "Maya" а также из предыдущих версий движка. На сайте движка есть обучающие курсы, а также тестирование умений использования движка и сертификация.

Статьи по теме: