Как сделать 2д игру на unity

Как сделать свою видеоигру

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

С чего начать

Если вы ни разу не запускали Unity или, по каким-то причинам, слышите о нем впервые, кратко поясним основы интерфейса. Все окна и вкладки вы можете свободно передвигать в любое удобное для вас место, но изначально они расположены следующим образом: в левой части находится столбик иерархии, который показывает все объекты, находящиеся в сцене; сама сцена располагается в центре, а справа от нее окно инспектора показывает свойства выделенного объекта. Внизу вы увидите меню проекта и материалы, которые ему присвоены. Теперь разберемся с тем, чем отличается 2D-kit от обычного запуска Unity.

В стартовом меню движка у вас будет выбор: начать новый проект или перейти во вкладку обучения, а там запустить загруженный 2D-kit. Выбрав второй вариант, вы увидите вместо пустого полотна материалы игры и сможете творить буквально с двух кликов. Сперва необходимо создать сцену: найдите сверху Kit Tools и выберете вкладку Create New Scene.

Сцена создана, в иерархии сразу выстроилось множество непонятных объектов, но главное — появилась героиня, которая будет представлять игрока в будущем. Управление ею настроено заранее, так что об этом беспокоиться не стоит. Пока важно понять, что набор строчек под заголовком GameUtilities в иерархии должен перемещаться вместе с главной героиней, чтобы на старте не возникло проблем с управлением. Вот мы и подобрались к самому насущному: как создавать уровни?

В меню Window есть вкладка The Palette — это окно кисти, которое позволяет рисовать фундамент. Чтобы перейти к выбору нужной текстуры нажмите на TilesetRockWaterBlockers и выберете TilesetGamekit. Теперь у вас есть два вида кисти: трава и камень, имитирующий инопланетные постройки. Совмещать их, к сожалению, нельзя, так что заранее планируйте уровень в одном стиле или маскируйте шов подручными объектами, вроде кислотного озера.

Создание окружения

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

В первую очередь рекомендуем заглянуть в Interactables — это самый простой вид предметов, которые очень легко располагать и настраивать. Например, там есть «DestructableColumn» — колонна, разрушаемая при ударе жезлом. Мы поставили ее при входе в пещеру. Чтобы добавить ее в свой уровень просто перетащите колонну из папки на сцену. Таким же образом добавляются и другие предметы, такие как «MovingPlatform».

Вы, наверное, заметили, что при добавлении объектов правое окно инспектора сразу заполняется непонятными настройками, а рядом с движущейся платформой еще и путь какой-то красный отметился. Не беспокойтесь, сейчас мы с ними быстро разберемся. На самом деле, большинство иконок, ползунков и цифр вам не пригодится на первом этапе. Главное – заметить кнопочку Add Node в настройках платформы — она добавляет новую точку в пути движения островка. Все точки можно передвигать стрелочками по оси координат. Проблема в том, что изначально платформа двигается по принципу «туда-сюда», а если вы формируете квадрат, то вы, естественно, хотите, чтобы островок двигался по кругу. Для этого в подменю Moving Platform (Script), там же, где находится Add Node, вам нужно выбрать надпись BACK_FORTH, что и означает «туда-сюда», и сменить ее на LOOP, что означает «по кругу».

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

Читать еще:  Как сделать букет из мармелада своими руками

Теперь добавим в нашу сцену нечто посложнее – злющего NPC. Враги находятся в папке Enemies, которая лежит там же, в Prefabs. Неважно, кого вы кинете на уровень: синего или розового монстра, внимательно присмотритесь к его настройкам. Самая первая – Transform — изменяет положение и размер объекта. Вторая – Sprite Renderer — позволяет его отзеркалить в разных координатах; для этого поставьте галочку рядом с X или Y. И уж совсем далеко внизу находится Enemy Behaviour, которая управляет поведением монстра. Важнейшие строчки в этом окне – это View Fov и View Direction. Первая определяет область зрения врага, а вторая ее вращает. Вы также сможете отрегулировать дистанцию взора в строчке View Distance, просто указав нужное число.

Интерактивные объекты

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

Ее расположение может быть любым; нам важна настройка Pressure Pad (Script), которая кроется глубоко внизу инспектора. В ней есть маленькое окошко On Pressed () с плюсиком внизу. Этот плюс добавляет реакцию чего бы то ни было в сцене на нажатие кнопки. Поскольку нам надо, чтобы открывалась дверь, то именно дверь и нужно перетащить из окна иерархии в строку под надписью Runtime Only.

