Сообщение администратору
Имя:
Почта:
Сообщение:
Вход на сайт
Логин:
Пароль:

Поддержка  •  Дневник  •  О сайте  •  Реклама  •  Поставить баннер  •  Прислать  •  Хроника  •  Translate  •  Рекомендованное  •  Написать администратору Гости: 32    Участники: 1 Авторизация Авторизация   Регистрация 
Метод Научного Тыка
RULVEN
Поиск  
Blackball iMag | интернет-журнал
RSS-лента
Поделиться ссылкой:
Каталог


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

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


Добавлено: Пн 08.02.2021 • Sergeant
Автор: Игорь Карпекин
Источник: источник
Просмотров: 467
Комментарии: 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



Комментарии

Чтобы добавить видео с YouTube, нужно написать [@youtube=xxxxx] , где xxxxx – ID видео.


Комментарии: 0
Нет ни одного комментария.

Новое
Зал короля Артура оказался неолитическим загоном для скота 3 дня назад, 09:05
Зал короля Артура оказался неолитическим загоном для скота
15 действительно вкусных салатов с крабовыми палочками Сб 16.11.2024
15 действительно вкусных салатов с крабовыми палочками
Почему W-образные моторы уходят в прошлое, если они были лучше V-образных Ср 13.11.2024
Почему W-образные моторы уходят в прошлое, если они были лучше V-образных
Когда устал от алгоритмов: Ревью кода на собеседовании Вт 12.11.2024
Когда устал от алгоритмов: Ревью кода на собеседовании
Вирусы на Android: подробное руководство по обеспечению безопасности Пн 11.11.2024
Вирусы на Android: подробное руководство по обеспечению безопасности
Пн 11.11.2024
10 не самых очевидных причин, чтобы уволиться
Искусственный мозг против квантового компьютера: кто возьмет верх? Вс 10.11.2024
Искусственный мозг против квантового компьютера: кто возьмет верх?
10 лучших салатов с кукурузой Сб 09.11.2024
10 лучших салатов с кукурузой
10 вкусных салатов с фасолью, которые хочется готовить снова и снова Сб 02.11.2024
10 вкусных салатов с фасолью, которые хочется готовить снова и снова
Пишем одностраничное приложение с помощью htmx Вт 29.10.2024
Пишем одностраничное приложение с помощью htmx
Книги
Blazor in Action Вт 04.06.2024
Blazor in Action
Год: 2022
Security for Containers and Kubernetes Вт 28.05.2024
Security for Containers and Kubernetes
Год: 2023
Designing Data-Intensive Applications Вт 14.05.2024
Designing Data-Intensive Applications
Год: 2017
Fundamentals of Software Architecture Вт 07.05.2024
Fundamentals of Software Architecture
Год: 2020
Разработано на основе BlackNight CMS
Release v.2024-11-16
© 2000–2024 Blackball
Дизайн & программирование:
О сайтеРеклама
Visitors
Web-site performed by Sergey Drozdov
BlackballРекламаСтатистикаПоддержка
МузыкаПлейлистыКиноВидеоИгрыАудиоПрограммыСтатьиКартинкиЮморФорумДневник сайтаПрислать контентРекомендованное