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

Обновлено: 07.07.2024

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

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

Что такое Unity?

Unity – движок, среда, платформа для разработки игр, объединяющая в себе ряд инструментов для облегчения работы.

Состоит из визуального редактора, редактора кода, инструмента для написания скриптов – логики поведения объектов. Она позволяет вносить изменения, не покидая сцену, и в реальном времени оценивать их результат.

Содержит инструменты для создания точных трёхмерных копий реальных объектов и пространств (комнат, зданий, открытой местности).

Изначально движок назывался Unity3D, вследствие переименован в Unity.

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

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

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

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

Имитация физических явлений и объектов на основе частиц (атмосферные осадки, огонь, отражения) проводится с задействованием разработки от Nvidia PhysX.

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

Игровой движок Unity: почему его выбирают

Построение физической модели

Настраиваемый под разработчика интерфейс с поддержкой Drag&Drop упрощает работу над сценами, их отладку и редактирование без переключения между окнами.

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

Последние можно как создавать с нуля, так и редактировать имеющиеся. Средство для создания трёхмерной анимации поддерживает её импорт с Blender, 3DsMax и прочих 3D-редакторов.

Для оптимизации нагрузки на оборудование разработчик предусмотрел опцию Level Of Detail.

Она снижает детализацию и качество прорисовки отдалённых объектов, а при приближении – прорисовывает их полностью. Алгоритмы Occlusion Culling не визуализируют объекты, расположенные вне поля зрения камеры, удаляют из памяти остающееся за спиной игрока.

Игровой движок Unity: почему его выбирают

Объекты за спиной удаляются из памяти

Скомпилированная игра для Windows запускается через исполнительный файл, все ресурсы (уровни, мультимедиа) хранятся в отдельных файлах, динамически подключаемых библиотеках.

В Unity Asset Server есть инструменты для реализации мультиплеера. Система контроля версий с графическим представлением позволит откатить состояние проекта, отслеживать изменения между версиями. Unity работает с освещением: поддерживает трассировку лучей – создаёт реалистичную картинку путём отслеживания взаимодействия света с поверхностями. Работает со всеми современными графическими технологиями: DirectX 12, VRWorks, Vulkan, LiquidVR.

Особенности Unity

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

Игровой движок Unity: почему его выбирают

Многоуровневая локация

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

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

Asset Store предлагает часть ассетов бесплатно. Разработчикам предоставляет возможность загружать в библиотеку Unity собственные разработки через редактор, продавать их.

Преимущества и недостатки

Движок обладает рядом положительных и отрицательных сторон.

К положительным относят:

Недостатки платформы:

  • Проблемы при разработке многокомпонентных проектов из-за ограничений визуального редактора.
  • Сложности в подключении внешних плагинов – из-за отсутствия ссылок на них в программе модули придётся искать, устанавливать и настраивать самому.
  • Проблематичное внесение изменений в шаблоны экземпляров.
  • WebGL-редакция отличается рядом проблем с быстродействием, работоспособностью и стабильностью.
  • Стоимость – Pro-версия стоит $1800, а Enterprise — $4000 – неподъёмная сумма для фрилансера, их группы, небольшой студии разработчиков.
  • Быстродействие, по сравнению с другими движками, при разрастании проекта.
  • Большой размер скомпилированного файла особенно для мобильных платформ.

Игры на Unity

На движке выпущены сотни мобильных, консольных, десктопных развлечений, игр с дополненной реальностью. Он применяется в архитектуре, строительстве, производстве (многими автогигантами, такими как Audi, BMW, Lexus, Volvo), при создании мультипликационных фильмов.

Игровой движок Unity: почему его выбирают

Игра с дополненной реальностью

С компьютерных игр отметим:

Мобильные развлечения на Unity: Age of Magic, Chaos Lords, Jurassic Monster World, Royal Blood, Guns of Boom, Pokemon Unite и Go.

Мультфильмы, созданные с помощью Unity: Dead Pixels​​​​​​​, Bonfire, Jigsaw.

Кому стоит использовать этот движок

Платформа рассчитана на начинающих геймдевелоперов и небольшие компании, которых функциональность простых продуктов вроде RPG Maker, Kodu Game Lab не устраивает, а ресурсов приобрести продвинутый движок нет. Unity применяется для создания видеороликов, реализации кроссплатформенных 2D-проектов (поддержка 2D появилась недавно) и масштабных проектов вроде The Elder Scrolls: Legends, Pillars Of Eternity. Также применяется для написания симуляций.

Игровой движок Unity: почему его выбирают

