Работа в Unity3d: основы создания игр. Работа в Unity3d: основы создания игр Как создавать игры в unity3d

  • 30.12.2020

Unity - это игровой движок, на котором строится большая часть современных игр на разных платформах. Посредством движка реально создавать игры, ориентированные на запуск на компьютерах (Windows, Linux, MacOS), мобильных телефонах, планшетных компьютерах (Android, iOS, Windows Phone) и даже игровых приставках PlayStation, Xbox, Nintendo.

Создание игр на движке Unity невозможно представить без написания дополнительного кода. В Unity поддерживается два языка программирования - и . Раньше также поддерживался язык Boo, но позже от него отказались.

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

В Unity используется встроенные функции, которых нет ни в C#, ни в JavaScript. За счёт этого особо не имеет значения знает вы язык программирования или нет. Тем не менее, мы все же рекомендуем сперва пройти курс по изучению языка C#. Курс представлен на нашем сайте по .

План курса

За курс мы создадим простую игру под названием «Roll a Ball». В игре будет шар, который можно будет передвигать за счёт стрелок на клавиатуре. При передвижении объект сможет поглощать другие объекты на поверхности, тем самым собирая очки.

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

Всем привет! Научившись делать игры на этом движке, я хочу вас научить тому-же. Во-первых нам понадобится сама Unity3d, любой редактор 3D моделей и прямые руки, растущие из плечей.

1. Изучение программы

Для начала, рекомендую установить Monodevelop ! Давайте разберемся, что такое Unity. Unity - мультиплатформенная среда разработки игр. Именно из-за ее простоты и понятности каждый третий хоть раз делал на ней игры.

Рассмотрите скрин выше:

  • Сцена - ваша песочница для творчества.
  • Проект - здесь находятся все анимации и модели, звуки и текстуры.
  • Для установки моделей в верхнем тулбаре выбирайте Assets-Import New Asset. Также можно Assets-Import Package-Custom Package. Во втором случае пакет должен быть в расширении.unity.
  • Иерархия - все объекты на сцене. Там вы создаете родителей для объекта. Просто переместите в меню иерархии объект к другому, и он прицепится. В итоге получится своеобразная папка.
  • Тулбар - список инструментов. Там вы можете включить 2D,3D режим.
  • Инспектор - характеристика объекта, там вы добавляете анимации, скрипты и другое. Там вы можете использовать инструменты: перемещение камеры, перемещение объекта, растяжка, разворот объекта.


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

Думаю, что с этим меню у вас не будет проблем.
Чтобы создать какой либо объект кликайте.

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

2. Создание простейшей игры

Для начала создадим территорию Create-Terrain. Добавляем траву и деревья. Нажав на землю справа появится окно выбираем деревья, траву.


Также создайте горы и неровности. Затем загружайте Characher controller pack в проект. После чего ищем в окне с проектом Standart assets-Characters controller и выбираете вид от первого лица (капсула) или от третьего (механик).
Если первое лицо, то просто ставьте его на землю. Если же от третьего, то надо загрузить анимацию. Также рекомендую установить освещение на сцене Create-Directional Light.


Для добавления музыки перетащите ее на нужный объект.
Игра готова, но как ее скомпилировать?

Для этого зайдите в File-Build settings-player settings (для ярлыка и названия). Выбираете платформу и вуаля, готово. Для этого вам надо установить Android SDK. Но там надо указывать папку с SDK, причем надо не просто SDK, а именно API нужного уровня (например у Android 4.2 - API 17). Например, чтобы игра была на Android 4.0+ надо установить эти API.

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

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

Ни одна успешная игра не обходится без красивой графики, поэтому создание дизайна – один из важнейших этапов разработки. Дизайн на ОС Android реализовывается с помощью «дизайн-документа» или диздока. Начать создание игрушки нужно именно с его детальной проработки. В файле содержится:

  1. Объектные модели;
  2. Функциональные спецификации;
  3. Игровой контент;
  4. Интерфейс.

