Привет, Хабр!
В этой серии статей мы с вами создадим 2D игру в игровом движке Unity3D в стиле Shoot'Em Up. Назовем её «The Great Paper Adventure».
Это перевод с английского языка, оригинал которого вы можете найти здесь.
Итак, самое первое, что мы сделаем – это скачаем и установим юнити с официального сайта.

В комплекте с Unity идет MonoDevelop – редактор кода.
Если вы являетесь обладателем Windows, то я советую для большего удобства вам использовать Visual Studio 2013.

MonoDevelop 4 очень похож на Xamarin Studio. Это значит, что это лучше, чем старый MonoDevelop 2 предыдущих выпусков Unity. Он, конечно, далек от совершенства, но если у вас Mac, это все-таки наилучший вариант, который у вас есть.
Unity позволяет выбрать вам один из трех языков: JavaScript (UnityScript), C# и Boo.
Я рекомендую использовать вам C#. это самый мощный язык, у которого наименьшее количество ошибок. Кроме того, в этой серии статей скрипты написаны на C#.
Если Вы новичок в Unity, то эта статья как раз для вас!!! Обучиться основным элементам Unity довольно легко. Вы можете не понять программу в первый раз, но, поверхностно изучив ее, она вам очень понравится.
За дополнительной информацией советую обращаться:
• Официальная справочная система Unity: Интересные обучающие видео.
• Unity Patterns: свежий новый сайт с великолепными статьями и инструментами.
Итак, давайте, наконец, приступим к созданию нашей игры.
Для начала давайте откроем наш Unity и выполним команду File->New Project. У вас откроется окно выбора пакетов. Конечно, вы можете их импортировать, но для вашего же удобства я советую вам этого не делать, так как вас это будет поначалу сбивать.

Игру будем создавать в режиме 2D, поэтому, в выпадающем меню выбираем соответствующий пункт. Не переживайте по поводу имени игры. Название продукта определяется в опциях и суть изменения имени всего проекта состоит только в переименовании папки, содержащей проект игры.
Сейчас в главном окне пустая сцена. Чтобы персонализировать интерфейс программы (переставить панели). Лично мне удобней видеть консоль игры рядом с макетом, однако, если вы не можете себе позволить по своим соображениям или вам не нравится такое расположение панелей, то можете использовать свою планировку.

Прежде чем начинать создавать игру, давайте потратим несколько минут на упрощение дальнейшей работы.
Я рекомендую создать папки в проекте по видам содержимого игры. Эти папки будут находиться в каталоге assets вашего проекта.
Примечание: папка “Assets” – это суперкаталог, содержащий все, что вы добавите в игру.

Это структура папок, которую я предпочитаю использовать, что и вам советую!
В панели «Project» теперь есть несколько разных папок для ресурсов:
Textures – текстуры.
Текстуры, спрайты и изображения из вашей игры. Если у вас игра в 2D, можно переименовать ее в “Sprites”.
Панель иерархия (Hierarchy) содержит все объекты, которые доступны в сцене. Это то, чем вы можете манипулировать при запуске игры копкой «Play».
Каждый объект сцены это «игровой объект» для Unity. Вы можете создать как корневой объект, так дочерний другого объекта игры. Также можно перемещать объект в любое время, изменяя его «родителя».

Как вы видите, у объекта level 3 дочерних объекта.
Трюк Unity состоит в том, что можно создавать пустые объекты, используя их в качестве «папки». Это упрощает иерархию вашей сцены.

Примечание: Изменение позиции будет влиять относительно на всех дочерние объекты. В этих уроках говорить об этой теме не будем, так что пусть пустые объекты стоят на позиции (0,0,0).
Пустые объекты следует рассматривать логическими объектами.
Обычно, с новой сценой создается MainCamera – главная камера. Запомните это.
На данный момент вам необходимо создать следующие пустые объекты:
• Scripts: сюда мы будем добавлять наши глобальные скрипты. Мы будем использовать данный объект, чтобы прикреплять скрипты, которые не относятся к другим объектам.
• Render: Переместите сюда камеру. Также, здесь мы поставим световые объекты.
• Level
У объекта level есть три дочерних пустых объекта:
• 0 – Background
• 1 – Middleground
• 2 – Foreground
Сохраните сцену в папке “Scenes”. Назовите сцену как вы посчитаете нужным (например, «Уровень1»).
У вас должно получиться следующее:

Мы только что создали базовую структуру нашей игры. В следующий раз мы начнем добавлять интересные вещи: фон и другие элементы.
В этой серии статей мы с вами создадим 2D игру в игровом движке Unity3D в стиле Shoot'Em Up. Назовем её «The Great Paper Adventure».
Это перевод с английского языка, оригинал которого вы можете найти здесь.
Итак, самое первое, что мы сделаем – это скачаем и установим юнити с официального сайта.