Разработка кроссплатформенной игры

Как работать в Unity

После выбора Юнити пора приступать к изучению его возможностей.

Первые шаги

Для реализации проекта на Unity определитесь с версией движка: Plus – 399 $ в год, Pro – 1800 $ за 12 месяцев, 4000 $ в год. Все отличаются по функциональности. Есть бесплатные версии для студентов аккредитованных учреждений и персональной эксплуатации – то, что нам нужно. Загрузите пакет с официального сайта и установите. После инсталляции в составе можно обнаружить Unity Hub, что же это за продукт и зачем нужен? Автономная программа, упрощающая управление проектами: поиск, выгрузку в облако, скачивание на компьютер, удаление, загрузку в редактор.

Игровой движок Unity: почему его выбирают

Создание проекта

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

Для работы над первой игрой необходимо завести аккаунт Unity Hub.

После загрузки проекта увидите список своих разработок.

Здесь они добавляются, удаляются, копируются и переносятся в облако, на локальный диск.

Игровой движок Unity: почему его выбирают

Редактор Unity

Игровой движок Unity: почему его выбирают

Свойства объекта

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

На платформе применяется компонентно-ориентированный подход. Всё в сцене представлено игровыми объектами GameObject, состоящими из ряда компонентов:

  • графический – модель, например, мячик;
  • управление – привязывается к кнопкам, поведению мыши, скриптам, событиям;
  • свет – для источников освещения.

Для управления видом сцены (перемещением камеры, масштабированием) пользуйтесь соответствующими кнопками на панели инструментов либо мышкой.

Кликните по одной из осей и перетаскивайте её для изменения размера объекта в этом направлении.

Игровой движок Unity: почему его выбирают

Управление габаритами GameObject

Дальше придётся проявлять творчество, обращаясь к различным руководствам и видеоматериалам по Unity.

Начнем с самого простого: загрузки и настройки Unity.

Загрузите последнюю версию с официального сайта или торрента и запустите установочный файл.

Выбор редактора в Unity

Полезно знать: невозможно использовать отладчик Visual Studio 2013 Express с Unity. Вы должны иметь Pro версию Visual Studio и купить UnityVS плагин. С версией Express, вы будете иметь лучший редактор кода, но отсутствие отладчика сведет на нет все его достоинства.

Mac OS X

MonoDevelop 4 - существенно лучше, чем старый MonoDevelop 2 в предыдущих версиях Unity. Он, конечно, далек от совершенства, но ничего лучшего под на Mac не придумано.

На каком языке программировать в Unity?

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

Вот несколько ссылок, которые могут быть вам полезными:

  • Изучение интерфейса Unitys : основа всех основ. Не зная интерфейса, вы не сможете создавать игры в Unity 3D
  • Создание сцены в Unity : изучение этого раздела поможет вам создать свою собственную сцену
Первая сцена. Создаем новый проект.

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

Создание нового проекта в Unity

Выберите 2D настройки. Как и прежде, вы можете изменить этот флаг в настройках проекта позже.

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

Разметка и панели Unity

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

Пустой проект

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

Чтобы держать все под рукой, советуем создать папки во вкладке Project (Проект). Эти папки будут созданы в папке Assets вашего проекта.

Папки в Unity

Внимание: папка Assets – это место, где хранится все, что вы добавляете во вкладке Project. Она может быть невидимой в Unity, в зависимости от выбранной разметки вкладки (одна или две колонки), но вы сможете увидеть ее, открыв приложение для экспорта файлов.

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

Ассеты проекта

В вашей панели Project, вы можете найти различные типы ассетов:

Префабы

Многоразовые игровые объекты (например: пули, враги, бонусы).

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

Сцены

Сцена содержит игровой уровень или меню.

В отличие от других объектов, создаваемых в панели "Проект", сцены создаются в меню "Файл". Если вы хотите создать сцену, нажмите на кнопку "Новая сцена" в подменю и не забудьте потом сохранить ее в папку Scenes.

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

Звуки

Тут все предельно просто. Увидите, если захотите раскидать музыку по разным папкам.

Scripts

Textures

Спрайты и изображения вашей игры. В 2D проекте вы можете переименовать эту папку в "Sprites".

Это неважно для 2D проекта, но, оставив название Textures (Текстуры), вы дадите возможность Unity автоматизировать некоторые задачи. Если вы хотите узнать подробную информацию по этой теме, вы можете прочитать об этом здесь , или здесь .