Рассмотрим каждый из пунктов более подробно.

Объектные модели

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

Функциональные спецификации

Здесь описывается геймплей, основные возможности каждого персонажа. Также здесь дается описание особенностей игровых предметов – оружия, аптечек, брони и других. По сути, функциональные спецификации – это правила, по которым происходит игровой процесс. Чем лучше будет проработан данный раздел, тем легче будет создать качественную Андроид-игру.

Игровой контент

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

Интерфейс

Интерфейс – это то, как пользователь будет взаимодействовать с игрой. Он включает в себя кнопки, с помощью которых можно управлять персонажем, и разделы меню: например, играть, счет, настройки, топ игроков, справка. Если вы не имеете опыта в создании приложений на Андроид, перед созданием собственного скачайте с Плей Маркета и проанализируйте популярные игры и перенесите лучшие решения в свой проект.

Игровой движок

Основой любой игры является движок. Это программное обеспечение, позволяющее разрабатывать и запускать ее. Он содержит целый комплекс программ, включающий движок рендеринга, физический движок, звук, анимацию и многое другое. Чтобы облегчить процесс написания программ, сторонние разработчики создают собственные игровые движки специально для Андроид-приложений.

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

UDK

Torque 2d/3d

Что такое конструктор игр?

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

Конструктор позволяет создавать игры различных жанров для Windows, Android и iOS. Предлагает большой выбор готовых локаций, объектов, персонажей и звуковых оформлений, поэтому создание первой Андроид-игры не займет много времени. Пользователи, знакомые с языками программирования JS и C++, могут использовать встроенный GML. Единственный недостаток заключается в том, что программа не переведена на русский язык.

Заключение

Создание игры на Андроид – не совсем простое, но очень прибыльное дело. Если вы решили разработать игру и зарабатывать на ней, сначала проработайте идею. Далее напишите «дизайн-документ» и определитесь с игровым движком, который сможет максимально раскрыть ее потенциал. После этого можно приступать непосредственно к созданию приложения в конструкторе.

Видео

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

Об истории движка Unity и его преимуществах мы уже успели рассказать в статье « ». Если вкратце, то эта технология является невероятно популярной среди инди-разработчиков, а также ряда крупных студий, которые создают на ней игры самых разных жанров. Ниже мы рассмотрим лучшие из тех проектов, что удалось породить с помощью Unity.

10 место

Оригинальный инди-шутер с видом от 1-го лица, созданный одноименной командой Superhot Team. Будучи небольшой демонстрацией для конкурса 7 Day FPS Challenge, игра переросла в демоверсию , а затем перебралась на Kickstarter, где получила необходимое финансирование и впоследствии стала полноценной игрой.

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

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

9 место

Очередная инди-игра, созданная компанией Failbetter Games. Сама по себе Sunless Sea не является культовой и не предлагает уникальных вещей. Внести её в список мы решили лишь потому, что в целом игра выполнена качественно, а её жанр - roguelike - сегодня в чистом виде практически невозможно встретить на просторах игровой индустрии.

Собрав средства на Kickstarter, разработчики решили выпустить спин-офф к собственной браузерной RPG Fallen London. Все действие Sunless Sea развивается в той же вселенной и в тех же временных рамках - декорациях Викторианской эпохи, вобравшей в себя мистическую тематику и фэнтези по типу легенд о Ктулху.

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

Если вы хотите поиграть в игру с чудесным миром, отлично проработанными сценками и хорошим сюжетом, не уступающим серьезным книгам, то Sunless Sea точно вам понравится.

8 место

MMO-симулятор, в котором игрокам необходимо совместно управлять огромным дирижаблем. Guns of Icarus Online разработана в стиле . Никакого мира или описания вселенной в этой игре вы не встретите - все происходящее разворачивается на безликих небесных пространствах, где сталкиваются боевые дирижабли.

Будучи сессионной, игра предлагает геймерам поучаствовать в сетевых баталиях как 1 на 1, так и в виде массовых сражений. Однако 1 на 1 - понятие условное, так как каждую единичку олицетворяют четыре настоящих игрока.

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

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

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

В Guns of Icarus Online представлено немало уникальных дирижаблей, каждый из которых обладает собственными огневой мощью и характеристиками. Победы же достигнет та команда, которая отправит вражескую технику в свободный полет - т.е. уничтожит.

7 место

Проект, устроивший по себе вакханалию «хайпа» в 2016 году, которая захлестнула весь интернет, проникла на телевидение и в газеты. является бесплатной игрой для мобильных устройств, в которой игроку необходимо коллекционировать известных персонажей-монстров из вселенной Pokemon.

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

Однако же только Pokemon Go удалось получить громкий отклик от общественности - игра была загружена более чем 100 миллионами человек со всего мира. Студии Niantic же удалось заработать около полумиллиарда долларов.

6 место

В 2016 году студия Campo выпустила интересный инди-проект - игру в с видом от 1-го лица, которая рассказывает историю об обычном человеке по имени Генри и его проблемах, что порождает современное общество.

События игры разворачиваются в лесу Шошони 1989 года, как раз в то время, когда начался Йеллоустонский пожар. Главный герой Генри, потерявший любимую жену, решает абстрагироваться от социума и уйти в отшельничество, став наблюдателем леса на одной из пожарных вышек.

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

5 место

Студия Obsidian Entertainment продолжает созданную ей же тенденцию по воскрешению «олдскульных» ролевых игр. После успешной Pillars of Eternity разработчики принялись за - проект того же жанра, который рассказывает совершенно новую историю.

Как и PoE, поиграть в которую мы также вам советуем, Tyranny сделана на движке Unity. В техническом плане игра (как и все вышеописанные) ничего нового не предлагает - это использование все тех же технологий границы 1990-х и 2000-х, которые в свое время использовались в CRPG.

Будучи знакомы с жанром, вы столкнетесь с привычным партийным геймплеем и паузой. Вас ожидают сложные битвы, в которых нужно использовать все умения героев, и разветвленные сюжет и диалоги, являющиеся главной изюминкой Tyranny. Фанатам Baldur’s Gate и Planescape: Torment рекомендуется.

4 место - Rust

В бескрайней пахучей жиже под названием «Симулятор выживания в раннем доступе» очень тяжело отыскать что-то стоящее, кроме непосредственно пахучей жижи. Однако исключения все же имеют место быть, о чем нам красноречиво заявляет Rust. Этот «выживастик» прежде всего отличается от сотен подобных клонов тем, что стал одним из первых в своем роде.

Rust

Проект Rust долго находился в раннем доступе (с 2013 года), что по сути причисляло её в проклятый стан «альфа-игр», которым никогда не суждено выйти. Тем не менее, игра уже так давно обновляется и обросла таким количеством контента, что в раннем доступе она находилась скорее по прихоти разработчиков, нежели из-за технических причин. Наконец, 8 февраля 2018 игра все же вышла официально.

Вообще, все сумасшествие с играми в раннем доступе в началось с DayZ, которая как гром среди ясного неба навалилась на индустрию. Именно на неё ориентировались разработчики Rust, правда, вскоре они решили отойти от первоначальной затеи и смешать особенности DayZ с Minecraft.

Собственно, суть Rust заключается в самом жанре - вам необходимо выживать. Игра работает исключительно в сетевом режиме, так что вам придется взаимодействовать с другими игроками.

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

Мы бы не разместили её в топе, если бы она, как уже упоминалось выше, не стала одним из первопроходцев жанра. Качественная игра, которой удалось реализовать более 5 миллионов копий к 2016 году, что во многом говорит в пользу Rust.

3 место

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

В большинстве своем игры на Unity создаются инди-разработчиками (примерно 90% от общего количества). В основном, понятное дело, подобные проекты проваливаются или просто остаются незамеченными аудиторией, что бьет по презентабельности Unity. И лишь изредка игры вроде вихрем проносятся среди конкурентов, оставляя всех позади.

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

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

Обсуждать какие-либо инновационные технологии в случае с Inside не выйдет. Unity, который использовали , просто подарил им широкий инструментарий и легкость в работе, чего не могут предложить топовые движки вроде Frostbite.

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

2 место

Ещё одним интересным проектом на Unity является космический симулятор Kerbal Space Program - увлекательнейшая , в которой вам предлагается воздвигнуть собственный космодром, построить ракету и запустить её в космос!

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

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

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

Разобравшись со строительством ракеты, вы попытаетесь выбраться на орбиту Земли, а затем и вовсе покинуть её, чтобы добраться до других планет. В Kerbal Space Program присутствуют живые существа - кербалы, которыми и предстоит стать вашими космонавтами.

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

В общем и целом, Kerbal Space Program - это игра огромной сложности, одолев которую вы получите уйму удовольствия и станете чуточку более эрудированным.

1 место

Серия Civilization стояла у истоков жанра 4Х-стратегий. Начиная с 1990-х, она прошла огромный путь и до сих пор продолжает считаться лучшей из лучших. Естественно, что из года в год всплывающие финансовые успехи серии не раз побуждали и продолжают побуждать сторонних разработчиков выпускать нечто подобное.

Некоторые работают под копирку, меньшинство - делает уникальные игры, которые во многом даже превосходят Civilization. Endless Legend, разработанная студией Amplitude на движке Unity, как раз из таких.

Endless Legend вышла в 2014. По прошествии трех лет она получила четыре крупных и не растеряла той, пускай и небольшой, но все же базы фанатов, которым сильно полюбилась эта волшебная стратегия.

И хотя цели 4Х-стратегии не отличаются от многих других (вы должны полностью уничтожить противника, либо достичь научной/территориальной/дипломатической победы), её сеттинг и некоторые особенности значительно выделяются среди конкурентов.

Если вам надоела Civilization и подобные ей клоны, то обратите внимание на Endless Legend - игру с собственной чарующей вселенной и уникальными механиками, которые, вполне вероятно, могут полюбиться вам гораздо больше, чем «фишки» той же Civilization.

Видео: трейлер Endless Legend


Лайк, если понравилось

В первой главе вы найдете основную информацию по загрузке и установке Unity и подготовке первой сцены нашей игры.

Настройка среды в Unity

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

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

Для редактирования кода в Unity (4.0.1 и выше) служит редактор MonoDevelop. Если вы работаете в Windows, вы можете (и я вам советую) использовать альтернативый редактор Visual Studio 2013 Desktop (C#) для Windows , после чего в настройках Unity измените редактор по умолчанию на Visual Studio.

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

Mac OS X

Заметка о папке 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 . Вот, что у нас получилось:

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

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

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

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


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

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

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

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

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

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


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

Мой спрайт не появляется в диалоговом окне! Убедитесь, что вы находитесь в вкдадке Assets диалогового окна "Select Sprite" (Выбрать спрайт). Если вы видите диалоговое окно пустым, - не пугайтечсь. Дело в том, что для некоторых установок Unity, даже со свежим новым 2D проектом изображения импортируются как "Текстура", а не "Спрайт". Чтобы это исправить, необходимо выбрать изображение на панели "Проект", и в "Инспекторе", изменить свойство "Текстура Type" имущество "Sprite":

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


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

Tip : Вы можете создать копию объекта с помощью клавиш cmd + D в OS X или ctrl + D Windows .

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

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

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

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

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

Настройка 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 (Префабы)


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


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

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

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

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

Слои

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

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


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

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

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