Как сделать свою первую игру. 7 главных советов
Содержание:
- Ресурсы🎁
- Как сделать полный экран в игре: хоткеи
- Unity3D
- GameMaker: Studio
- Ритм
- Разработка игр
- Создание веб-игры за час
- Game Editor
- Путь
- Онлайн сервисы для создания игр
- Как расширить экран игры: совместимость
- Простой пример Pygame
- Кто занимается разработкой игр
- Какие Языки Программирования Вы Можете Использовать, Чтобы Создать Игру?
- Совет №7. Работайте регулярно
- Третий этап — графика
- UNITY
- Unreal Engine
- Выбор технологии (Движка)
- Программы и движки для разработки игр
- Заключение
Ресурсы🎁
Все нижеперечисленные ресурсы и программы опробованы мною лично и многими из них я пользуюсь до сих пор!
Для заметок:
- Notes для Mac ()
- Google docs ()
- Trello
Для совместной работы (для команд):
- Google drive
- GitHub (). Требуются git и Unity .gitignore.
- Unity Collab. Самый простой сервис из трех. У бесплатной версии есть ограничения.
Unity — это игровой движок, который я использую для создания своих игр и я буду очень часто упоминать его здесь. Однако не стесняйтесь — вы можете выбрать любой другой движок для своих игр.
Для разработчиков:
-Книга «The Art of Game Design» . Автор Джесси Шелл
-Сайт Gamasutra
Как сделать полный экран в игре: хоткеи
Хоткеи (горячие клавиши) — клавиши или комбинация клавиш, при нажатии которых происходит определенное действие. И мы сейчас говорим не про само внутриигровое управление. Во многих играх на программном уровне зашиты горячие клавиши, которые позволяют изменять формат выводимого окна с изображением.
Сейчас многие разработчики пренебрегают этим функционалом, потому что современное железо очень редко испытывает проблемы с совместимостью с играми. Вероятно, в будущем пользователи тоже будут испытывать технические проблемы со старыми играми, которые в наше время являются актуальными 🙂 Самая распространенная комбинация в играх девяностых и нулевых — Alt + Enter. Работает даже в некоторых современных играх.
Unity3D
Unity Technologies — уникальная компания. Она создала движок Unity3D — один из самых популярных инструментов для создания игр во всей игровой индустрии. Игровой движок Unity несомненно является доминирующим глобальным поставщиком программного обеспечения для разработки игр. Больше всего игр сделано именно на этом движке. Так, за 2015 год было создано 220 тысяч видео игр, а установки превысили 4,2 миллиарда раз. Все больше геймеров играют в игры, сделанные на Unity, и все больше разработчиков полагаются на их инструменты и сервисы для управления своим бизнесом. Мы уже писали о Unity 5 на нашем сайте, сравнивая его с другими игровыми движками: Девгам. Сейчас мы вкратце расскажем о нём.
Игровой движок Unity 5 предлагает широкий спектр функций и довольно простой для понятия интерфейс. Это кросс-платформенный движок, который с легкостью портирует игры на Android, IOS, Windows Phone 10, BlackBerry, делая его замечательным инструментом для создания мобильных игр. Он также имеет возможность создания видеоигр для консолей нового поколения: PS4 PRO, Xbox One S.
Unity поддерживает 3D форматы различных программ: 3ds Max, Maya, Blender, CINEMA 4D, Softimage и так далее. Новый Unity3D поддерживает гибкую настройку Спрайтов (Sprites) и 2D физики, что делает его отличным игровым движком для создания 2D и 2.5D игр. Именно поэтому многие компании, нацеленные на создание мобильных проектов, выбирают Unity, потому что быстрая разработка, минимальные вложения, портирование на все возможные платформы — это то, что по-настоящему нужно небольшим компаниям.
Помимо того, этот игровой движок работает в связке со многими 3D программами, он также содержит полезные функции для редактирования внутри движка. Unity не имеет реальных инструментов для моделирования, есть только возможность масштабировать и накладывать текстуры на 3D модели, поэтому все, что касается анимирования, моделирования, создания материалов, будет создаваться в постороннем 3D софте. Однако Unity3D может похвастаться большой библиотекой ассетов, где большая часть может быть скачана бесплатно, а остальная часть может быть приобретена за небольшую цену (цена определяется автором ассета).
Unity 5 имеет несколько тарифных планов. Если раньше их было все 2: бесплатная версия и платная за $75/месяц, то сейчас их куда больше. Personal версия — бесплатная сборка для тех, кто только знакомится с этим игровым движков. Доход в данном случае не должен повышать $100.000 долларов за квартал. Вам будут доступны все функции, вы сможете начать работать сразу, как только зарегистрируетесь и установите его.
Версия Plus — сборка, подходящая для продвинутых художников. Одной из главной особенности этой сборки является замена скина UI редактора, замена начального экрана и ряд других возможностей, недоступных для пользователей с бесплатной версией.PRO версия — для мастеров своего дела. С Unity Pro у вас есть возможность посмотреть исходный код, получить премиум поддержку, ассеты можно купить на Asset Store со скидкой 40%, что очень неплохо.
И последняя версия — Enterprise. Данную сборку нельзя купить обычным способом, вам будет необходимо связываться с Unity Technologies для получения самой профессиональной сборки для 20+ сотрудников.
Unity часто ассоциируется с мобильными играми, но с выходом Unity 5 и новым рендером наблюдается огромный рост графических возможностей игрового движка, включая такие вещи, как Physically Based Shading, Global Illumination в реальном времени и HDR Reflection Probes, а также многие другие улучшения.
Unity 5 предлагает некоторые функции, которые делают его сильным соперником среди игровых движков Unreal Engine 4 и CryEngine 3. Скачать можно с официального сайта Unity.com.
GameMaker: Studio
Данная программа подойдет как для людей, которые только начинают свой путь разработчика игр, так и для профессионалов своего дела. GameMaker позволяет создавать кросс-платформенные игры за рекордное время при минимальных вложениях. Вдобавок, разработка своей собственной игры будет намного быстрее с новой версией с улучшенным интерфейсом, рядом необходимых функций, которых не было в первой версии игрового движка.
Импортируйте изображения, анимации, аудио и шрифты через Studio’s Resource Tree. Разработав игру, вы сможете портировать её сразу на несколько платформ, используя кросс-платформенные решения от GameMaker.
Ритм
Существует такое понятие, как ядро геймплея (или ядерные механики, ядерный цикл) — это повторяющиеся механики, с которыми игроку придется сталкиваться все время. Часто можно встретить такую схему: игрок убивает врага, прокачивается и идет убивать врага посильнее, чтобы прокачаться еще лучше и снова пойти на нового врага.
Однако если вся игра будет строиться только вокруг прокачки, то это однообразие действий быстро надоест. Представьте, что вы слушаете музыку, в которой нет ничего, кроме трех повторяющихся нот. Интереса хватит на пару минут, но потом уже станет тошно.
Чтобы этого не случилось, в игру нужно добавить ритм или динамику: это чередование действий, которые должен выполнить персонаж. Например, сначала немного сражений, потом исследование локации, решение головоломки, снова поединок, разговор с ключевым для сюжета персонажем и так далее.
Если человек будет занят одним делом слишком долго, ему быстро надоест, и он не захочет больше играть.
В Fable: The Lost Chapters игрок мог пойти рыбачить, если ему надоедало сражаться с монстрами и бандитами.
Разработка игр
- 05/15/2015
- Чтение занимает 20 мин
В этой статье
Создание веб-игры за час
Продукты и технологии:
Visual Studio 2013 Pro, Visual Studio 2013 Community, ASP.NET
В статье рассматриваются:
- базовая философия разработки игр;
- применение веб-технологий для разработки игр;
- добавление игровых элементов управления и ИИ (искусственного интеллекта).
Разработка игр не требует совершенно нового набора знаний и навыков. По сути, ваши текущие навыки в веб-разработке с применением HTML, JavaScript, CSS и других средств замечательно подходят к широкому спектру игр. Когда вы создаете игру на основе веб-технологий, она будет работать почти на любом устройстве в браузере.
Чтобы доказать это, я продемонстрирую создание игры с нуля, используя веб-технологии и всего две внешние библиотеки, причем сделаю все это менее чем за час. Я буду рассказывать о самой разнообразной тематике, связанной с разработкой игр, — от базового дизайна и разметки, элементов управления и спрайтов до искусственного интеллекта (ИИ) (artificial intelligence, AI), пригодного для простого оппонента. Я даже собираюсь создать игру такой, чтобы она работала на ПК, планшетах и смартфонах. Если у вас есть некоторый опыт в программировании в качестве веб-разработчика или в другой области разработки, но нет никакого опыта в написании игр, эта статья послужит вам отправной точкой. Если вы дадите мне один час, обещаю ввести вас в курс дела.
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 и ХМ.
Путь
Путь — это то, что проходит персонаж, чтобы достичь цели. На пути должны появляться всяческие препятствия, которые мешают просто прийти и забрать то, что тебе нужно. Эти преграды не должны быть слишком сложными, потому что иначе игрок почувствует себя беспомощным и не захочет продолжать. С другой стороны, слишком просто тоже быть не должно, потому что тогда станет скучно.
В пути игрок должен познакомиться с игровыми механиками — понять, как устроена боевая система, что можно купить и продать, как можно перемещаться по локациям — и овладеть ими. Например, он должен научиться мастерски убивать врагов.
Онлайн сервисы для создания игр
Factile
Factile – сервис для разработки многопользовательских игр типа «Своя игра», «Слабое звено» или «Кто хочет стать миллионером». Оно представляет собой конструктор из готовых шаблонов, вам остается только придумать вопросы и назначить награду. После генерации викторины становится доступна ссылка, по которой будут подключаться участники.
После регистрации сервис перекинет вас к выбору тарифа. Если не планируете покупать подписку, используйте бесплатный доступ.
Когда вы выберите тариф, система перенесет вас в окно создания викторины.
Подключаться к сервису можно с любых устройств, поддерживающих работу с браузером.
Для доступа к полному функционалу здесь есть несколько платных тарифов от 350 рублей в месяц.
Русского перевода нет, но браузер Хром переводит большинство элементов управления.
ProProfs
ProProfs предназначен для создания развивающих игр по готовым шаблонам. Для работы с ним потребуется регистрация с подтверждением номера телефона. Сервис полностью платный, но в нем есть бесплатный пробный период.
Сайт ProProfs также не имеет русского языка, но это легко исправить с помощью машинного перевода. Однако не все игровые модули поддерживают кириллицу.
Как пользоваться сервисом:
- Чтобы начать проект, пройдите регистрацию на сайте. После чего нажмите на главном экране кнопку «Создать свою первую викторину»;
- Выберите вариант «Создать личную викторину»;
- Выберите шаблон (модуль).
В программе доступны следующие модули:
- паззл;
- кроссворд;
- угадывание слов;
- ответы на вопросы;
- тесты.
Из представленных модулей и игр есть многопользовательские и рассчитанные на одного участника. Для участия потребуется регистрация.
Подписка на самый дешевый тарифный план ProProfs стоит 25$ в месяц (примерно 1700 рублей).
Gamefroot
Gamefroot – онлайн сервис для создания 2D мини-игр. В его основе – полноценный игровой движок на базе HTML5.
Этот ресурс предназначен для детей и начинающих создателей игр, поэтому у него простой интерфейс и интуитивно понятное управление. Каждый элемент сопровождается всплывающим окном подсказки.
Есть в Gamefroot и специальный модуль для написания скрипта с пояснением алгоритмов и логики.
Игры здесь можно делать как с нуля, так и по готовому шаблону. Функционала движка хватает, чтобы сделать многоуровневый платформер или бродилку.
Для работы с сервисом регистрация необязательна. Однако авторизованным пользователям открываются дополнительные шаблоны и элементы.
Если вы хотите протестировать возможности Gamefroot, достаточно обычного входа на сайт. А для постоянного использования с доступом ко всем возможностям имеет смысл зарегистрироваться.
На главной странице сайта указано, что пользователям доступна платная подписка, которая открывает еще больше возможностей. Но я не нашел ни одной функции, за которую бы просили денег. Также я не увидел кнопки для оформления подписки. После регистрации функционал Gamefroot доступен в полном объеме.
Русского языка здесь нет, но чтобы начать делать игру с нуля , достаточно автоперевода браузера.
Как расширить экран игры: совместимость
В свойствах ярлыка игры можно также увидеть графу «Совместимость». Она тоже влияет на тип запуска приложения и предназначена для старых игр.
Поставьте галочку напротив пункта «Запустить программу в режиме совместимости с» и попробуйте разные варианты операционных систем, которые вам предлагают. Желательно также поставить галочку напротив пункта «Запускать эту программу от имени администратора». Еще вы можете воспользоваться средством устранения проблем с совместимостью, которое, по сути, является аналогом средства устранения проблем с интернет-соединением, но, как вы понимаете, эта штука помогает очень редко. Но лучше не проходить мимо и попробовать все варианты, верно?
Простой пример Pygame
Вот следующий пример создания простого окна pygame.
import pygame pygame.init() screen = pygame.display.set_mode((400,500)) done = False while not done: for event in pygame.event.get(): if event.type == pygame.QUIT: done = True pygame.display.flip()
Выход:
Вся графика будет отображаться в окне pygame.
Давайте разберемся с основным синтаксисом вышеуказанной программы.
import pygame – это модуль, который позволяет нам работать со всеми функциями pygame.
pygame.init() – используется для инициализации всех необходимых модулей pygame.
pygame.display.set_mode((ширина, высота)) – используется для изменения размера окна. Он вернет объект поверхности. Объект поверхности используется для выполнения графических операций.
pygame.event.get() – делает очередь событий пустой. Если мы его не назовем, сообщения в окне начнут накапливаться, и игра перестанет отвечать на запросы операционной системы.
pygame.QUIT – используется для закрытия события, когда мы нажимаем крестик в углу окна.
pygame.display.flip() – используется для отображения любого обновления игры. Если мы внесем какие-либо изменения, нам нужно будет вызвать функцию display.flip().
Мы можем нарисовать любую форму на поверхности pygame, включая добавление изображений, привлекательный шрифт. Pygame предоставляет множество встроенных функций для рисования геометрической формы на экране. Эти формы – начальный этап разработки игры.
Давайте разберемся со следующим примером рисования фигуры на экране.
Пример –
import pygame from math import pi pygame.init() # size variable is using for set screen size size = screen = pygame.display.set_mode(size) pygame.display.set_caption("Example program to draw geometry") # done variable is using as flag done = False clock = pygame.time.Clock() while not done: # clock.tick() limits the while loop to a max of 10 times per second. clock.tick(10) for event in pygame.event.get(): # User did something if event.type == pygame.QUIT: # If user clicked on close symbol done = True # done variable that we are complete, so we exit this loop # All drawing code occurs after the for loop and but # inside the main while done==False loop. # Clear the default screen background and set the white screen background screen.fill((0, 0, 0)) # Draw on the screen a green line which is 5 pixels wide. pygame.draw.line(screen,(0, 255, 0), , , 5) # Draw on the screen a green line which is 5 pixels wide. pygame.draw.lines(screen,(0, 0, 0), False, , , , ], 5) # Draw a rectangle outline pygame.draw.rect(screen,(0, 0, 0), , 2) # Draw a solid rectangle pygame.draw.rect(screen,(0, 0, 0), ) # This draw an ellipse outline, using a rectangle as the outside boundaries pygame.draw.ellipse(screen,(255, 0, 0), , 2) # This draw a solid ellipse, using a rectangle as the outside boundaries pygame.draw.ellipse(screen,(255, 0, 0), ) # Draw a triangle using the polygon function pygame.draw.polygon(screen,(0, 0, 0), , , ], 5) # This draw a circle pygame.draw.circle(screen,(0, 0, 255), , 40) # This draw an arc pygame.draw.arc(screen,(0, 0, 0), , 0, pi / 2, 2) # This function must write after all the other drawing commands. pygame.display.flip() # Quite the execution when clicking on close pygame.quit()
Выход:
Объяснение –
В приведенном выше примере мы нарисовали различные формы, такие как треугольник, прямая линия, прямоугольник, эллипс, круг, дуга, закрашенный круг и овал. Мы использовали функцию pygame.draw в соответствии с формой с подходящими аргументами.
Кто занимается разработкой игр
Разработкой игры может заниматься один человек, что ярко продемонстрировал создатель Minecraft Маркус Перссон, ставший после сделки с Microsoft миллиардером.
Более 43 тысяч оценок на Google Play получила игра One Guy Run, которая была создана и разрекламирована популярным блоггером EeOneGuy и его другом. Прорисовка текстур и 3D моделлинг достаточно простые, идея — преодоление препятствий мальчиком, который постоянно опаздывает в школу.
Отсутствие уникальной идеи, примитивный сюжет и достаточно простая графика все равно привели к большой популярности, что лишний раз свидетельствует о важности маркетинга. В 2021 году, когда наблюдается огромная конкуренция, более оправдано работать командой, каждый участник которой имеет свои обязанности, например:
В 2021 году, когда наблюдается огромная конкуренция, более оправдано работать командой, каждый участник которой имеет свои обязанности, например:
- Геймдизайнер — его задача проектирование игрового процесса. Этот специалист должен продумать не только структуру игры, но и правила. В больших компаниях может быть разделение на специалистов, которые занимаются разработкой персонажей, пользовательского интерфейса, продумывают игровую механику. Геймдизайнер больше других вовлечен в игровой процесс и обязан продумать все детали. Зарплата — 150-200 тысяч рублей в месяц.
- Художник — эксперт по прорисовке игрового мира, персонажей и других деталей. В работе использует актуальное программное обеспечение для 2D или 3D анимации, установленное на мощные компьютерные станции. Если игра это подразумевает, применяется софт для моделирования кинематики, физики и другие технологии. Несмотря на то, что художник — IT-специальность, в его задачи не входит написание кода или даже его понимание. Зарабатывает художник геймдева 80-150 тысяч рублей в месяц.
- Программист — специалист по разработке кодовой базы. Его задача — заставить работать нарисованные художником персонажи, поведение которых определено геймдизайнером. Если проект крупный, каждая часть игры разрабатывается конкретным специалистом. Вознаграждение программистов геймдева — от 120 тысяч рублей в месяц.
- Композитор и звукорежиссер — специалист по написанию музыкального сопровождения. В последнее время наблюдается практика приобретения звуковых эффектов и целых трэков на биржах фриланса (Audiojungle и другие). Но в большом проекте обязательно используется авторская музыка. Инструменты композитора — Midi-клавиатура и компьютер. Рабочая среда — FL Studio, Steinberg Cubase. Живое исполнение, подразумевающее привлечение симфонического оркестра, возможно только при огромных бюджетах на игру, и чаще всего не применяется. Заработная плата обычно сдельно-премиальная или 60-100 тысяч рублей в месяц.
- Тестировщик — инженер, задача которого — проверить функционал и удостовериться в отсутствии багов. Задача — непосредственное использование и написание технических отчетов для программиста с рекомендациями внести изменения в код. Вопреки распространенному мнению, тестировщик в геймдеве — это не человек, который целыми днями играет в игру, а достаточно неплохо разбирающийся в коде специалист. Зарплата — от 60 тысяч рублей в месяц.
Какие Языки Программирования Вы Можете Использовать, Чтобы Создать Игру?
Простые мобильные игры могут быть созданы с помощью широкого спектра языков программирования. Если вы хорошо владеете хотя бы одним языком программирования, то этого может быть достаточно, чтобы понять, как создать игру для мобильных устройств. Тем не менее, более сложные игры для компьютеров или консолей требуют более глубокого понимания языков программирования и их использования для игр. Давайте рассмотрим несколько языков, которые вы можете использовать:
JavaScript
Обучение тому, как создать игру с помощью JavaScript проходит довольно просто. Как ранее упоминалось, вы можете создавать простые мобильные приложения и игры используя лишь JavaScript, HTML и CSS на платформе PhoneGap. Миллионы людей по всему миру имеют хотя бы базовые знания JavaScript, что уже позволяет им создать свою собственную игру.
Однако вам не стоит беспокоиться, если вы не являетесь одним из этих людей – узнать, как создать игру на JavaScript возможно, предварительно изучив этот язык с помощью курса. Пройдите нечто вроде интерактивного курса JavaScript для начинающих, перед тем как перейти к более специфической теме PhoneGap.
Java
Java — это самый популярный язык программирования для создания игр на Android. При использовании вместе с Android Studio, Java может быть использован для создания игр с уникальным внешним видом и концептом. Игры, созданные на Java, чаще всего отличаются производительностью и удобством персонализации.
Если вас заинтересовало, как делают игры для Android, то для начала вам нужно освоить язык Java. К счастью, Java относительно простой язык программирования. Я бы порекомендовал вам начать с курса “Обучение Java с нуля”, перед тем как переходить непосредственно к теме создания игр.
Swift
Swift — это относительно новый язык программирования, который был создан для разработки приложений и игр для операционной системы iOS. Он разрабатывался для облегчения процесса создания игр и приложений для iOS-устройств, и на сегодняшний день стал очень популярен для тех, кто хочет узнать, как создать игру в первый раз.
Если вы хотите научиться созданию игр для iOS, то вам обязательно нужно будет выучить язык программирования Swift. Конечно, у вас есть возможность сделать это и без подобных знаний – взгляните на курс по созданию аркадной игры, чтобы узнать об этом больше – но программирование ваших собственных игр даст вам гораздо больше свободы действий и гибкости, когда дело будет касаться кастомизации вашей игры. Чтобы узнать о Swift и его использовании подробнее, посетите страницу курса Swift обучения для новичков.
Языки C
Языки C – C, C# и C++ – являются самыми распространёнными языками программирования, когда дело касается продвинутой разработки игр и программ. Фактически, большая часть крупнобюджетных игр создаётся с использование одного или комбинации языков C. Тем не менее, они очень сложны в изучении. Я бы не стал рекомендовать вам начинать их изучение, если вы ещё не совсем уверены в своём стремлении создавать игры. Однако для пробы вы можете взглянуть на отдельный курс по этой теме “Как сделать игру”. Он научит вас основам C# с упором на разработку игр.
Совет №7. Работайте регулярно
Старая пословица гласит: «Быстро — это медленно, но без перерывов». То же правило действует в геймдизайне.
Избегайте больших пауз в работе. Старайтесь выкроить хотя бы час в день на разработку игры. Постепенно это превратится в привычку — и у вас не будет чувства, что вы топчетесь на месте.
Алексей Малороссиянов объясняет: «Изучать программирование непросто и требует определённого майндсета. Но когда начинает получаться, вы испытываете огромное удовольствие от результата… Не сдавайтесь и планомерно каждый день хотя бы немного времени уделяйте разработке и изучению движка. И всё у вас обязательно получится».
Третий этап — графика
Графика обычно делается параллельно с процессом разработки и написания кода, и обычно ей занимается отдельный человек. Очень трудно совмещать работу не только программиста, но и дизайнера, однако иногда это удаётся сделать в одиночку, к тому-же некоторые проекты не требует очень качественной графики, либо-же берутся уже готовые картинки и спрайты.
Читайте: Где брать спрайты для игр?
Графика и рисование это очень затратный процесс.По моему опыту, если вы делайте игру в одиночку, на графику может уходить 40-60% общих затрат времени. По сути дела для инди разработчика одиночки хорошая графика может удвоить общее время на создание игры. И если удвоение с 1 месяца до 2 это не страшно, то удвоение с 2 до 4 лет, это очень много.Поэтому крайне рекомендуется для начинающих разработчиков использовать все возможные способы получить бесплатную графику (может быть взять художника/дизайнера в долю) или же в качестве первых игр сделать графическое оформление минимальным.В крайнем случае, можно заказать графику отдельно на стороне, с помощью аутсорса.
Однако, если вы хотите сделать всё сами, то есть множество способов научиться рисовать. Я тоже учусь (недавно купил планшет) и для обучения рисованию могу посоветовать вам некоторые хорошие ютуб каналы:
Хорошие YouTube каналы про Геймдев и Графику
UNITY
Кроссплатформенный коммерческий игровой движок, разработанный Unity Technologies. Он использовался для таких игр, как Untitled Goose Game, Ori and Will of the Wisps и Hollow Knight.
Фото: epicgames.com
Для разработки: 2D- и 3D-игр.
Платформы: Windows, macOS и Linux.
Языки программирования: C#.
Стоимость: Бесплатно для личного пользования предоставляется студентам и любителям, а также небольшим компаниям, которые зарабатывают менее 100 000 долларов в год. Помимо этого, существуют годовые планы, начинающиеся с 399 долларов в год или 40 долларов в месяц.
Обучение: Unity предоставляет некоторые бесплатные ресурсы, чтобы помочь новичкам начать работу с движком. Но в рамках программы Unity Learn Premium она предоставляет гораздо больше возможностей, включая курсы, учебные пособия и даже сертификаты. Unity Learn Premium в настоящее время бесплатна до 10 июня 2020 года, но обычно стоит 15 долларов в месяц.
Начало работы: https://learn.unity.com/tutorial/create-your-first-unity-project
Unreal Engine
Unreal Engine — игровой движок, разработанный компанией Epic Games. Она известна по ряду игр: FPS шутер «Unreal», блокбастер «Gears of War«, «Infinity Blade» на IOS. С этим инструментом можно создать игры на Windows, Mac, Xbox One S, PS 4K, IOS, Linux, Android, Ouya, VR и для HTML5 Web браузеры.
Если Unity знают по Indie играм (Crossy Road, Superhot, I am Bread и так далее), то Unreal Engine, наоборот, выпускает огромные проекты, будь то Smite, Paragon, Day by Daylight… Эта программа имеет полный набор инструментов для создания своей собственной игры, начиная с мобильной 2D, заканчивая консольным VR блокбастером. Он использует встроенный визуальный скриптинг — Blueprint, который сильно упрощает процесс создания игры.
В Unreal Engine 4 любому пользователю будет доступен исходный код, с которым можно настроить программу под себя, использовать необходимые плагины и написать свои. Присоединившись к Epic Games вы сможете посмотреть 3 миллиона строк кода, доступных на GitHub. Скачать с официального сайта: ссылка.
Выбор технологии (Движка)
Выбор того на чём игра будет работать и какими технологиями должна пользоваться, желательно ещё на начальных этапах формирования идеи. Оценка того какие мощности игре потребуются и какие технологии смогут ей дать то качество реализации, которое вы задумали должна быть сделана на первых шагах. Этот критерий добавит свои пять копеек в оценку целесообразности проекта, поскольку обычно серьёзные движки на которых делаются топовые тяжёлые игры являются платными.
Из бесплатных можно отметить Unity, но с другой стороны эта бесплатность условная. В правилах использования движка этот момент описан подробно. Если ваша игра заработает определённое количество денег, их часть вы должны будете отстегнуть разработчикам Unity. Однако у Unity есть приятная особенность — она работает на всех платформах. Т.е. сделав игру раз, можно с допиливаниями портировать её с ПК и на мобильную платформу и на консоли и даже в браузеры, главное только чтобы от переходя между способами управлениями не терялся геймплей.
Что касается лёгких и простых игр, то здесь можно и на HTML+JS, а можно на чём-то ином. Надо обязательно проанализировать доступные движки для той платформы под которую вы делаете игру и на основе этого делать выбор.
Программы и движки для разработки игр
- Unreal Engine — бесплатный для использования движок, написанный на языке С++. Оплата взимается только после того, как игра станет коммерчески успешной, и составляет 5% от общемирового дохода. С помощью Unreal Engine можно создавать игры для Microsoft Windows, Linux, PlayStation, Xbox, Android и других платформ. Программирование возможно на чистом С++ и с помощью встроенного визуального редактора BluePrint. Создание игр на Unreal Engine 4 — перспективное направление, о чем свидетельствует его применение крупными производителями, а также то, что многие компании, предлагающие обучение геймдеву, ориентируются именно на данную технологию.
- Unity 3D — интегрированная среда разработки, с помощью которой были созданы такие игры как The Golf Club, Assault Android Cactus, Dead Trigger. Гибкая система оплаты: разработчики, игры, которых приносит меньше 100 тысяч долларов в год, могут пользоваться Unity бесплатно. Потенциал Unity можно раскрыть с помощью таких языков программирования как C#, Python, Rust, C++.
- Phaser — движок для создания онлайн игр формата 2D на технологии HTML5. Языки программирования — TypeScript и JavaScript. Открытый исходный код и большое русскоязычное коммьюнити делают Phaser выбором номер один для создателей несложных браузерных игр.
- CryENGINE Free SDK — движок, с помощью которого были созданы такие легенды шутеров как Crysis и Far Cry. Среди главных возможностей — достаточно реалистичная графика, детальная прорисовка ландшафтов и других карт. Использование бесплатное, при коммерческом распространении — гибкая тарификация в зависимости от количества продаж.
Заключение
Подведем итоги. Статья началась с описания причин появления альтернативных движков и обзора самых популярных из них. Затем мы обсудили источники арта и другого стаффа для игр. Потом, выбрав один из движков, мы рассмотрели его основы и начали кодировать с его помощью простую двумерную игру — классические танки. Мы разработали простенькую аркаду с препятствиями, минимальным искусственным интеллектом, двумя врагами и оружием. После этого мы отладили свою игру прямо на девайсе под управлением Android и, когда все стало готово, собрали пакет для установки игры под любой Android. И все это в рамках одной статьи.
Игровая индустрия в целом и тем более инди-сцена постоянно в движении, постоянно развиваются. Это же относится к инструментарию инди-разработчиков. Он прогрессирует: появляются новые тулзы, улучшаются старые. Если раньше на многие средства разработки игр глядел с иронической улыбкой, то сейчас какие-то тулзы достигли очень впечатляющего состояния. И, применяя их, можно создавать вполне увлекательные и современно выглядящие игры.
Инди-сцена расширила игровую индустрию. Она показала, что не только 3А-проекты с продвинутой графикой могут быть интересными. Она очень разбавила этот стереотип. Сейчас мы играем и в игры с пиксель-артом, и в игры с оформлением в темных тонах, и в игры, где весь процесс заключается в чтении документов и вынесении приговоров на их основе, мы смотрим в монитор, ведя допрос предполагаемого преступника, с целью понять: виновен он или нет. Потому что все эти игры имеют глубокий смысл. Мы играем в старые классические игры с улучшенной графикой, с новыми режимами и на современных устройствах. Все это стало возможным благодаря инди. Инди-игры несут в себе глубокие идеи, это игры для души, в которые по-настоящему хочется играть.