Заметка о папке Resources : если вы уже работали с Unity, вы знает, что Resources – полезная и уникальная папка. Она позволяет загрузить в скрипт объект или файл (с помощью статичного класса Resources ). Она понадобится нам в самом конце (в главе, посвященной меню). Проще говоря, пока мы не будем ее добавлять.

Наша первая игровая сцена

Панель Hierarchy (Иерархия) содержит все объекты, которые доступны в сцене. Это то, чем вы манипулируете, когда начинаете игру с помощью кнопки "Play".

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

Логические объекты

Как вы можете видеть здесь, у нас здесь 3 потомка для объекта Level .

Пустые объекты

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

Пустые объекты

Убедитесь, что все они имеют координаты (0, 0, 0) и тогда вы сможете легко их найти! Пустые объекты никак не используют свои координаты, но они влияют на относительные координаты их потомков. Мы не будем говорить об этой теме в этом уроке, давайте просто обнулим координаты ныших пустых объектов.

Заполнение сцены

По умолчанию, новая сцена создается с объектом Main Camera (Главная камера). Перетащите ее на сцену.

Для начала создайте эти пустые объекты:

Scripts Мы добавим наши скрипты сюда. Мы используем этот объект, чтобы прикрепить сценарии, которые не связаны с объектом – например, скрипт гейм-менеджера. Render Здесь будет наша камера и источники света. Level

В Level создайте 3 пустых объекта:

  • 0 - Background
  • 1 - Middleground
  • 2 - Foreground

Сохраните сцену в папке Scenes . Назовите ее как угодно, например Stage1 . Вот, что у нас получилось:

Первая сцена на Unity

Совет: по умолчанию игровой объект привязан к положению родителя. Это приводит к интересному побочному эффекту при использовании объекта камеры: если камера является дочерним объектом, она автоматически будет отслеживать положение родителя. Если же она является корневым объектом сцены или находится внутри пустого игрового объекта, она всегда показывает один и тот же вид. Однако если вы поместите камеру в движущийся игровой объект, она будет следовать за его передвижениями в пределах сцены. В данном случае нам нужна фиксированная камера, поэтому мы помещаем ее в пустой объект Render . Но запомните это свойство объекта камеры, оно может вам пригодиться. Мы подробно остановимся на этой теме в главе "Паралаксный скроллинг".

Мы только что создали базовую структуру нашей игры. На следующем этапе мы начнем делать забавные вещи: добавим на сцену фон и кое-что еще!

Добавляем фон в сцену

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

TGPA фон

Импортируйте изображение в папку Textures (Текстуры). Просто скопируйте файл в нее, или перетащите его из проводника. Не беспокойтесь сейчас о настройках импорта.

Создайте в Unity новый игровой объект Sprite на сцене.

Новый спрайт для игры в Unity

Что такое спрайт?

По сути, спрайт – это 2D-изображение, используемое в видео-игре. В данном случае это объект Unity для создания 2D-игр.

Добавляем текстуру спрайта

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

Выбор спрайта в Unity

Вы должны нажать на маленький круглый значок справа от поля ввода, чтобы появилось Select Sprite (Выбрать спрайт) в Инспекторе

Вид спрайта

Итак, мы создали простой спрайт отображающий облака на небе. Давайте внесем изменения в сцену. В панели Hierarchy (Иерархия) выберите New Sprite . Переименуйте его в Background1 или что-то такое, что легко запомнить. Переименуйте его в Background1 или что-то такое, что легко запомнить. Затем переместите объект в нужное место: Level -> 0 - Background . Измените координаты на (0, 0, 0) .

Фон установлен

Создайте копию фона и поместите его в (20, 0, 0) . Это должно отлично подойти к первой части.

Фон 2

Слои со спрайтами

Следующее утверждение очевидно, но обладает некими неудобствами: мы отображения 2D мир. Это означает, что все изображения на одной и той же глубине, то есть 0 . И вы графический движок не знает, что отображать в первую очередь. Слои спрайтов позволяют нам обозначить, что находится спереди, а что сзади.

В Unity мы можем изменить "Z" наших элементов, что позволит нам работать со слоями. Это то, что мы делали в этом руководстве перед обновлением до Unity 5, но нам понравилась идея идея использовать слои со спрайтами. У вашего компонента Sprite Renderer есть поле с именем Sorting Layer с дефолтным значением. Если щелкнуть на нем, то вы увидите:

Сортировка списка слоев

Давайте добавим несколько слоев под наши нужды (используйте кнопку + ):

Добавить сортировку слоя в Unity

Добавьте фоновый слой к вашему спрайту фона:

Установить сортировку слоя

Настройка Order in Layer - это способ ограничить подслои. Спрайты с меньшим номером оказываются перед спрайтами с большими числами.

Слой Default нельзя удалить, так как это слой, используемый 3D-элементами. Вы можете иметь 3D-объекты в 2D игре, в частности, частицы рассматриваются как 3D-объекты Unity, так что они будут рендериться на этом слое.

Добавление элементов фона

Также известных как props. Эти элементы никак не влияют на геймплей, но позволяют усовершенствовать графику игры. Вот некоторые простые спрайты для летающих платформ:

Спрайты для платформ

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

Получение двух спрайтов из одного изображения

Выполняйте следующие действия:

  1. Импортируйте изображения в папку "Текстуры"
  2. Выберите спрайт Platform и перейдите к панели Инспектор
  3. Измените "Sprite Mode" на "Multiple"
  4. Нажмите на кнопку Sprite Editor (Редактор спрайта)

В новом окне ( Sprite Editor ) вы можете рисовать прямоугольники вокруг каждой платформы, чтобы разрезать текстуру на более мелкие части:

Редактор спрайтов

Кнопка Slice в левом верхнем углу позволит вам быстро и автоматически проделать эту утомительную работу:

Автоматическая нарезка

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

В этом уроке проделаем эту операцию вручную. Назовите платформы platform1 и platform2 . Теперь, под файлом изображения, вы должны увидеть два спрайта отдельно:

Результат редактора спрайтов

Добавим их в сцену. Для этого мы будем выполнять те же действия что и для фона: создадим новый спрайт и выберим platform1 . Потом повторим эти действия для platform2 . Поместите их в объект 1 - Middleground . Убедитесь, что их позиция по оси Z равна нулю.

Две новые платформы

Prefabs (Префабы)

Сохранить эти платформы как префабы. Просто перетащите их в папку Prefabs :

Префабы

Таким образом вы создадите Prefab , точно отвечающий оригинальному игровому объекту. Вы увидите, что игровой объект, который вы конвертировали в Prefab , представляет собой новый ряд кнопок прямо под его именем:

соединение префабов

Заметка о кнопках "Prefab": При последующей модификации игрового объекта, вы можете использовать кнопку "Apply", чтобы применить эти изменения к Prefab , или кнопку "Revert", чтобы отменить все изменения игрового объекта в свойстваъ Prefab . Кнопка "Select" переместит выбранные свойства в ассет Prefab в окне проекта (они будут выделены).

Создание префабов с объектами-платформами упростит их повторное использование. Просто перетащите Prefab на сцену, чтобы добавить копию. Попробуйте добавить другую платформу таким же образом.

Теперь вы можете добавить больше платформ, меняющих свои координаты, размеры и плоскости (вы можете поместить их на заднем или переднем плане, просто установите координату Z для платформы на 0 ).

На данном этапе все это выглядит еще сыроватым, но в следующих двух главах мы добавим параллаксный скроллинг, и сцена оживет у нас на глазах.

Прежде чем двигаться дальше, мы модифицируем наши слои, чтобы избежать каких-либо проблем с порядком их отображения. Для этого просто измените позицию игровых объектов по оси Z во вкладке Hierarchy (Иерархия) следующим образом:

Слой Позиционирование по оси Z
0 - Задний фон 10
1 - Средний фон 5
2 - передний фон 0

При переключении из 2D режима в 3D, в окне "Scene" (Сцена) вы будете четко видеть слои:

Кликнув на игровом объекте Main Camera , вы увидите, что флажок Projection установлен на Orthographic . Эта настройка позволяет камере визуализировать 2D игру без учета трехмерных свойств объектов. Имейте в виду, что даже если вы работаете с 2D объектами, Unity по-прежнему использует свой 3D движок для визуализации сцены. Рисунок выше это наглядно демонстрирует.

В следующем уроке:

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

У меня есть камера, которая вращается вокруг точки на экране. Щелчок и перетаскивание мыши влево и вправо будет вращать вокруг точки фокусировки, а отпускание мыши оставит камеру под этим углом.

Вот код, который я сейчас использую для поворота камеры на основе щелчка мышью и перетаскивания:

Я пытаюсь заменить этот поворот камеры, основанный на перетаскивании мышью, кнопкой пользовательского интерфейса (также известной как вызов одной функции), которая будет полностью вращать камеру на 180 градусов за короткий период времени, а затем она повернется обратно при повторном нажатии. Вот рисунок краски MS на всякий случай, если мое объяснение сбивает с толку:

enter image description here