Выберем редактор кода:
В комплекте с Unity идет MonoDevelop – редактор кода.
Windows
Если вы являетесь обладателем Windows, то я советую для большего удобства вам использовать Visual Studio 2013.

Mac OS X
MonoDevelop 4 очень похож на Xamarin Studio. Это значит, что это лучше, чем старый MonoDevelop 2 предыдущих выпусков Unity. Он, конечно, далек от совершенства, но если у вас Mac, это все-таки наилучший вариант, который у вас есть.
Какой выбрать язык?
Unity позволяет выбрать вам один из трех языков: JavaScript (UnityScript), C# и Boo.
Я рекомендую использовать вам C#. это самый мощный язык, у которого наименьшее количество ошибок. Кроме того, в этой серии статей скрипты написаны на C#.
Если я в Unity новичок?
Если Вы новичок в Unity, то эта статья как раз для вас!!! Обучиться основным элементам Unity довольно легко. Вы можете не понять программу в первый раз, но, поверхностно изучив ее, она вам очень понравится.
За дополнительной информацией советую обращаться:
• Официальная справочная система Unity: Интересные обучающие видео.
• Unity Patterns: свежий новый сайт с великолепными статьями и инструментами.
Итак, давайте, наконец, приступим к созданию нашей игры.
Первая сцена
Создание нового проекта
Для начала давайте откроем наш Unity и выполним команду File->New Project. У вас откроется окно выбора пакетов. Конечно, вы можете их импортировать, но для вашего же удобства я советую вам этого не делать, так как вас это будет поначалу сбивать.

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

Прежде чем начинать создавать игру, давайте потратим несколько минут на упрощение дальнейшей работы.
Я рекомендую создать папки в проекте по видам содержимого игры. Эти папки будут находиться в каталоге assets вашего проекта.
Примечание: папка “Assets” – это суперкаталог, содержащий все, что вы добавите в игру.

Это структура папок, которую я предпочитаю использовать, что и вам советую!
Ресурсы проекта
В панели «Project» теперь есть несколько разных папок для ресурсов:
- Prefabs – заготовки.
Многоразовые игровые объекты (Пули, враги, бонусы) – заготовки(с англ. Prefabs).
Заготовки можно рассматривать как класс в ООП. Их можно дублировать, трансформировать, добавлять во время исполнения игры. - Scenes – сцены.
Сцены – в основном это меню или уровень. Сцены, в отличие от других объектов, создаваемых в проекте, создаются через меню «Файл». Если вы хотите создать сцену пройдите по пути: «Файл»->«Создать сцену». Не забудьте сохранить сцену в папку “Scenes”. - Sounds – звуки.Тут, я думаю, все ясно. Эта папка для отделения звуков от других файлов.
- Scripts – Скрипты.
Textures – текстуры.
Текстуры, спрайты и изображения из вашей игры. Если у вас игра в 2D, можно переименовать ее в “Sprites”.
Первая сцена игры.
Панель иерархия (Hierarchy) содержит все объекты, которые доступны в сцене. Это то, чем вы можете манипулировать при запуске игры копкой «Play».
Каждый объект сцены это «игровой объект» для Unity. Вы можете создать как корневой объект, так дочерний другого объекта игры. Также можно перемещать объект в любое время, изменяя его «родителя».

Как вы видите, у объекта level 3 дочерних объекта.
Пустые объекты
Трюк Unity состоит в том, что можно создавать пустые объекты, используя их в качестве «папки». Это упрощает иерархию вашей сцены.

Примечание: Изменение позиции будет влиять относительно на всех дочерние объекты. В этих уроках говорить об этой теме не будем, так что пусть пустые объекты стоят на позиции (0,0,0).
Пустые объекты следует рассматривать логическими объектами.
Заполнение сцены
Обычно, с новой сценой создается MainCamera – главная камера. Запомните это.
На данный момент вам необходимо создать следующие пустые объекты:
• Scripts: сюда мы будем добавлять наши глобальные скрипты. Мы будем использовать данный объект, чтобы прикреплять скрипты, которые не относятся к другим объектам.
• Render: Переместите сюда камеру. Также, здесь мы поставим световые объекты.
• Level
У объекта level есть три дочерних пустых объекта:
• 0 – Background
• 1 – Middleground
• 2 – Foreground
Сохраните сцену в папке “Scenes”. Назовите сцену как вы посчитаете нужным (например, «Уровень1»).
У вас должно получиться следующее:

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