Как создаются игры. Основы разработки для начинающих игроделов - Григорий Радовильский
Шрифт:
Интервал:
Закладка:
• К более сложным системам относятся такие сервисы, как Asana и Jira. Они позволяют провести разделение на отдельные проекты внутри одного аккаунта, а также вести более сложную структуру работы с отдельными задачами. Начиная с объединения отдельных задач в группы пользовательских историй и фичей (например, задача создания монстра, для которой требуется работа дизайнера, художника и программиста) и заканчивая созданием собственных пайплайнов внутри сервиса (мы можем настроить автоматическую передачу задачи в тестирование при ее завершении или автоматическую передачу персонажа художнику по текстурам после завершения работы над моделью). В этом случае возможности контроля и автоматизации процессов на проекте практически бесконечны. Более того, Jira имеет прямую интеграцию с сервисом Confluence, так как они являются частью одной экосистемы.
При работе в компании есть сотрудник, ответственный за менеджмент проекта, но, если работать в одиночку, этим придется заниматься самостоятельно. Это необычайно сложно, ведь придется перенести все задачи из документации в отдельный сервис и поддерживать его в актуальном состоянии. Но в то же время это и необычайно важно – только так есть возможность объективно понимать, насколько проект готов и сколько еще осталось сделать. При этом выполнение маленьких задач позволяет чаще радоваться пусть и небольшим, но достижениям, ведь работа, не приносящая радости, может быстро надоесть.
ИГРОВЫЕ ДВИЖКИ
Вопрос движка – самый сложный из всех в индустрии цифровых развлечений. Кетчуп или майонез? Кошки или собаки? Unity 3D или Unreal Engine?
Фаворитами гонки игровых движков на сегодняшний день являются Unity 3D и Unreal Engine. Традиционно считается, что первый выбирают инди-разработчики и те, кто собирается делать игру для мобильных устройств. Второй же считается выбором художников и тех, кто собирается делать игру для PC и консолей. Хотя и на Unity 3D делают игры для PC и консолей, и Unreal Engine используют инди-разработчики.
В современном мире огромное множество движков. Некоторые из них имеют специфические ограничения. Какие-то движки изначально стоят баснословных денег, другие предназначены для создания только 2D-игр. Есть Game Maker, Godot и даже RPG Maker, предназначенный исключительно для создания классических 2D ролевых игр. Многие компании в итоге приходят к разработке собственных движков, которые потом становятся открыто доступны другим разработчикам, как Defold, созданный компанией King, прославившейся своими играми в жанре match-3. Но, конечно же, на этом движке можно делать не только match-3-игры.
При выборе движка нужно прежде всего исходить из наших знаний и навыков: опыт в программировании, дизайне уровней, скриптовании, создании собственных инструментов под движок и т. п. Изучение нового движка и получение новых навыков требуют много времени, которое можно потратить на создание новой игры. Не говоря уже о том, что для выпуска игры может понадобиться довольно глубокое знание возможностей движка, для чего необходим многолетний опыт работы с ним.
Если же у нас вообще нет опыта работы с каким-либо игровым движком, нет опыта в программировании или дизайне уровней, то, наверное, лучше всего будет уделить время самым популярным движкам и пройти пару уроков для начинающих на учебных порталах, чтобы в итоге выбрать тот, который покажется наиболее удобным, ведь нам в этом движке еще работать и работать.
ПРОГРАММИРОВАНИЕ
Для написания кода программ так же, как и для создания документации, необходима специальная программа – среда разработки (Integrated Development Environment, IDE). Тут выбор не такой большой, как среди других сервисов, но он может серьезно повлиять на работоспособность, так как каждая среда разработки имеет особенности, свой набор подсказок, автогенерацию программного кода, набор горячих клавиш.
• Visual Studio – среда разработки от компании Microsoft, поддерживающая работу со всеми распространенными языками программирования. Существует бесплатная версия, имеющая некоторые ограничения.
• VS Code – тоже среда разработки от компании Microsoft, имеющая широкую поддержку дополнений, позволяющих работать со множеством языков программирования для множества игровых движков. VS Code бесплатный.
• Программы от компании Jet Brains имеют отдельные IDE для разных языков программирования, а также надстройки для Visual Studio. Не имеют бесплатных версий.
• Xcode – среда разработки компании Apple, которая предоставляет инструменты для создания приложений для устройств и операционных систем компании Apple. Она платная и запускается только на компьютерах с OS X.
Microsoft – это одна из самых влиятельных мировых IT-компаний и один из лидеров по созданию программного обеспечения, компьютеров и аксессуаров к ним, консолей, мобильных телефонов, разработке и изданию видеоигр. Одно из главных ее достижений – создание операционной системы Windows. Компания основана в 1975 году Биллом Гейтсом и Полом Алленом, когда они занялись разработкой интерпретатора языка BASIC для компьютера Altair 8800. Это был лишь старт, а триумфальное шествие началось с сотрудничества с IBM в 1981 году. В 1983 году Аллен покинул компанию. В то же время была представлена компьютерная мышь Microsoft Mouse для работы с текстовым редактором Word. В 1984 году появился один из знаковых продуктов – интерфейс Windows, оболочка для MS-DOS, а уже к 1989 году был укомплектован пакет приложений программ MS Office, включающий, помимо Word, еще и Excel, и PowerPoint. Теперь без Windows сложно представить себе работу на компьютере. Там есть и встроенные казуальные игры: «Солитер», «Косынка», «Паук», «Червы», «Сапер», «Свободная ячейка», «Пинбол» и другие.
В игровой индустрии Microsoft в данный момент занимает одну из лидирующих позиций. Компания создала семейство игровых приставок Xbox, владеет собственной студией разработки Microsoft Game Studio, а также издает многочисленные эксклюзивы для своих платформ. В 2014 году корпорация поглотила компанию Mojang, разработчика Minecraft, в 2018 году купила сервис, облегчающий разработку многопользовательских игр PlayFab, а также сервис для хранения исходного кода и совместной разработки GitHub.
Число игр, разработанных и изданных Microsoft, огромно, вот только некоторые знаменитые тайтлы: серии игр Age of Empires, Close Combat, Microsoft Flight Simulator, Monster Truck Madness, Project Gotham Racing, Fable, MechAssault, Forza Motorsport, Jade Empire, Alan Wake, Ori, ReCore, Quantum Break, Halo и другие.
Как и в других областях, для программистов необычайно важны удобство и привычки. Но в отличие от других инструментов, инструменты программистов практически не зависят ни от языка программирования, ни от игрового движка, для которого они будут писать код.
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ
Для создания и проверки математических моделей можно использовать два типа инструментов: таблицы и программы.
• Табличные редакторы – это привычные нам Excel (входящий в комплект MS Office) и Google Sheets (входящий в комплект Google Drive). В основе табличных редакторов находится система формул, которая позволяет генерировать, масштабировать и распределять данные в удобном для работы виде.
• Программы – это либо разработанные специально для нашей игры алгоритмы, позволяющие проверить или создать математическую модель, либо сервисы, позволяющие создавать алгоритмы управления ресурсами: например, сервис Machinations.io.
ИНСТРУМЕНТЫ ДЛЯ ДИЗАЙНА ИНТЕРФЕЙСОВ
Собственных инструментов для дизайна интерфейсов у разработчиков игр нет, но можно использовать инструменты, созданные для дизайнеров мобильных приложений и веб-сайтов.
Эти инструменты позволяют не только создать макет интерфейса приложения или игры, но и собрать небольшое демо того, как этот интерфейс будет работать. Это демо можно использовать как интерактивную подсказку для художников и программистов, а также для исследования пользовательского опыта еще до того, как программисты приступят к реализации интерфейсов.
• Среди отдельных программ можно отметить Adobe XD, Axure и Balsamiq.
• Из онлайн-сервисов можно обратить внимание на сервисы Figma и Sketch. Одним из главных преимуществ онлайн-сервисов является возможность совместной работы над макетами.
ИНСТРУМЕНТЫ ДЛЯ ДВУХМЕРНОЙ ГРАФИКИ
Среди инструментов для работы с двухмерной графикой есть безоговорочный лидер – компания Adobe с ее знаменитыми программами Photoshop (для растровой, пиксельной графики) и Illustrator (для векторной графики). Но существует довольно много альтернатив, в том числе бесплатных: например, Gimp. Очень популярны также Paint Tool Sai, Krita и Clip Studio Paint.
Для создания анимации в 2D с использованием методики скелетной анимации можно использовать программу Spine.
ИНСТРУМЕНТЫ ДЛЯ ТРЕХМЕРНОЙ ГРАФИКИ
Для работы с трехмерной графикой есть инструменты универсальные и предназначенные для работы над отдельными аспектами 3D-графики.
• Универсальные инструменты – это программы компании Autodesk: Maya, 3ds Max, а также Cinema 4D, бесплатный Blender и другие. Эти программы позволяют заниматься и созданием моделей, и текстурированием, и анимированием.
• Для создания моделей и текстурирования существуют отдельные довольно популярные инструменты: Substance Painter 3D, Substance Designer, Marvelous Designer, 3D Coat, ZBrush и другие.
• Некоторые программы для работы с 3D-графикой имеют довольно глубокую