Я не уверен, как это сделать. Это похоже на использование Vector3.Slerp , но я не могу найти подходящего решения. Я так далек от решения, что у меня действительно нет разумного кода для публикации. Скажу лишь, что пока пробовал два метода:

1) Я пробовал использовать transform.RotateAround , где угол, на который я прохожу, равен rotateSpeed * Time.deltaTime . Моя проблема в том, что я не знаю, как проверить конечное условие, а без него моя камера будет вращаться вечно.

2) Я пробовал возиться с Quaternion.Slerp , но результаты оказались не такими, как я ожидал.

Как я могу добиться плавной орбиты камеры на 180 градусов, для выполнения которой требуется заранее определенное время?

🏓 Создаем 2D-игру на Unity: инструкция для новичка

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

Если вы хотите получить более систематическое образование в области разработки игр, мы рекомендуем рассмотреть факультет разработки игр онлайн-университета GeekBrains.

Двумерные игры сравнительно просты: для них не требуется сложных 3D-моделей, программный код по сравнению с 3D-проектами выглядит понятнее. Такие игры популярны как на десктопах, так и на мобильных устройствах. Unity также позволяет разрабатывать игры и для браузеров.

За последние годы вышло много популярных двумерных игр:

Программная реализация 2D-игр проще не только из-за отсутствия третьего измерения: на самой сцене меньше объектов, вместо трехмерных моделей плоские спрайты, вместо скелетной анимации – покадровая. А еще 2D-игры проще портировать на другие платформы – легче найти новую аудиторию.

Давайте создадим простую игру в жанре пинг-понг 🏓 . Перед тем как приступить к созданию игры, продумайте, какой именно результат хотите получить. На первых этапах рекомендуется использовать схематические шаблоны, чтобы быстрее получить работающий результат. В этой инструкции мы так и поступим. Графических ресурсов использовать не будем: и ракетки, и отбиваемый мяч будем пока отображать простыми белыми спрайтами.

Предварительно рассмотрим основные понятия Unity, без понимания которых будет проблематично создать игру:

Предполагаем, что вы уже установили редактор и создали аккаунт на портале Unity.

В первую очередь создадим новый проект и откроем его настройки (Edit → Project Settings). Во вкладке Editor установим параметр Default Behaviour Mode в значение 2D

Настройка проекта Детальная настройка проекта

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

1. Создаем пустой объект, переименовываем в GameManager.

Создаем пустой объект

Создаем пустой объект

3. Создаем квадратный спрайт, называем его Pad (Assets → Create → Sprites → Square). Аналогично создаем круглый спрайт Ball (Assets → Create → Sprites → Circle). Масштабируем спрайт Pad со следующими параметрами – x:0.5, y:2.5, z:1.

Создаем спрайты

Создаем спрайты

4. Создаем префабы для Pad и Ball, после чего добавляем к ним компонент Box Collider 2D (включаем параметр Is Trigger) и компонент Rigidbody 2D (выставляем параметр Body Type в значение Kinematic).

Добавляем .компонент Box Collider 2D Настраиваем.компонент Box Collider 2D Добавляем компонент Rigidbody 2D Масштабируем спрайты

6. Заполняем скрипты следующим кодом.

GameManager.cs Ball.cs Pad.cs

6. Добавляем к префабу Ball и Pad теги с аналогичными именами. Выделив префабы, в инспекторе мы можем видеть выпадающий список тегов. Там же расположены и кнопки для добавления и редактирования тегов.

7. В настройках камеры выставляем параметр Projection в значение Orthographic, а параметр Clear Flag – в значение Solid Color.

Настройка камеры

Настройка камеры

8. Настраиваем кнопки, как показано на следующих скриншотах (Edit → Project Settings → Input Manager).

Настройка ввода, основное Настройка ввода, первый игрок Настройка ввода, второй игрок

Вот и всё, игра готова!

Пинг-понг, итоговый результат

Пинг-понг, итоговый результат

Билд для платформы Windows

1. Официальный туториал от Unity, где детально рассмотрен процесс создания roguelike RPG.

2. Youtube-канал Brackeys , где можно найти серию видеоуроков по созданию 2D-платформера.

3. Youtube-канал N3K EN содержит множество уроков как по отдельным компонентам Unity, так и полноценные серии уроков по созданию игр с нуля.

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

В числе прочего вы разработаете 2D-платформер с физическими загадками и динамическим освещением, научитесь портировать его на мобильные устройства. Кроме того, разработаете полноценную браузерную стратегию, а также игру в жанре двухмерных гонок.

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

Читайте также: