Спрятать панель проектов Показать панель проектов
Пожертвование  •  Дневник  •  Без рекламы  •  О сайте  •  Реклама  •  Поставить баннер  •  Прислать  •  Хроника Гости: 13    Участники: 0  Авторизация   Регистрация 
Метод Научного Тыка
Поиск  
iMag | интернет-журнал
Размещение рекламы
Начало » Разработка ПО » Разработка игр на Unity: с нуля до профессионала

Разработка игр на Unity: с нуля до профессионала

 

Добавлено: Пн 08.02.2021 (Sergeant)
Источник: https://proglib.io/p/razrabotka-igr-na-unity-s-nulya-do-professionala-2020-08-27
Автор: Игорь Карпекин
Просмотров: 61
Комментарии: 0

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

Кто такой разработчик игр Unity/Game Developer

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

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

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

Как стать разработчиком игр: где и чему учиться

Где учиться – на курсах по созданию игр, по книгам или видеоурокам на YouTube – сугубо личный выбор. Мы рекомендуем обучение разработке игр на систематических курсах, которые дают представление о геймдеве в целом и разработке игр на Unity в частности.

Язык программирования C#

В Unity используется производительный язык программирования C#. Благодаря C# и Mono – кроссплатформенной реализации .NET, – Unity-проекты могут собираться и работать одинаково стабильно на разных операционных системах.

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

  • базовые конструкции;
  • объекты, типы и ссылки;
  • перечисления и коллекции;
  • объектно-ориентированное программирование;
  • обработка исключений.

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

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

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

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

Редактор Unity3D

Большую часть времени Unity-разработчики проводят в редакторе, так что его нужно изучить досконально. Кроме того, программные библиотеки Unity требуют дополнительного изучения – Unity-проект существенно отличается от обычного C#-приложения. Чтобы стать профессиональным Unity-разработчиком, нужно изучить следующее:

  • базовые манипуляции со сценой, объектами, assets и prefabs;
  • векторы, проекции и математика для 3D графики;
  • создание пользовательского интерфейса в игре;
  • работа с материалами;
  • модули физики для 2D и 3D;
  • система анимации Mecanim;
  • системы частиц;
  • работа с аудио;
  • свет и постобработка;
  • работа с разными графическими пайплайнами;
  • работа с искусственным интеллектом.

Инструменты командной работы

Игра редко делается в одиночку. Для эффективной работы нужно уметь пользоваться инструментами для командной работы. Прежде всего, это системы контроля версий. Официально поддерживаемые и рекомендуемые для Unity системы – Perforce и Plastic SCM. Можно встретить компании, которые используют более распространенный и бесплатный Git, однако, это требует дополнительных усилий по настройке Unity.

Нужно иметь представление о следующих инструментах:

  • cистемы управления задачами (Asana, Basecamp, JIRA, Redmine);
  • баг-трекеры (JIRA, Redmine, Bontq, YouTrack).

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

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

Без качественного и всестороннего обучения стать востребованным Unity-разработчиком невозможно.

Официальная документация (анг)

Официальный портал по изучению Unity (анг)

Программирование

Книги. Не будем пугать вас списками, у нас уже есть подборка актуальных книг по C#.

Видеокурсы

Unity

Книги

  • Unity в действии. Мультиплатформенная разработка на C#. Хокинг Джозеф.
  • Unity и C#. Геймдев от идеи до реализации. Джереми Гибсон Бонд.
  • Разработка игр на Unity 2018 за 24 часа. Гейг Майк.
  • Геймдизайн. Как создать игру, в которую будут играть все. Шелл Джесси.

Видеокурсы

Обучение разработке игр, погружение в профессию и карьерные перспективы

Чтобы начать карьеру Unity-разработчика, нужно не только освоить язык и систему, но и иметь практические навыки.

Начинайте с несложных 2D-игр вроде тетриса или flappy bird. Простые игры легче реализовать в одиночку, но они дают навыки работы с базовыми функциями: загрузка сцен, создание интерфейса пользователя, работа с ресурсами. Далее можно переходить к 3D-играм. Здесь тоже лучше начинать с простого, постепенно внедряя новые функции и меняя архитектуру игры. Так вы составите портфолио, с которым в дальнейшем пойдете на собеседование.

По квалификации разработчики делятся на три условных уровня: Junior/Middle/Senior.

Junior – начинающий разработчик, работающий в команде под управлением более опытных коллег. Джуниору чаще всего поручают простые, некритичные задачи. На этом уровне работник обычно держится 1-1.5 года, после чего повышается до Middle. Junior Game Developer должен иметь следующие компетенции:

  • иметь хорошее знание C#;
  • иметь опыт разработки в Unity, портфолио не должно быть пустым;
  • базовые знания в линейной алгебре (пример);
  • базовые знания в 3D-моделировании.

Middle – опытный специалист, способный выполнить всю порученную работу. Решает как критически важные, так и рутинные задачи. Имеет достаточную квалификацию, чтобы управлять джуниорами. Все основные инструменты и технологии Unity должны быть известны middle-разработчику. Многие работают на уровне middle годами и десятилетиями. Чтобы стать сеньором, нужны большие и целенаправленные усилия.

Senior – программист с высочайшей квалификацией. Может выполнить любую задачу в рамках своего набора технологий. У сеньоров огромный опыт, широкий кругозор, часто – отличные управленческие навыки. Чтобы вырасти от джуниора до сеньора нужно от 6 до 8 лет.

Team Lead Unity Developer – программист уровня middle, который занимается преимущественно управленческой деятельностью. Именно тимлиды создают условия для продуктивной работы команды. Им платят не за написанный код, а за соблюдение сроков и качество проекта в целом.

Также выделяют Unity VR Developer – специалиста, работающего в сфере виртуальной реальности. Такой программист должен иметь специальные знания, связанные со специфическим оборудованием – очками и шлемом виртуальной реальности. Unity AR Developer – похожая специализация, но связана не с виртуальной, а дополненной реальностью.

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

Unity-разработчик в среднем получает 65 тыс. руб. в месяц. Минимальная зарплата – 40 тыс. руб. в месяц, максимальная – 135 тыс. руб. в месяц.

В мире ситуация следующая: без учета налогов минимальная зарплата – $6 750/мес., средняя – $11 000/мес., максимальная – $22 500/мес.

Где учиться на разработчика игр

Если вы только начинаете изучать разработку игр, мы рекомендуем обратить внимание на курс Факультета Разработки игр онлайн-университета Geekbrains. В этом курсе систематизирована вся основная информация, необходимая для того, чтобы стать профессиональным Unity-разработчиком.

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

Игорь Карпекин

 

Мне нравится 0    Мне не нравится 0


Комментарии



Комментарии: 0
Нет ни одного комментария.
Поделиться ссылкой:
Реклама

Новое
9 лучших дронов с функцией следования 2 дня назад, 09:06
9 лучших дронов с функцией следования
Java 8. Руководство для начинающих. Шестое издание 3 дня назад, 09:07
Java 8. Руководство для начинающих. Шестое издание
Год: 2015
Пн 19.04.2021
Using Entity Framework Core and Dapper in ASP.NET Core – Safe Transactions
Больше колонок хороших и разных: разбираемся во всем многообразии АС Чт 08.04.2021
Больше колонок хороших и разных: разбираемся во всем многообразии АС
Learning JavaScript Design Patterns Чт 08.04.2021
Learning JavaScript Design Patterns
Год: 2012
Ср 07.04.2021
"Симпсоны" в стиле советской мультипликации
Windows PowerShell in Action, 2nd Edition Вт 06.04.2021
Windows PowerShell in Action, 2nd Edition
Год: 2011
Пн 05.04.2021
Замыкания в JavaScript для начинающих
Семь каналов - это норма: бюджетные AV-ресиверы с Dolby Atmos Чт 01.04.2021
Семь каналов - это норма: бюджетные AV-ресиверы с Dolby Atmos
Professional Visual Basic 2012 and .NET 4.5 Programming Чт 01.04.2021
Professional Visual Basic 2012 and .NET 4.5 Programming
Год: 2013
Ср 31.03.2021
Удалённая работа: не рай, а светлое будущее
CLR via C#, 4th Edition Вт 30.03.2021
CLR via C#, 4th Edition
Год: 2012
Пн 29.03.2021
10 things to know about in-memory caching in ASP.NET Core
Чай каркаде: полезные свойства и вред Пт 26.03.2021
Чай каркаде: полезные свойства и вред
Чт 25.03.2021
8 лучших напольных акустических систем

Реклама
Разработано на основе BlackNight CMS
Release v.2021-03-21
© 2000–2021 Blackball
Дизайн & программирование:
Sergeant Центр Связи с Админом Skeleton
О сайтеРеклама
Web-site performed by Sergey Drozdov
BlackballРекламаСтатистика | МузыкаПлейлистыКиноВидеоИгрыАудиоПрограммыСтатьиКартинкиЮморФорумДневник сайтаПрислать контент