Мы связали между собой кнопку и дверь, но пока не определили, какой будет эта связь. Для того чтобы назначить ее нужно зайти в подменю No Function и в том списке, который выпадет при наведении на Animator, выбрать Play (string). Вуаля! Опробуйте результат, просто нажав на кнопку Play, расположенную над сценой.

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

Связываются точки перехода еще проще, чем дверь с кнопкой. Они находятся в папке Scene Control, которая, как и все прочие папки с объектами, лежит в Prefabs. Там нам понадобится объект TransitionStart, который является точкой перехода. Если вы хотите создать телепорт внутри сцены, то вам понадобится две таких точки, одна из которых обязательно должна быть переименована в TransitionEnd (делается это в верхней строке инспектора).

Наберитесь терпения, потому что сейчас придется плотно поработать с настройками точки отправления, которые называются Transition Point (Script). Первое поле говорит нам о том, какой объект будет переноситься. Поэтому из иерархии в него нужно перетащить героиню (Ellen).

Вторая строка отвечает за тип перехода: внутри зоны или вне – это как перелет внутри страны или за границу. Если вы выбрали внутреннее путешествие, то перетащите в новое поле TransitionEnd — так вы укажите куда произойдет переход. Обычно перемещение происходит автоматически, поэтому следующей строкой стоит надпись On Trigger Enter, но вы можете изменить это по своему желанию, как это сделали мы у корабля. Не забудьте также перетащить Ellen в настройки TransitionEnd, иначе чуда не свершится.

Если вы переходите в другую локацию, то вам сперва нужно выбрать ее, а затем уже точку перехода, потому что на уровне их может быть несколько, и все они помечаются буквами в алфавитном порядке. Кстати, местом назначения в другом уровне служит объект под названием TransitionDestination, который находится там же, в Scene Control. Не перепутайте!

Полезные советы

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

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

Читать еще:  Как сделать замок из коробок

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

Третий секрет — музыка. Он совсем простой: кидаете свой саундтрек в папку Music, а затем перетаскиваете его в настройки BackgroundMusicPlayer.

И последний секрет — смерть. Если вы строите открытые локации, в которых игрок может запросто упасть со скалы, вам необходимо подготовить для него штраф, а иначе он продолжит бесконечно парить. Лучше всего для этого подходит невидимая смерть. Создайте пустой объект и прикрепите к нему Damager (Script). Растянув его по всей карте, вы получите ту самую невидимую смерть, от которой игрок будет гибнуть, падая с высоты.

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

Скачать движок можно по этой ссылке, а найти к нему более подробную инструкцию на английском языке — по этой. Удачного девелопмента!

Как создать простую 2D-игру на Unity

На создание игры обычно уходит много времени и сил, но движок Unity значительно облегчает процесс. И в 2D-, и в 3D-играх.

С помощью Unity сделаны такие игры, как:

  • Outlast;
  • Hearthstone;
  • Cuphead;
  • Rust;
  • Firewatch;
  • Inside;
  • Cities: Skylines и другие.

Из статьи вы узнаете, из каких компонентов создаётся игра и как написать свой первый проект. Вот такие нас ждут этапы:

  1. Создаем проект в Unity.
  2. Добавляем первый объект.
  3. Пишем скрипт.
  4. Назначаем триггер.

Почему Unity

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

Как именно пользоваться движком Unity и создавать крутые проекты, — мы учим на курсе «Разработчик игр с 0 до PRO».

Евгений Кучерявый

Пишет о программировании, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.

Как установить Unity

Скачиваем Unity на официальном сайте. Новичкам достаточно бесплатного тарифа Personal.

Последняя версия движка может не поддерживаться на старых компьютерах. Если так, то подходящую стоит поискать в архиве версий. Игра для этой статьи написана на Unity 5.5.0f3. Интерфейс более поздних версий не сильно менялся, поэтому руководство подойдёт и для них.

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

  1. Запустите установщик и следуйте инструкциям.
    Кроме самого движка, вам предложат установить Microsoft Visual Studio — интегрированную среду разработки. Это лучшие возможности по работе со скриптами в Unity, но она занимает много места на диске.
  2. Если Microsoft Visual Studio установлена или используется другой редактор кода, уберите галочку. Альтернативами могут быть Microsoft Visual Studio Code (более лёгкая версия Visual Studio) или MonoDevelop — встроенный редактор Unity.
  3. Когда установка завершится, пора приступать к разработке своей первой игры.

Как создать проект в Unity

Запустите Unity и нажмите кнопку New или New project.

Unity для 2D

Большинство разработчиков 2D создают, запускают свою игру и получают прибыль с помощью платформы Unity. Узнайте, что она предлагает, и как вы можете извлечь из этого выгоду.

Сообщество, инструменты, ресурсы

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

Множество ресурсов

Документация, обучающие материалы, форумы и курсы

Крупнейший магазин ресурсов и инструментов

Тысячи ресурсов, ускоряющие разработку

Поддержка от ведущих игровых студий

Вдохновляйтесь, учитесь, нанимайте или находите работу

Поддержка 2D/3D

Упрощает процесс разработки в 2D, 3D или в их сочетании

Богатый функционал,

Инструменты для работы со сценами, анимацией, системами частиц и звуком

Читать еще:  Как сделать воблер своими руками из дерева
Подстраивается

Подстраивается под особенности рабочего процесса и ваши предпочтения

Нативная высокая производительность и графика

Для мобильных устройств с поддержкой Metal и Vulkan

Оптимизируйте доход и поддерживайте интерес пользователей

Благодаря встроенным IAP, рекламной сети и средствам аналитики в реальном времени

Расширяйте аудиторию на всех платформах

Простая разработка и издание на всех крупнейших и развивающихся мобильных платформах

Исследуйте новые возможности

Портируйте самые успешные мобильные игры на ПК, консоли или мобильные VR-устройства

  • Полный контроль над размером файлов
  • Работайте в любимом и хорошо знакомом вам редакторе
  • Непревзойденная производительность и масштабируемость

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

Успешные разработчики 2D-игр полагаются на Unity

Свет, камера, приключение

Игра Forgotton Anne — это поистине амбициозный проект. Она объединяет в себе 500-страничный сценарий, оригинальный саундтрек, исполненный Датским филармоническим оркестром, и анимации уровня работ студии Ghibli, созданные командой выходцев из мультипликационной индустрии. Узнайте, как ThroughLine Games использовали Unity, чтобы создать один из самых высококачественных и кинематографичных приключенческих 2D-платформеров.

После смерти все становится только лучше

Узнайте, как Unity помогла студии из трех человек создать увлекательный двухмерный платформер с 93 уровнями, 15 анимационными сценами и 3 режимами сложности, который завоевал сердца игроков и привлек внимание инвесторов.

Свобода для экспериментов

Узнайте, как гибкость и богатый инструментарий Unity помог инди-разработчику Стю Денману воплотить свою идею в гипнотизирующую и увлекательную игру более чем со 160 уровнями.

Двухмерная ретро-игра для VR

У Аны Рибейро была идея создать ретро-игру в стиле GameBoy для современной платформы VR. Узнайте, как с Unity ей удалось решить технические задачи, подготовить продукт к выпуску и оптимизировать его.

Как собственные инструменты редактора помогли сэкономить время

Узнайте, как с Unity команде из 14 разработчиков различного профиля, живущих в разных уголках планеты, удалось объединить усилия и создать интересный сюжет с ярким художественным оформлением и разработать увлекательный игровой процесс для великолепной двухмерной игры в жанре hack-and-slash.

Маленькая команда, большие амбиции

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

Неожиданный поворот в 2,5D

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

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

Скрупулезная проработка графики

Cuphead — это однопользовательский / кооперативный платформер жанра run-and-gun, вдохновленный мультфильмами 1930-х годов, нарисованный вручную и озвученный оригинальными джазовыми композициями.

Загадочный и глубокий мир

Главная сила Night in the Woods в проработке персонажей и диалогов, а также стильной двумерной графике. Это интерактивное повествование начинается в городке под названием Possum Springs и помещает игрока в мир экзистенциальных и по-темному комичных историй.

Проект появился в рамках геймджема, но потом SFB Games совместно с Nintendo перенесли его на Unity и выпустили для Nintendo Switch. Эта головоломка рассчитана на совместную игру и решение простых (но только на первый взгляд!) задач и приносит невероятное удовольствие игрокам.

Управляем природой

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

2D-инструмент, меняющий процесс создания уровней

Tilemap и другие инструменты помогли двум разработчикам из разных стран в свое свободное время создать удивительный 2D-платформер, в котором все — не то, чем кажется. Узнайте, как они этого добились.

От независимых разработчиков до больших студий — Unity используют по всему миру для создания уникальных игр и контента.

Студии, стоящие за шедеврами вроде Hearthstone и Hitman Go, рассказывают о переходе на Unity, в том числе о:

  • влиянии на рабочий процесс;
  • технических рекомендациях;
  • окупаемости и выгоде;
  • внедрении.

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

Источники:

http://gameguru.ru/articles/kak_sdelat_svoju_videoigru/view.html

http://skillbox.ru/media/code/kak_sozdat_prostuyu_2d_igru_na_unity/

http://unity.com/ru/solutions/2d

Ссылка на основную публикацию
Статьи на тему: