Основы разработки игр на unity

ТУСУР

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

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

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

Плюсы Unity:

  • Кроссплатформенность — поддерживаются Windows, MacOS, Wii, iPhone, iPod, iPad, Android, PS3 и XBox 360.
  • Современный уровень графики (есть deferred освещение, встроенный редактор шейдеров, стандартный набор постпроцессинговых эффектов.
  • Физический движок — PhysX.
  • Полноценное 3D в браузере! Скорость и сложность разработки обычной браузерной казуалки на ней не выше, чем на Flash, а графическое превосходство — налицо.

Да и wow-эффект! Яркий пример — Джаггернаут отечественных разработчиков (IT Territory LLC под эгидой mail.ru). Мощь и невероятные способности движка Unity3D позволили этой игре моментально завоевать огромную армию поклонников по всему миру.

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

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

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

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

Надлежащее поведение

Создатели Unity достаточно умны. Они знали, что вы, как создатель миров, должны будете учить свои игровые объекты, как себя вести в любом мире, созданном вами для них. Так почему я говорю о том, что Unity достаточно умная среда разработки? Посмотрите на слово, на изображении. (Справочник по скриптам)

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

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

Мониторинг обучения с помощью TensorBoard

  1. Откройте окно Anaconda или Python. Активируйте виртуальную среду ml-agents. Не закрывайте окно, в котором запущена модель обучения; нам нужно, чтобы оно продолжалось.
  2. Перейдите в папку ML-Agents/ml-agents и выполните следующую команду:
    tensorboard --logdir=summaries
  3. Так мы запустим TensorBoard на собственном встроенном веб-сервере. Вы можете загрузить страницу при помощи URL, который показан после предыдущей команды.
  4. Введите URL для TensorBoard, как показано в окне, или введите в браузере localhost:6006 или machinename:6006. Спустя примерно час вы должны увидеть нечто подобное:
    Окно графиков TensorBoard
  5. В предыдущем скриншоте показаны графики, каждый из которых отображает отдельный аспект обучения. Чтобы понять, как обучается наш агент, нужно разобраться с каждым из этих графиков, поэтому мы проанализируем выходные данные из каждого раздела:

Подробная картина графиков раздела Environment

  • Cumulative Reward: это общее вознаграждение, которое максимизирует агент. Обычно нужно, чтобы оно увеличивалось, но по некоторым причинам оно может и уменьшаться. Всегда лучше максимизировать вознаграждения в интервале от 1 до -1. Если на графике вознаграждения выходят за пределы этого диапазона, то это тоже необходимо исправить.
  • Episode Length: если это значение уменьшается, то обычно это хороший знак. В конечном итоге, чем короче эпизоды, тем больше обучения. Однако имейте в виду, что при необходимости длина эпизодов может увеличиваться, поэтому картина может быть и другой.
  • Lesson: этот график даёт понять, на каком уроке находится агент; он предназначен для Curriculum Learning.
  • Losses: в этом разделе показаны графики, представляющие вычисленные потери или затраты для политики и значения. Ниже показан скриншот этого раздела со стрелками, указывающими на оптимальные параметры:
    Потери и предпочтительное направление обучения
  • Policy Loss: этот график определяет величину изменения политики со временем. Политика — это элемент, определяющий действия, и в общем случае этот график должен стремиться вниз, показывая, что политика всё лучше принимает решения.
  • Value Loss: это средняя потеря функции значения. По сути она моделирует, насколько хорошо агент прогнозирует значение своего следующего состояния. Изначально это значение должно увеличиваться, а после стабилизации вознаграждения — уменьшаться.
  • Policy: для оценки качества действий в PPO используется концепция политики, а не модели. На скриншоте ниже показаны графики политики и предпочтительный тренд:
    Графики политики и предпочтительные тренды
  • Entropy: этот график показывает величину исследования агента. Нужно, чтобы это значение уменьшалось, потому что агент узнаёт больше об окружении и ему нужно меньше исследовать.
  • Learning Rate: в данном случае это значение должно постепенно линейно уменьшаться.
  • Value Estimate: это среднее значение, посещённое всеми состояниями агента. Чтобы отражать увеличение знаний агента, это значение должно расти, а затем стабилизироваться.
mlagents-learn config/trainer_config.yaml --run-id=secondRun --train

XYZ School

Онлайн-школа, которая учит всем аспектам создания игр — от концепт-арта и 3D-графики до геймдизайна и программирования. Инструкторы — действующие профессионалы индустрии: они работают в таких компаниях, как Blizzard, People Can Fly и CD Projekt Red.

Бесплатный курс Intro Hyper Casual

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

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

Программа intro-курса

  • Обзор основных функций движка Unity и Bolt
  • Постановка задачи
  • Создание игровых механик
  • Создание драфтовой геометрии
  • Подключение 3D моделей из библиотеки
  • Стилизация и подключение шейдера

Онлайн школа обучения IT профессиям «ItProger»

Программа рассчитана на новичков, которые хотят войти в сферу построения игр. За программу вы изучите разработку как 2D, так и 3D игр при помощи движка Unity и языка C#.

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

Что будет в курсе:

  • Большая база знаний. На протяжении 2 месяцев вам предстоит пройти 85 уроков, что состоят из теоретических и практических лекций. Общая продолжительность которых более 41 часа.
  • Каждый новый модуль открывается по времени в 19:00. У вас будет достаточно времени чтобы пройти все уроки, а также выполнить домашние задания, прежде чем переходить к новому модулю.
  • К каждой лекции есть задания, которые вам предстоит отправлять на проверку. Также на самом сайте вы найдете сотни тестовых и более 200 практических заданий на вкладке «Тесты и практика».
  • Каждый ученик получает поддержку как со стороны лектора, так и со стороны наставника. Все вопросы можно задавать напрямую через специальную форму на сайте.

Навыки:

  • Знание языка C#
  • Создание Windows программ на C#
  • Работа с БД C# и БД Unity
  • Разработка мобильных 2D проектов
  • Разработка 3D проектов в Unity
  • Создание анимации в Unity
  • Публикация в Google Play и App Store
  • Разработка AR приложений
  • Внедрение монетизации в игры
  • Навыки создания простого ИИ

Уроки для начинающих

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

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

Цикл «2D-игра на Unity-5» состоит из 20 видеороликов. Ментор обещает научить писать скрипты, работать в Юнити, создавать мобильный игровой продукт. По окончании у юзеров будет готов гейм-проект, который можно попробовать загрузить в App Store и Google Play. 
 
 

Graphical Design

155 бесплатных видео насчитывается в тематическом плейлисте на канале Graphical Design. Каждый из уроков посвящен определенной функции движка или примеру его использования.
 

Среди изучаемых тем – «2D-платформер», «2D-свет», «движение по клику в 3D», «отслеживание персонажа», «спрайт-маска», «эффект воды», «ускорение персонажа», «диалоги», «сбор и накапливание кристаллов», «локализация», «рестарт уровня» и др. Интересен и мини-курс «U-C#-ООП», где рассматриваются вопросы наследования, свойств, методов и циклов.

Туториалы от Flatingo

На ютуб-канале инди-разработчика выложены обучающие материалы для тех, кто разделяет увлечение автора

По интересующей дисциплине внимание заслуживают подборки «U-уроки» или «Создание игр на Unity3D, рисование 2D-графики».
 

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

Coursera

Бизнес, IT, наука о данных, иностранные языки – области, в которых международный образовательный сервис Coursera предлагает онлайн-программы ведущих мировых вузов и предприятий.

Специализация «Game Design and Development», представлена университетом штата Мичиган (США). Контент – теоретическая база и практические рекомендации по производству видеоигр с использованием Unity-5. Потребители научатся разрабатывать концепцию, прототипировать и тестировать идеи, ориентироваться в лицензировании и маркетинге. Партнером является известный портал онлайн-игр, который предоставляет шанс для старта и монетизации начинающим профи. Наличие субтитров (в том числе и на русском) помогает с восприятием англоязычных наставников. 
 

ITVDN

Бесплатный видеокурс «Введение в U и основы программирования» обеспечивает стартовыми знаниями для вхождения в сферу геймдева. Юзеры разберутся с устройством редактора и его функциями, узнают об отличиях класса от объекта.

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

 
— Курсы по геймдизайну и разработке игр

 
— Обучение созданию игр с нуля

 
— Курсы по Unreal Engine

Unity

Развивайте навыки и карьеру в собственном темпе с помощью обучающих ресурсов или под руководством экспертов Unity.

Получите три месяца бесплатного доступа к Unity Learn Premium и присоединяйтесь к Create with Code Live — виртуальному онлайн-курсу для учащихся, преподавателей и для всех, кто хочет научиться программированию.

Есть ресурсы как для новичков и студентов, так и для экспертов и профессионалов:

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

Скриптофобия

Теперь я спрашиваю вас, настолько ли трудным был процесс? Беспокоил ли он вас, потому что вы не верили в то, что сможете сделать все это? Заходили ли вы на форум, чтобы спросить о том, как вести разговор, а после разговаривали по телефону в середине всего этого?

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

У вас есть такие страхи, которые не дают вам написать несколько инструкций в последовательном ключе?

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

Запуск агента

  1. Скачайте плагин TFSharp отсюда
  2. В меню редактора выберите Assets | Import Package | Custom Package…
  3. Найдите только что скачанный пакет ассета и используйте диалоговые окна импорта для загрузки плагина в проект.
  4. В меню выберите Edit | Project Settings. Откроется окно Settings (появилось в версии 2018.3)
  5. Найдите в Player options символы Scripting Define Symbols и измените текст на ENABLE_TENSORFLOW, а также включите Allow Unsafe Code, как показано на скриншоте:
    Установка флага ENABLE_TENSORFLOW
  6. Найдите объект GridWorldAcademy в окне Hierarchy и убедитесь, что он использует Brains | GridWorldLearning. Отключите в разделе Brains скрипта Grid Academy опцию Control.
  7. Найдите мозг GridWorldLearning в папке Assets/Examples/GridWorld/Brains и убедитесь, что параметр Model в окне Inspector задан, как показано на скриншоте:
    Задание модели для мозга
  8. В качестве модели уже должна быть задана GridWorldLearning. В этом примере мы используем TFModel, поставляемую с примером GridWorld.
  9. Нажмите Play, чтобы запустить редактор и посмотреть, как агент управляет кубом.

Обнаружение столкновений

Ранее мы упоминали компоненты Collider и Rigidbody, которые можно добавить к объекту. Правило для столкновений состоит в том, что один объект в столкновении должен иметь твердое тело, а другой — коллайдер (или оба имеют оба компонента). Обратите внимание, что при использовании raycasting лучи будут взаимодействовать только с объектами, к которым прикреплены компоненты коллайдера. После настройки в любом настраиваемом компоненте, прикрепленном к объекту, мы можем использовать методы OnCollisionEnter, OnCollisionStay и OnCollisionExit для реагирования на коллизии. Получив информацию о столкновении, мы можем получить ответственность за GameObject и использовать то, что мы узнали ранее, для взаимодействия с прикрепленными к нему компонентами

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

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

Установите флажок «Кинематика», чтобы отключить нежелательную физику, но сохранить хорошее обнаружение столкновений.

Объекты Unity Game

Что такое GameObjects

GameObjects — это основной строительный блок всего игрового движка Unity. Название почти выдает это:Все, что вы помещаете в сцену в Unity, должно быть заключено в «игровой объект».

Если у вас есть опыт веб-дизайна, вы можете думать о GameObjects как о элементах <div>! Чрезвычайно скучные контейнеры, но они легко расширяемы для создания сложной функциональности или визуальных эффектов.

Я поднял это прямо из окна редактора Unity, чтобы подчеркнуть это.

Буквально все, от эффектов частиц, камер, игроков, элементов пользовательского интерфейса… (список продолжается) — это GameObject.

Создание иерархии

Как и <div> в веб-разработке, GameObject также является контейнером. Подобно тому, как вы вкладываете <div> для создания разнообразных и желаемых макетов или абстракций, вы можете сделать то же самое с игровыми объектами.Логика вложения игровых объектов во многом такая же, как и при веб-разработке, я приведу несколько примеров …

Беспорядок и эффективность

Позиционирование

Открытое образование

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

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

Для успешного прохождения курса, необходимо знание языка программирования C#, а также крайне желателен хотя бы базовый уровень английского.

В состав курса входят видеолекции, видеопрезентации, интерактивные формы обучения в формате видеоконференций. Длительность курса составляет 10 недель. Трудоемкость курса – 3 зачетные единицы. Средняя недельная нагрузка на обучающегося – 10 часов.

Результаты обучения:

  • Знание на уровне представлений алгоритмов, методов и средств обработки информации, применяемых при анализе научно-технической информации, отечественного и зарубежного опыта по тематике исследования.
  • Знание на уровне представлений основ объектно-ориентированного программирования, синтаксиса языка программирования C#.
  • Знание на уровне воспроизведения инструментальных средств разработки, доступных у платформы Unity.
  • Знание на уровне воспроизведения назначений и основных свойств стандартных элементов Unity.
  • Умения теоретические собирать эмпирический материал, опираясь на современные источники, осуществлять сбор, анализ научно-технической информации, отечественного и зарубежного опыта по тематике исследования.
  • Умения практические реализовывать базовые алгоритмические конструкции на языке программирования C#.
  • Владение навыками самостоятельного проведения библиографической работы с привлечением современных электронных технологий.
  • Владение навыками работы с интегрированной средой разработки, которая позволяет реализовывать разработку проекта.

Встроенные компоненты Unity

Компонентная модель актера

Сами по себе GameObjects довольно бесполезны — как мы видели, они в значительной степени просто контейнеры. Чтобы добавить к ним функциональность, мы должны добавить компоненты, которые по сути представляют собой сценарии, написанные на C # или Javascript.

Unity работает на основе модели компонентов акторов, проще говоря, GameObjects — это актеры, а компоненты — ваши скрипты.

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

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

Ключевые встроенные компоненты

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

  • MeshFilter: позволяет назначать материалы для 3D-сетки GameObject.
  • MeshRender: позволяет назначать материалы 3D-сетке.
  • Collider: позволяет обнаруживать GameObject во время столкновений.
  • Rigidbody: позволяет реалистичному физическому моделированию воздействовать на GameObjects с 3D-сетками и запускать события обнаружения на коллайдерах боксов.
  • Свет: освещает части вашей сцены.
  • Камера: определяет область просмотра игрока, которая будет прикреплена к GameObject.
  • Различные компоненты холста пользовательского интерфейса для отображения графического интерфейса пользователя

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

Просто нажмите на раздел справки, документация в целом довольно хороша

Где получить опыт Юнити-разработки

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

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

Кроме того, обучающие программы, рассчитанные на 1-2 года, включают стажировку. Вы сможете принять участие в разработке реальной видеоигры на Юнити – в самой онлайн-школе или в партнерской гейм-студии.

Почему Unity?

Если вы хотите делать игры

Когда дело доходит до разработки инди-игр, вариантов действительно очень мало. Если вы хотите создавать игры, есть три основных варианта: Unreal, Unity или GameMaker.

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

В Unity есть множество очень успешных игр, таких как Escape from Tarkov (FPS), Monument Valley (Puzzler) и This War of Mine (Стратегия / Выживание).

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

Если вы хотите прототипировать пользовательский опыт

Поскольку Unity — это всего лишь движок с кучей физики, анимации и 3D-рендеринга в реальном времени, это также отличное место для создания полноценных интерактивных прототипов для исследований UX.

Unity полностью поддерживает VR и AR и, следовательно, может стать отличным инструментом для изучения архитектуры, автоматизации и моделирования с помощью клиентов.

Сколько зарабатывает юнити разработчик

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

Источник Минимальная зарплата Максимальная зарплата
workius.ru 30 000 руб. 200 000 руб.
hh.ru 23 000 руб. 250 000 руб.
russia.trud 63 500  руб. 100 000 руб.

Больше информации о навыках и умениях юнити специалиста смотрите в этом видео. Автор канала подробно рассказывает о требованиях к кандидатам на должность разработчика.

Unity Junior Developer — Требования к кандидатам

Окно иерархии

Окно иерархии (Hierarchy Window) содержит список всех текущих объектов (GameObjects), используемых в вашей игре. Но что такое GameObject? Простыми словами, GameObject — это объект в вашей игре.

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

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

Сцена обычно представляет один уровень вашей игры, хотя теоретически вы можете поместить всю игру в одну сцену. Любые GameObjects, активно используемые в вашей игре в текущей сцене, появятся в окне Иерархии (Hierarchy).

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

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

Разные настройки редактора

Данные элементы управления обрабатывают различные аспекты редактора. Первый — это раскрывающийся список Collab, который находится с правой стороны панели инструментов.

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

Следующая кнопка — кнопка Сервисы, где вы можете добавить дополнительные сервисы Unity в игру. Нажатие на кнопку предложит вам создать идентификатор проекта Unity.

Как только вы добавите идентификатор проекта, вы сможете добавить сервисы в ваш проект.

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

Вы также можете добавить:

  • аналитику
  • внутриигровую рекламу
  • многопользовательская поддержку
  • покупку в приложении
  • отчеты о производительности
  • сотрудничество

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

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

Четвертая кнопка — кнопка Слои (Layers).

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

Последняя кнопка Макеты (Layouts) позволяет создавать и сохранять макеты в редакторе и переключаться между ними. Unity прекрасно настраивается. Каждый из различных окон в макете может быть изменен, закреплен, перемещен или даже полностью удален из редактора.

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

Как научиться создавать игры на Юнити с нуля

Если хотите научиться разработке игр на Юнити, то у вас есть 3 варианта обучения:

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

Каждая из форм обучения имеет свои особенности – расскажем о них подробнее и дадим рекомендации будущим Unity-разработчикам.

Самостоятельно

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

Например, начинающим разработчикам игр на Юнити рекомендуют следующие книги:

  • «Unity и C#. Геймдев от идеи до реализации» Д. Бонда.
  • «Game Engine Architecture» Д. Грегори.
  • «Unity для разработчика. Мобильные мультиплатформенные игры» Д. Мэннинга и П. Батфилд-Эддисона.

А также будет полезно изучить руководство пользователя на официальном сайте Юнити или найти видеоуроки, например, на Youtube.

Стоит отметить и трудности, с которыми вы столкнетесь в процессе самообучения:

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

В вузе

Несмотря на то, что геймдев – это популярное и востребованное направление, в российских университетах нет специальности «Разработчик игр». Но можно выбрать любой другой IT-факультет, на котором изучают математику, информатику и языки программирования, например, «Информационные технологии», «Разработка ПО», «Вычислительная техника».

Помимо этого учеба в вузе имеет и другие минусы:

  • Нет возможности учиться и параллельно работать из-за необходимости очно посещать лекции.
  • Высокая стоимость. Обучение длится не менее 4 лет, поэтому расходы быстро не окупятся.
  • Каждые 3-4 месяца нужно сдавать курсовые, зачеты и экзамены, в том числе по второстепенным дисциплинам.
  • Много устаревшей или неактуальной теории, которая не пригодится в работе.
  • Недостаточно практических занятий, из-за чего после выдачи диплома вы будете теоретиком, а не практиком.
  • Придется самому искать стажировку, чтобы получить реальный опыт.

На онлайн-курсах

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

Дистанционная учеба имеет множество плюсов:

  • Гибкий график – можно смотреть онлайн-трансляции по расписанию или записи занятий в свободное время.
  • Учебная программа содержит только нужную теорию, без воды и лишней информации.
  • Знания сразу же закрепляют на практике – будут воркшопы и домашние задания с проверкой.
  • К концу курса у вас готовое портфолио из нескольких игр разных жанров.
  • Доступ к видеолекциям останется навсегда, их можно смотреть неограниченное количество раз.
  • Вы сможете общаться с экспертами отрасли – опытными разработчиками, геймдизайнерами и руководителями game-студий.
  • HR-консультант онлайн-школы бесплатно проконсультирует вас по вопросам трудоустройства.

Кнопки воспроизведения

Кнопки воспроизведения (Play Buttons) позволяют запускать и останавливать игру. Первая кнопка — кнопка воспроизведения:

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

Интерфейс Unity затемнится, чтобы показать, что игра активна.


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

Далее следует кнопка Пауза:

Она позволяет сделать паузу и вносить изменения в игру.

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

Наконец, последняя кнопка Step:

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

Топ 14 лучших онлайн-курсов Unity для начинающих

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

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

Установка ML-Agents

  1. Установите на компьютер Git; он работает из командной строки. Git — это очень популярная система управления исходным кодом, и в Интернете есть множество ресурсов об установке и использовании Git на разных платформах. После установки Git, убедитесь, что она работает, создав клон любого репозитория.
  2. Откройте командную строку или обычную оболочку. Пользователи Windows могут открыть окно Anaconda.
  3. Перейдите в рабочую папку, в которую вы хотите поместить свой новый код, и введите следующую команду (пользователи Windows могут выбрать C:\ML-Agents):
    git clone https://github.com/Unity-Technologies/ml-agents
  4. Так вы клонируете репозиторий ml-agents на свой компьютер и создадите новую папку с тем же именем. Можно также добавить к названию папки номер версии. Unity, как и почти весь мир искусственного интеллекта, постоянно меняется, по крайней мере, сейчас. Это означает, что постоянно появляются новые изменения. На момент написания статьи мы клонируем репозиторий в папку ml-agents.6:
    git clone https://github.com/Unity-Technologies/ml-agents ml-agents.6
  5. Создайте новую виртуальную среду для ml-agents и укажите версию 3.6, вот так:
    #Windows 
    conda create -n ml-agents python=3.6
     
    #Mac
    Use the documentation for your preferred environment
  6. Активируйте среду снова с помощью Anaconda:
    activate ml-agents
  7. Установите TensorFlow. В Anaconda это можно сделать следующей командой:
    pip install tensorflow==1.7.1
  8. Установите пакеты Python. В Anaconda введите следующее:
  9. Так вы установите все необходимые для Agents SDK пакеты; это может занять несколько минут. Не закрывайте окно, скоро оно нам пригодится.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector