Содержание
Учимся делать 2D-игры с нуля — Pixonic на vc.ru
Курсы и туториалы по созданию двумерных игр — вторая статья из цикла «Разработка».
158 357
просмотров
Автор: Дмитрий Старокожев. Начал программировать на пятом курсе университета, влюбился в Objective-C и разработку под iOS, после чего попал в Pixonic. Работает ведущим разработчиком на проекте War Robots, а в свободное время преподаёт.
Вероятно, в ближайшее время кто-то из читателей этого цикла статей напишет первую строчку кода своего будущего прототипа. Потому что с движком мы уже определились и переходим к практике.
Учить программированию в одной статье нет смысла. К тому же, руководств в интернете множество. Многие наверняка будут делать свои первые прототипы в 2D — на этой теме и сконцентрируемся сегодня.
Если вы решили делать сразу в 3D, не спешите закрывать страницу — знания всё равно пригодятся. Приступим.
2D. Звучит олдскульно, правда? В наши дни разработка двумерных игр приобретает какой-то особый шарм. Чувствуешь себя ценителем, которому открылась недоступная другим истина. Но одного чувства прекрасного недостаточно — у разработки в 2D есть множество нюансов.
Очевидно, что главная особенность двухмерных игр — отсутствие третьего измерения. Как определить, кто ближе к зрителю: машина, куст или огромный боевой робот? Чтобы решить эту проблему, во всех 2D-движках предусмотрен механизм сортировки спрайтов — то есть двумерных графических объектов — по оси Z. Он может называться Z-order или Sorting Layers — в любом случае, с его помощью можно перемещать объекты со слоя на слой.
Другими словами, проблема уже решена за нас. Можно не тратить силы на изобретение велосипеда, а обратить свое внимание на особенности конкретных движков и жанров.
Звук и анимация
Для разработки прототипа звуки и анимация в большинстве случаев не так важны. Но нужно понимать, что работа с ними в 2D значительно отличается от 3D. В трёхмерном мире анимация скелетная: у каждой модели есть «скелет» (rig). Двигая его участки, разработчик анимирует модель.
А в 2D анимация создаётся покадрово: нужно создать атлас изображений, чтобы они стали последовательностью кадров анимации (sprite sheet). Уолт Дисней всё делал кистью и роллером, и это были шедевры (с). Этим же способом можно создавать очень красивых рисованных персонажей. Как в Cuphead, которая разрабатывалась на Unity.
Cuphead
А вот со звуком в 2D всё проще. Если при отрисовке мира отсутствие третьего измерения накладывает ограничения, то работа со звуком, наоборот, упрощается. Не нужно учитывать расстояние от слушателя (персонажа в игре) до источника звука — слушателем всегда будет выступать сам игрок.
Но нужна ли вообще прототипу музыка? Не думаю, что можно дать однозначный ответ (как и с анимацией). Давайте посмотрим на Hidden Folks. Это не просто 2D-игра, а настоящее произведение искусства.
Весь звук в Hidden Folks состоит из странных похрюкиваний и притопываний её разработчика, что само по себе USP — уникальное торговое предложение игры. Каждое прикосновение к экрану смартфона заставляет улыбнуться. Ладно, если запись похрюкиваний вам не подходит, в Asset Store Unity можно найти огромное количество платных и бесплатных ассетов для прототипа, а иногда и для релизной версии игры.
С чего начать
Рекомендации по выбору жанра можно прочитать в статье прошлого цикла. Здесь же мы будем говорить о некоторых путях, по которым можно пойти начинающему разработчику. Кому-то кажется, что вариантов не так много и обязательно надо закончить профильный университет с хорошей профессурой. Но если копнуть глубже, то обнаруживается бесконечный океан знаний, которые лежат прямо перед носом — остается только ухватиться за предоставленную интернетом возможность. Из доступного на ум сразу приходят:
- Туториалы.
- Онлайн-курсы.
Туториалы (tutorial) отличаются от курсов тем, что дают чёткий алгоритм действий для воспроизведения результата. Они не выходят за рамки поставленной задачи и отлично подходят, когда нужно сделать что-то конкретное, пока не пропал энтузиазм.
Туториалы
При первом поиске браузер выдаст миллионы ссылок с видеоуроками, статьями и готовыми проектами. Я подобрал несколько хороших вариантов по разным игровым жанрам. К тому же, среди других работ авторов можно найти ещё больше годного контента.
Есть YouTube-канал Brackeys. На нём — отличное вводное видео о том, с чего начать разработку платформера с плиточной графикой (tile based). Если сложно воспринимать на слух, можно включить английские субтитры.
Автор ролика приводит много примеров существующих проектов и объясняет, чем отличаются два различных подхода к созданию двумерных игр: sprite и tile based. В плейлистах канала можно найти староватый, но не потерявший актуальность туториал по созданию полноценного 2D-платформера с нуля — пошагово и со всем кодом, который можно повторить у себя и получить такой же результат.
На канале интересно практически каждое видео: даже если вы не планируете прямо сейчас врываться в разработку, стоит посмотреть хотя бы ролики о том, что нового появляется в Unity от версии к версии. Кстати, некоторые выпуски спонсирует сама Unity Technologies.
Еще один канал от энтузиаста — N3K EN. Можно найти ролики как по отдельным механикам или основам C # и Unity, так и плейлисты по разработке проектов с нуля. Например, создание прототипа Fruit Ninja за четыре часа в режиме реального времени со всем кодом.
Если учиться по видеороликам не очень нравится, есть хороший туториал в виде полноценной книги на английском языке. Она проведёт вас от установки Unity пятой версии до конца разработки двумерного скролл-шутера.
Наконец, есть официальные туториалы от Unity. Видео сопровождаются текстовыми описаниями и даже листингами программного кода. В процессе обучения создаётся roguelike RPG в tile based мире.
Чтобы в точности повторить результат, Unity сразу предлагает бесплатно скачать все ассеты этого проекта. Очень удобно и не надо ломать голову над тем, где взять симпатичные спрайты, а не разноцветные прямоугольники. В последнем ролике вы даже научитесь реализовывать управление персонажем под сенсорные экраны мобильных устройств.
Принимаясь за изучение нового туториала, не стоит волноваться о том, какую версию движка использует автор.
Unity везде ведёт себя похожим образом, а функции движка пятой версии доступны и в самой последней. Конечно, инструменты совершенствуются, но авторы обучающих материалов редко копают настолько глубоко, так что об этом можно не беспокоиться.
Курсы
Если нужно подтянуть навыки программирования, то на арену выходит старый и проверенный игрок — Code School. Всё происходит прямо в интерфейсе сайта, который выглядит свежо и удобно. И не чувствуешь на затылке укоризненный взгляд Лобачевского со старого портрета над доской с графиком дежурств. Точно стоит обратить внимание хотя бы на бесплатные курсы, чтобы понять, насколько удобен такой формат обучения.
Есть официальные курсы от Unity, не надо далеко ходить. Кажется, что они и дальше готовы инвестировать в это направление (а после курсов можно еще получить сертификат).
У GeekBrains есть два отличных курса, разбитых по уровням сложности. Раз уж мы говорим о 2D-играх, нас интересует первый. Оба курса требуют определенной алгоритмической подготовки, программированию там не учат, только разработке на Unity.
Вы научитесь делать игры в 2D буквально с нуля: на первом уроке установите движок, а на восьмом уже запустите проект на Android. Вы даже можете заметить меня в списке преподавателей и случайно попасть на мой поток.
Хотите узнать, насколько глубока кроличья нора? Я падаю, стул тоже падает, здесь всё в 2D, и мне это очень нравится. Присоединяйтесь.
Домашнее задание
Наступает время самостоятельной работы. Пора писать код своей первой игры!
- Определите главную механику. Например, у Tower Defence это строительство башен и волны врагов.
- Найдите туториал по главной механике или по жанру в целом.
- Реализуйте главную механику на практике, используя примитивную графику.
О нюансах 3D-игр и туториалах для них поговорим отдельно — в следующей статье.
Это статья из нашего большого проекта с vc.ru. Если выполнять все задания, можно — ни много ни мало — научиться делать видеоигры. И выиграть лимитированное издание PS4 Pro в конце каждого цикла статей.
Цикл «Разработка»:
Как создать игру на Unity, 2D
Из этой статьи вы узнаtте, как начать создавать игру с помощью Unity, начиная только с идеи. Кроме того, вы изучите хороший метод запуска для создания игр Unity 2d с нуля.
Важно отметить, что это руководство не сделает из вас полноценного разработчика Unity и не научит программировать. Однако это поможет вам быстро заставить что-то работать на экране.
Unity — один из самых популярных доступных бесплатных игровых движков. Он также имеет отличный 2D-движок, поэтому 3D-модели не нужны. Ещё одной привлекательной особенностью Unity является то, что он не требует обширных знаний в области программирования.
Разработка игр с помощью Unity хороша для создания вещей, которые уже созданы. Короче говоря, Unity идеально подходит для разработки небольших инди-игр.
Ниже приведено пошаговое руководство по созданию 2D-игры в Unity для начинающих.
Содержание
- Шаг 1. Идея
- Шаг 2. Получите инструменты
- Шаг 3. Настройте свой проект
- Шаг 4. Создайте карту
- Шаг 5. Сделайте персонажа
- Шаг 6. Дорожная карта и сборка
- Заключение
Шаг 1. Идея
Шаг первый довольно прост. Вы легко можете сделать это в уме.
Перед тем, как начать, определитесь, какую игру вы делаете. Чтобы понять это, вы должны задать себе несколько вопросов по игровому дизайну:
- Это платформер, игра с видом сверху или, может быть, изометрическая?
- Какая будет тема и основная история?
- Как это будет выглядеть?
- Какой движок вы будете использовать?
- Главное, чем ваша игра будет выделяться? Какую новую механику или идею он представляет или что будет хорошо?
Хотя вам не нужны твёрдые или конкретные ответы на большинство из этих вопросов, вам всё же необходимо общее представление о том, что вы собираетесь делать, прежде чем начать. Вы можете расширить эту идею и создать её базовый прототип позже. Кому-то нравится делать это на бумаге, а кто-то может просто провести мозговой штурм.
Для начала сделаем платформер. В этом примере особое правило платформеров состоит в том, что игрок должен управлять двумя персонажами одновременно, чтобы решать головоломки, а персонажи должны встретиться, чтобы пройти уровень.
Как только у вас появится несколько идей о том, что делать, у вас будет руководство, с которого можно начать. Теперь можно переходить к прототипированию.
Шаг 2. Получите инструменты
Чтобы создать игру в Unity, вам понадобится Unity. Вы можете скачать персональную версию здесь . Имейте в виду, что личная версия необходима только в том случае, если вы не получили более 100 тысяч долларов для финансирования или дохода от своей игры.
Начните с загрузки Unity Hub. Затем откройте концентратор, выберите «Установить» и нажмите «Добавить». В этом руководстве будет использоваться версия Unity 2019. 2.14f1. Вы можете установить любые пакеты, которые хотите или для которых есть место. В этом руководстве игра будет запущена в Windows, поэтому убедитесь, что установлен флажок «Поддержка сборки Windows».
Мы используем Unity версии 2019.2.14f1
Вы также можете создавать графику для своей игры. Поскольку Unity использует пиксельную графику , я настоятельно рекомендую использовать GraphicsGale . GraphicsGale бесплатна, проста в использовании и обладает множеством функций. Однако вы можете свободно использовать любой удобный вам редактор, будь то Photoshop, Blender или Windows Paint.
Шаг 3. Настройте свой проект
Пока Unity устанавливается, вы можете потратить время на подготовку некоторых своих ресурсов. Вам понадобится некоторая замещающая графика, называемая заполнителями, чтобы вы могли видеть, что вы делаете. Чтобы нарисовать все анимации вашего персонажа, врагов и окружающую среду, потребуется время, поэтому вы можете начать работу с простой графикой.
Для этого шага мы используем GraphicsGale, но вы можете использовать любой редактор, который вам нравится. Начните с того, что сделайте замену стен в игре. (Помните, вы всегда можете сделать больше позже.) Стены должны быть размером 100 на 100 пикселей.
Вот пример:
Сделайте что-нибудь быстрое и лёгкое, чтобы представить элементы нашей игры.
После завершения загрузки Unity вы можете открыть Unity Hub и начать новый проект. Назовите проект как хотите, но не забудьте выбрать 2D для настройки проекта.
Обязательно используйте 2D-шаблон.
Добро пожаловать в Unity! Теперь вы должны посмотреть на редактор Unity. Чтобы перемещаться по 2D-пространству в окне редактора, используйте среднюю кнопку мыши для панорамирования и колесо прокрутки для увеличения. Камера в центре поля представляет то, что увидит игрок.
В Unity есть невероятная функция под названием Unity Asset Store. Asset Store полон готовых фрагментов игры, таких как модели, текстуры, утилиты или программы AI. Они доступны для продажи, а некоторые даже предлагаются бесплатно. Из-за этого легко создать игру, не создавая слишком много ресурсов самостоятельно. Вы можете просто взять заранее запрограммированную игровую механику и прикрепить её к собственному арту.
Чтобы получить доступ к этим бесплатным базовым программным ресурсам, просто перейдите на вкладку «Asset Store» в верхней части окна просмотра. Отсюда перейдите в раздел «Лучшие бесплатные ресурсы» и загрузите пакет «Стандартные активы (для Unity 2017.3)». Возможно, вам придётся войти в систему или создать учётную запись.
Загрузите стандартные ресурсы из Unity Store.
После загрузки пакета нажмите «Импорт» (она заменяет кнопку загрузки после загрузки ресурсов), чтобы импортировать пакет в текущий проект Unity. Вам будет представлен длинный список флажков. Что вы добавляете из пакета, зависит от вас. Для этого руководства вам понадобятся только папка «2D» и папка «CrossPlatformInput» в разделе «стандартные ресурсы».
Вам также понадобятся некоторые инструменты для создания 2D-игр в Unity, которые вам немного помогут. Перейдите по этой ссылке и загрузите Git в виде zip-архива. Затем разархивируйте и перетащите папку внутри в обозревателя ресурсов. Возможно, вам придётся перезапустить Unity после этого, чтобы он работал правильно.
Теперь у вас должно быть всё необходимое для начала работы.
Шаг 4. Создайте карту
Чтобы начать создание карты, сначала вернитесь на вкладку «Сцена». В обозревателе ресурсов в нижней части экрана щёлкните правой кнопкой мыши и выберите создать папку. Назовите новую папку с ресурсами «Плитки».
Вы также захотите добавить свою иллюстрацию-заполнитель в браузер ресурсов. Просто перетащите всю папку из окон в обозревателя ресурсов.
Затем создайте палитру, которая будет служить блоками для вашего персонажа. Перейдите в Window> 2D> Tile Palette, чтобы открыть окно Tile Palette. Щёлкните «Создать новую палитру», чтобы создать новую палитру плиток. Назовите его «solid», но оставьте все значения по умолчанию и сохраните его в папке «Tiles».
Ваша новая палитра плитки, там ещё ничего нет.
Чтобы добавить искусство в палитру, просто перетащите свой заполнитель для блоков уровня в окно выше.
Затем создайте что-нибудь для рисования с помощью палитры. В окне Hierarchy щёлкните правой кнопкой мыши и выберите 2D Object> Tilemap.
Щёлкните здесь правой кнопкой мыши, чтобы создать карту листов.
Теперь у вас должна быть возможность рисовать на своём уровне. Постарайтесь пока держать его в пределах границ камеры и добавить несколько платформ, на которые можно прыгать.
Наконец, нужно позаботиться об одном последнем шаге. Прямо сейчас ваша карта — это только визуализация, и ваш персонаж не будет сталкиваться со стенами, которые вы построили. Фактически, ваш персонаж провалится прямо сквозь пол. Вы должны добавить свойство физики, чтобы игра знала, что эти квадраты имеют значение, и они созданы не только для того, чтобы красиво выглядеть.
Чтобы добавить физическое свойство, щёлкните карту тайлов в редакторе, а затем прокрутите вниз в окне инспектора (с другой стороны). Нажмите кнопку «Добавить компонент».
Компонент, который вам нужно добавить, называется Tilemap Collider 2D. Просто воспользуйтесь окном поиска, чтобы найти его и добавить на карту листов.
Шаг 5. Сделайте персонажа
Теперь, когда у вас есть карта, следующий шаг — создать кого-нибудь, кто будет перемещаться по ней. К счастью, Unity проделала большую часть тяжёлой работы на этом этапе. Если вы зайдёте в папку стандартных ресурсов> 2D> Prefabs в браузере ресурсов, вы увидите, что там есть маленький робот под названием «CharacterRobotBoy.prefab».
Вот он.
Помните, как к вашей тайловой карте был прикреплён компонент столкновения? Что ж, нашему персонажу нужно много компонентов, прикреплённых к нему, чтобы функционировать. Вместо того, чтобы каждый раз перестраивать каждый компонент, вы можете создавать префабы, которые будут служить игровыми объектами. Их можно использовать снова и снова.
Теперь перетащите мальчика-робота в свою сцену и щёлкните по нему в иерархии. Глядя на все компоненты, прикреплённые к нему, вы заметите, что у него есть система анимации, средство рендеринга спрайтов и несколько различных функций столкновения и управления.
У него есть система анимации, средство визуализации спрайтов и несколько различных функций управления столкновениями и контроля.
Хотя вы можете использовать его сейчас, вам следует создать собственного персонажа, который в итоге заменит его. Его спрайт и анимация будут служить вам заменой, пока вы продолжаете развиваться вокруг него.
Теперь, когда мальчик-робот находится в вашей сцене, вы можете играть за него. Нажмите кнопку воспроизведения в верхней части экрана, чтобы попробовать.
Поскольку идея игровой механики в этом уроке состоит в том, чтобы встретить двух персонажей, вам следует перетащить в сцену второго мальчика-робота, возможно, с другой стороны. Таким образом, каждый раз, когда вы играете в игру, вам придётся координировать свои действия, чтобы встретить двух персонажей.
Шаг 6. Дорожная карта и сборка
Дорожная карта — один из многих шагов, которые вы можете предпринять отсюда. Теперь, когда у вас есть прототип, вся трудоёмкая работа по настройке выполнена.
Создание дорожной карты — отличный способ спланировать инди-игру. Вы можете составить дорожную карту, продумав все функции, которые вам нужны в игре, разместив их на временной шкале и перемежая их со временем, чтобы внести улучшения и исправить ошибки.
Например, ваша дорожная карта может выглядеть примерно так:
- Добавить систему монет.
- Добавить здоровье и урон игрока.
- Основные враги.
- Проверка ошибок.
- Улучшить базовое искусство.
- Создавайте игровые сценарии и выигрывайте.
- Добавить элементы пользовательского интерфейса.
- Добавить систему меню.
Это начинает рассматривать возможности игры в перспективе и помогает увидеть, сколько работы осталось между этим прототипом и готовой игрой. Знать это расстояние важно, так как у вас не всегда есть неограниченное время и внимание, которые можно вложить в игру.
Дорожная карта также помогает контролировать ваши ожидания. После того, как вы создадите дорожную карту, следующим шагом будет следовать ей, продолжая улучшать свою игру.
Заключение
В этом руководстве вы познакомились только с началом создания игры. Остальное зависит от вас. У Unity есть активное сообщество, и существует множество обучающих ресурсов, которые выходят далеко за рамки этого простого игрового руководства. Некоторые из лучших учебных ресурсов включают в себя кодирование или дизайн игры Bootcamps. Путь к тому, чтобы стать разработчиком игр, начинается с вашей первой игры, какой бы простой она ни была.
С чего начать разработку 2D-игр на Unity
Руководство по решению
Практическое руководство, которое поможет вам начать работу и получить максимальную отдачу от разработки 2D-игр с помощью Unity.
Unity — это не просто 3D-платформа; Unity — это полноценная платформа для создания красивых и увлекательных 3D- и 2D-игр. Фактически, на Unity создается больше 2D-игр, чем на любой другой игровой технологии, и такие компании, как Disney, Electronic Arts, LEGO, Microsoft, NASA, Nickelodeon, Square Enix, Ubisoft, Obsidian, Insomniac и Warner Bros, полагаются на наши инструменты. и функции для управления своим бизнесом.
Полная платформа для разработки 2D-игр
Unity — это полная платформа для 2D-игр. Он позволяет выполнять развертывание на всех основных и новых мобильных операционных системах, ускорять процесс разработки, оптимизировать игру, взаимодействовать с аудиторией и добиваться коммерческого успеха.
Начать создавать
Благодаря множеству руководств и готовых материалов вы сможете эффективно перейти от прототипирования к полномасштабному производству с помощью интуитивно понятных рабочих процессов, поддерживающих разработку на каждом этапе.
Если вы столкнулись с проблемами или вам нужна помощь в установке Unity, ознакомьтесь с этой частью нашего руководства, которое шаг за шагом проведет вас через весь процесс.
2. Приступайте к работе
Если вы новичок в Unity, вот наши рекомендуемые учебные ресурсы для начала работы.
После того, как вы изучите приведенный ниже материал, вы будете готовы изучить широкий спектр учебных пособий в нашем разделе обучения. Мы также предлагаем обширную документацию как по сценариям, так и по интерфейсу редактора.
Сообщество Unity также предлагает чрезвычайно богатый и разнообразный источник материалов. Просто введите в поиск «Учебник по Unity [Добавьте интересующую вас тему]», и вы найдете множество отличных ресурсов.
Вам также следует подумать о коммерческом обучении, таком как Полный курс Unity на Udemy, который предлагает сочетание элементов 2D и 3D.
Учебное пособие по 2D-НЛО
Начните с создания простой 2D-игры с НЛО, в которой представлены многие принципы работы с Unity и создания 2D-игр, включая игровые объекты, компоненты, префабы, физику и сценарии.
Узнать больше
Учебное пособие по 2D-рогалику
Познакомьтесь с более продвинутыми методами, в том числе с созданием процедурных уровней на основе плиток, внедрением пошагового движения и добавлением системы голода, звука и мобильного сенсорного управления.
Узнать больше
Специализированная секция для создания 2D-игр
Узнать больше
Сортировка и 9-нарезка в Unity 2D
В этом интерактивном учебном занятии мы изучим рабочий процесс компоновки простой 2D-сцены с использованием групп 2D-сортировки, спрайтовых сеток и 9-Нарезка спрайтов, представленная в Unity 5. 6. Мы будем использовать эти инструменты для создания простой 2D-игры. В этом эпизоде мы представляем наши цели и демонстрируем нашу систему мини-карт.
Сеанс просмотра
Полное руководство по разработке игр с помощью Unity
Этот курс знакомит вас с Unity Engine и основами программирования на C#, а затем углубляется в разработку ваших первых 2D- и 3D-игр.
Исследуйте курс
Присоединяйтесь к нашему сообществу
Нужна помощь? Вы всегда можете задать вопрос сообществу Unity или проверить последние обсуждения сообщества на форумах.
Ответы
Если вы застряли, всегда можно найти помощь в сообществе Unity. Ответы — это место, где наши разработчики помогают друг другу конкретными ответами на конкретные вопросы.
Ознакомиться с ответами
Форумы Unity
Форумы являются центральным центром обсуждений и болтовни в нашем сообществе. Здесь вы можете высказать свое мнение, показать, над чем вы работаете, и посмотреть, что делают другие.
Перейти к форумам
Сайты внешних сообществ
Сайты внешних сообществ и форумов также стоит изучить для вопросов/обсуждений. Два особенно интересных форума для посещения — Stack Overflow и Reddit.
Unity при переполнении стека
Unity на Reddit
Группы пользователей Unity
По всему миру существуют группы пользователей Unity, где вы можете собираться вместе с людьми в местных группах для обмена идеями, совместной работы над проектами Unity и общения. Некоторые группы также предлагают вводные семинары для новых пользователей.
Обнаружение групп пользователей
3. Спланируйте жизненный цикл создания 2D-игры
Дизайн персонажей и игровой механики, а также разработка логики — не единственные аспекты, которые имеют значение в жизненном цикле создания игры. Вот некоторые другие важные действия, которые вы можете предпринять, включая описания и то, как Unity помогает для каждого из них.
Unity Collaborate
Синхронизируйте свой проект в команде, чтобы ваша команда могла эффективно работать вместе. Unity Collaborate позволяет легко делиться вашим проектом в Интернете, приглашать участников и создавать резервные копии ваших проектов.
Узнать больше
Unity Cloud Build
Как можно чаще создавайте непрерывные сборки для конкретных платформ на соответствующих платформах, чтобы выявлять технические проблемы на ранних этапах и быстрее распространять их среди тестировщиков. Unity Cloud Build избавляет от необходимости просить разработчика или инженера-строителя создать двоичную версию, которую тестировщики могут загрузить на устройства. Вы можете одновременно и без особых усилий создавать приложения для iOS и Android (и других платформ) в облаке. А поскольку Cloud Build интегрирован с Collaborate, он без проблем работает для всей вашей команды.
Узнать больше
Отчеты о производительности Unity
Узнайте о состоянии вашей игры, чтобы исправить любые проблемы и избежать плохих оценок. Как только ваша игра запущена, важно фиксировать проблемы в режиме реального времени. Unity Performance Reporting предлагает полную систему отчетов и анализа сбоев для поддержки этого процесса.
Узнать больше
Unity Analytics
Поймите свою аудиторию и то, как они взаимодействуют с вашим контентом, чтобы обеспечить удержание и успех. Unity Analytics, изначально интегрированная с движком Unity, дает бесценную информацию о поведении вашей аудитории. Эта информация поможет вам оптимизировать игровой процесс и стратегии монетизации на основе игровых данных в реальном времени.
Узнать больше
Монетизация
Выберите правильную модель монетизации на ранней стадии, чтобы убедиться, что она хорошо интегрирована с вашей игровой механикой. Для бесплатных игр Unity имеет встроенную рекламную платформу и предлагает интеграцию с IAP без кода. Объедините наши рекламные объявления Unity Plug and Play, IAP и аналитику, чтобы улучшить ARPDAU (средний доход на одного активного пользователя в день) и удержание пользователей.
Узнать больше
Сертификаты Unity
Получите конкурентное преимущество на рынке труда, продемонстрировав свое владение основными навыками Unity.
Подробнее
Лучшие практики в Unity
Unity — это сложная, многофункциональная платформа, предлагающая множество решений различных проблем, с которыми вы, вероятно, столкнетесь при разработке игр. Таким образом, существует множество мнений о том, что лучше всего подходит для организации ваших проектов, построения игровой логики и шаблонов объектно-ориентированного программирования, а также для различных методов работы в редакторе.
Тем не менее, существуют определенные основные принципы, соблюдение которых сэкономит вам время и поможет сосредоточиться на творческих аспектах разработки игр. Мы собрали некоторые из этих основных передовых практик от наших инженеров службы поддержки предприятий и команды Unity R&D Content.
Нужна помощь со сценариями C# в Unity?
Если вы новичок в программировании на C#, мы предлагаем вам посетить наш специальный раздел сценариев, который предлагает учебные материалы как для начинающих, так и для продвинутых. Если вы уже знакомы с программированием, но вам нужна помощь с конкретными вопросами по кодированию, мы рекомендуем использовать наш раздел ответов, где вы можете опубликовать и найти ответы на свои вопросы по кодированию от сообщества. У нас также есть подробное справочное руководство по сценариям, в котором представлены рекомендации по API сценариев, предоставляемому Unity.
Вы учитель?
Мы предлагаем целый ряд вариантов поддержки для преподавания, включая бесплатные лицензии для студентов и академических учреждений и учебный план для разработки соответствующего набора курсов.
Читать тематические исследования
Twimler
Узнайте, как любитель прошел путь от разработки игр в свободное время до процветающей студии мобильных игр с семью штатными сотрудниками и более чем 10 миллионами загрузок игр.
Подробнее
Next Games
Compass Point: West от Next Games
Компания Next Games одной из первых успешно монетизировала мобильную игру в жанре Battle Builder с помощью видеорекламы с вознаграждением. Загрузите их тематическое исследование, чтобы узнать, как они создали хорошо интегрированные видеообъявления с вознаграждением, которые имеют высокий уровень подписки и приносят средний доход в размере 0,06 доллара США на игрока в день.
Подробнее
Mindstorm
Lord of Crime от Mindstorm Studios
Узнайте, как Mindstorm, один из ведущих разработчиков игр в Пакистане, использует встроенную аналитику Unity, чтобы прогнозировать потребности игроков и постоянно улучшать свои игры.
Подробнее
Куда идти дальше?
Мы надеемся, что это руководство помогло вам успешно начать работу над проектом разработки Unity. Помните: когда вы выбираете Unity, вы никогда не одиноки. Наши страницы сообщества — отличное место для общения и поиска решений проблем, с которыми вы можете столкнуться. Мы также рекомендуем вам следить за нами в Twitter, Facebook, YouTube, LinkedIn и в блоге Unity, где вы найдете советы и руководства по различным аспектам функций Unity, а также новости о продуктах, обновления и вдохновляющие тематические исследования.
Как сделать простую 2D-игру в Unity
Иногда лучший способ заняться гейм-дизайном — это сразу же приступить к делу. Увидеть результаты своей работы на экране — это захватывающе, и это творческое воодушевление — лучшее топливо для того, чтобы заняться гейм-дизайном.
Этот туториал покажет вам, как начать создавать игру на Unity, начиная с идеи. Вы узнаете немного о том, как создавать 2D-игры на Unity. Кроме того, вы узнаете хороший метод запуска для создания игр Unity 2d с нуля.
Важно отметить, что это руководство не сделает вас полноценным разработчиком Unity и не научит вас
как кодировать видеоигры
. Однако это поможет вам быстро заставить что-то работать на экране.
Найдите свой матч для буткемпа
- Career Karma подберет для вас лучшие учебные курсы по технологиям
- Получите доступ к эксклюзивным стипендиям и подготовительным курсам
Выберите свой интерес
Программная инженерия
Дизайн
Наука о данных
Аналитика данных
Продажи
Кибербезопасность
Имя
Фамилия
Эл. адрес
Номер телефона
Продолжая, вы соглашаетесь с нашими
условия обслуживания
а также
Политика конфиденциальности
, и вы соглашаетесь получать предложения и возможности от Career Karma по телефону, текстовым сообщениям и электронной почте.
Unity — один из самых популярных бесплатных игровых движков. Он также имеет отличный 2D-движок, поэтому 3D-модели не нужны. Еще одна привлекательная особенность Unity заключается в том, что она не требует обширных знаний в области программирования.
Разработка игр на Unity хороша для создания вещей, которые уже созданы.
Полый рыцарь
, фантастический платформер-метроидвания, и
Ори и слепой лес
были созданы на Unity, например. Короче говоря, Unity идеально подходит для разработки небольших инди-игр.
Ниже приведено пошаговое руководство по созданию 2D-игры в Unity для начинающих.
Шаг 1: Идея
Первый шаг довольно прост. Вы можете легко сделать это в своей голове.
Прежде чем начать, решите, какую игру вы делаете. Чтобы понять это, вот пара вопросов по геймдизайну, которые вы должны задать себе:
- Это платформер, игра с видом сверху или, может быть, изометрия?
- Какова будет тема и основная история?
- Как это будет выглядеть?
- Какой двигатель вы будете использовать?
- Самое главное, чем ваша игра будет выделяться? Какую новую механику или идею он вводит или что он сделает хорошо?
Хотя вам не нужны твердые или конкретные ответы на большинство этих вопросов, вам необходимо иметь общее представление о том, что вы собираетесь делать, прежде чем начать. Вы можете расширить эту идею и создать для нее базовый прототип позже. Некоторым нравится делать это на бумаге, а другие могут просто провести мозговой штурм.
Для начала сделаем платформер. Для этого примера специальное правило платформера заключается в том, что игрок должен управлять двумя персонажами одновременно, чтобы решать головоломки, и персонажи должны встретиться, чтобы пройти уровень.
Если у вас есть несколько идей о том, что сделать, у вас есть руководство, с которого можно начать. Теперь можно переходить к прототипированию.
Шаг 1.5: Получите инструменты
Чтобы разработать игру в Unity, вам понадобится Unity. Вы можете
скачать персональную версию здесь
. Имейте в виду, что персональная версия необходима только в том случае, если вы не получили более 100 000 долларов финансирования или дохода от своей игры. Как только вы это сделаете, надеюсь, вам не понадобится этот урок.
Начните с загрузки «Unity Hub». Затем откройте хаб, перейдите в «Установить» и нажмите «Добавить». В этом руководстве будет использоваться Unity версии 2019.2.14f1. Вы можете установить любые пакеты, которые вам нужны или для которых у вас есть место, в зависимости от целей, на которых вы хотите запускать свою игру. В этом руководстве игра будет запускаться в Windows, поэтому убедитесь, что установлен флажок «Поддержка сборки Windows».
Мы используем Unity версии 2019.2.14f1.
Вы также можете создавать графику для своей игры. Поскольку Unity использует пиксельную графику, я настоятельно рекомендую
с помощью GraphicsGale
. GraphicsGale бесплатна, проста в использовании и имеет массу функций. Однако не стесняйтесь использовать любой редактор, который вам удобен, будь то Photoshop, Blender или Windows Paint. Пока вы можете делать изображения с прозрачным фоном, все будет в порядке.
«Карьерная карма вошла в мою жизнь, когда я больше всего в ней нуждалась, и быстро помогла мне пройти буткемп. Через два месяца после выпуска я нашла работу своей мечты, которая соответствовала моим ценностям и целям в жизни!»
Венера, инженер-программист в Rockbot
Шаг 2: Настройте свой проект
Пока Unity устанавливается, вы можете потратить время на подготовку некоторых ваших ресурсов. Вам понадобится замещающая графика, называемая заполнителями, чтобы вы могли видеть, что вы делаете. Чтобы нарисовать все анимации ваших персонажей, врагов и окружающую среду, потребуется некоторое время, поэтому вы можете начать с простой графики.
Мы используем GraphicsGale для этого урока, но вы можете использовать любой редактор, который вам нравится. Начните с создания замены для ваших стен в игре. (Помните, вы всегда можете сделать больше позже.) Размер стен должен быть 100 на 100 пикселей.
Вот пример:
Сделайте что-нибудь быстрое и простое для представления элементов нашей игры.
После завершения загрузки Unity вы можете открыть Unity Hub и начать новый проект. Назовите проект как хотите, но обязательно выберите 2D для настройки проекта.
Обязательно используйте 2D-шаблон.
Добро пожаловать в Единство! Теперь вы должны смотреть на редактор Unity. Для навигации по 2D-пространству в окне редактора используйте среднюю кнопку мыши для панорамирования и колесо прокрутки для масштабирования. Камера в центре пространства представляет то, что увидит игрок.
Добро пожаловать
В Unity есть невероятная функция под названием Unity Asset Store. В Asset Store полно готовых частей игр, таких как модели, текстуры, утилиты или программы искусственного интеллекта. Они доступны для продажи, а некоторые даже предлагаются бесплатно. Из-за этого легко создать игру, не создавая слишком много ресурсов самостоятельно. Вы можете просто взять заранее закодированную игровую механику и прикрепить ее к своему арту.
Чтобы получить доступ к этим бесплатным базовым ресурсам программирования, просто перейдите на вкладку «Магазин активов» в верхней части окна просмотра. Отсюда перейдите к разделу «Лучшие бесплатные ресурсы» и загрузите пакет «Стандартные ресурсы (для Unity 2017.3)». Возможно, вам придется войти в систему или создать учетную запись.
Загрузите стандартные активы из магазина Unity.
После загрузки пакета нажмите «Импорт» (она заменяет кнопку загрузки после загрузки ресурсов), чтобы импортировать пакет в ваш текущий проект Unity. Вам будет представлен длинный список флажков. Что вы добавите из пакета, зависит от вас. Для этого руководства вам понадобятся только папки «2D» и «CrossPlatformInput» в разделе «Стандартные активы».
Вам также понадобятся некоторые инструменты для создания 2D-игр в Unity, которые вам немного помогут.
Перейти по этой ссылке
и загрузите Git в виде zip-архива. Затем разархивируйте и перетащите папку внутри в браузер активов. Возможно, после этого вам придется перезапустить Unity, чтобы он заработал правильно.
Перетащите!
Теперь у вас должно быть все необходимое для начала. Пришло время копнуть и начать работать.
Шаг 3: Создайте карту
Чтобы начать создание карты, сначала вернитесь на вкладку «Сцена». В браузере ресурсов внизу экрана щелкните правой кнопкой мыши и выберите «Создать»> «Папка». Назовите новую папку активов «Плитки».
Браузер ресурсов
Вы также захотите добавить свой заполнитель в браузер ресурсов. Просто перетащите всю папку из окон в браузер активов.
Затем создайте палитру, которая будет служить блоками для вашего персонажа. Перейдите в Window>2D>Tile Palette, чтобы открыть окно Tile Palette. Нажмите «Создать новую палитру», чтобы создать новую палитру плитки. Назовите его «solid», но сохраните все значения по умолчанию и сохраните его в папке «Tiles».
Примечание об организации |
Когда вам нужна папка или файл, легко создавать папки, а затем оставлять их там, где вы их создали. Хотя это нормально, если вы планируете сделать крошечную игру с тремя спрайтами, это не очень хорошая идея, если вы планируете расширить свою игру до чего-то большего.![]() |
Ваша новая палитра плитки, там еще ничего нет.
Чтобы добавить изображение в палитру, просто перетащите изображение-заполнитель для блоков уровня в окно выше.
Затем создайте что-нибудь для рисования с помощью вашей палитры. В окне Hierarchy щелкните правой кнопкой мыши и выберите 2D Object>Tilemap.
Щелкните правой кнопкой мыши здесь, чтобы создать Tilemap.
Теперь вы должны уметь рисовать на своем уровне. Постарайтесь пока держать его в пределах камеры и добавьте несколько платформ, на которые можно прыгать.
Веселиться!
Наконец, есть еще один последний шаг, о котором нужно позаботиться. Сейчас ваша карта состоит только из визуальных эффектов, и ваш персонаж не будет врезаться в стены, которые вы построили. По сути, ваш персонаж провалится сквозь пол. Вы должны добавить свойство физики, чтобы игра знала, что эти квадраты имеют значение, и они существуют не только для того, чтобы выглядеть красиво.
Чтобы добавить физическое свойство, нажмите на тайловую карту в редакторе, а затем прокрутите вниз в окне Инспектора (с другой стороны). Нажмите кнопку «Добавить компонент».
Компонент, который вам нужно добавить, называется «Tilemap Collider 2D». Просто используйте окно поиска, чтобы найти его и добавить в свою карту тайлов.
Шаг 4: Сделайте игрока
Теперь, когда у вас есть карта, следующим шагом будет создание человека, который будет по ней перемещаться. К счастью, Unity проделала большую часть тяжелой работы на этом этапе. Если вы посетите стандартную папку ресурсов> 2D> Prefabs в браузере ресурсов, вы увидите, что там есть маленький робот под названием «CharacterRobotBoy.prefab».
Вот он.
Это сборка. Помните, как к вашей тайловой карте был прикреплен компонент столкновения? Ну, нашему персонажу нужно много компонентов, прикрепленных к нему, чтобы функционировать. Вместо того, чтобы каждый раз перестраивать каждый компонент, вы можете создавать префабы, которые будут служить игровыми объектами. Их можно использовать снова и снова.
Теперь перетащите мальчика-робота в свою сцену и нажмите на него в иерархии. Глядя на все прикрепленные к нему компоненты в Инспекторе, вы заметите, что у него есть система анимации, средство визуализации спрайтов и несколько различных функций коллизий и управления.
У него есть система анимации, средство визуализации спрайтов и несколько различных функций столкновения и управления.
Хотя вы можете использовать его на данный момент, вы должны создать своего собственного персонажа, который в конечном итоге заменит его. Его спрайт и анимация будут служить заменой, пока вы продолжаете развиваться вокруг него.
Теперь, когда мальчик-робот появился в вашей сцене, вы можете играть за него. Нажмите кнопку воспроизведения в верхней части экрана, чтобы попробовать.
Оно живое!
Поскольку идея игровой механики в этом руководстве состоит в том, чтобы встретиться с двумя персонажами, вы должны перетащить второго мальчика-робота в сцену, возможно, с другой стороны. Таким образом, каждый раз, когда вы играете в игру, вам придется координировать свои действия, чтобы встретились два персонажа.
Шаг 5: Дорожная карта и сборка
Дорожная карта — это один из многих шагов, которые вы можете предпринять отсюда. Теперь, когда у вас есть прототип, вся трудоемкая работа по настройке завершена.
Создание дорожной карты — отличный способ спланировать инди-игру. Вы можете составить дорожную карту, думая обо всех функциях, которые вы хотите видеть в игре, размещая их на временной шкале и чередуя их со временем для внесения улучшений и исправления ошибок.
Например, ваша дорожная карта может выглядеть примерно так:
- Добавить монетную систему
- Добавить здоровье и урон игроку
- Основные враги
- Проверка ошибок
- Уточнить базовое искусство
- Создавайте сценарии завершения игры и выигрывайте
- Добавьте элементы пользовательского интерфейса
- Добавить систему меню
- И т.