Какие технологии стоит изучить unity
Перейти к содержимому

Какие технологии стоит изучить unity

  • автор:

Как изучать Unity?

Какие материалы по изучению Юнити посоветуете? Смотреть видеоуроки на Ютубе- не вариант. От ITDVN смотрел все видеоуроки по Юнити, но этого очень мало.

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

На каких ресурсах изучать С# для создания игр на движке Unity?
Всем привет. Слышал, что в игровом движке unity С# не совсем чистый, поэтому возник вопрос, на.

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

Какой язык изучать или что изучать?
Здравствуйте форумчане. какой язык программирования изучать чтоб работать дома через интернет.

Где можно почитать основы разработки в Unity/Unity 3D
До этого был небольшой опыт работы с Windows.Forms и WFP с C#. Где можно разобраться и научится.

109 / 81 / 37
Регистрация: 13.01.2016
Сообщений: 406
С изучения языка и документации
Регистрация: 10.08.2016
Сообщений: 154

Лучший ответ

Сообщение было отмечено wacs как решение

Решение

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

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

136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553

хорошая книга «Unity в действии. Мультиплатформенная разработка на C#» Джозеф Хокинг.
все доступно и понятно

но самой Юнити мало. нужно еще и язык:
Шилдт и Троэлсон.

ЦитатаСообщение от wacs Посмотреть сообщение

Необходимые навыки и технологии в разработке игр на Unity

Необходимые навыки и технологии в разработке игр на Unity

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

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

Unity Game Developer – кто это?

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

Технологии и навыки

Кроме умения взаимодействовать с самой платформой Unity, специалисту необходимы следующие технологии:

№1. Язык программирования

Для работы с Unity требуется знать язык программирования С#. С помощью него и Mono фреймворка .NET можно реализовывать масштабные проекты, которые будут оптимизированы для работы с разными операционными системами.

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

№2. Редактор Unity3D

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

Также нужно разобраться с программными библиотеками Unity.

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

Большинство игр создаются целой командой профессионалов. Чем объемнее игра, тем больше Unity специалистов вовлекается в работу. Для эффективной командной работы нужны знания систем контроля версий. Лучше всего узнать все о тех, которые поддерживаются системой Unity – Plastic SCM и Perforce. Но также будет полезно изучить Git. Хотя для работы с последней нужно произвести настройку Unity, она более удобна и проста в работе, ну и абсолютно бесплатна.

И напоследок…

Специалисту Unity необходимо не только уметь работать самостоятельно, но и взаимодействовать с коллегами. Опытные разработчики могут руководить целым отделом своих же коллег. Но стоит понимать, что в процессе работы по разработке крупного проекта, у каждого узкопрофильного специалиста будет свой объем задач. Здесь Unity-разработчику понадобится уметь правильно распределять задачи и следить за их выполнением. Чем крупнее проект, тем сложнее. То есть для прорисовки персонажа нужно привлечь одного 3D-художника, для текстурирования другого 3D-шника, а для анимации – отдельного анимационного дизайнера.

Больше интересных новостей

Массовое увольнение в IT компаниях: почему это происходит?

Массовое увольнение в IT компаниях: почему это происходит?

Who is who в data science: разбираемся в тонкостях профессии

Who is who в data science: разбираемся в тонкостях профессии

Каким будет 2020 год для программирования?

Каким будет 2020 год для программирования?

Как монетизировать web-проект: 6 рабочих моделей

Как монетизировать web-проект: 6 рабочих моделей

Чем занимается программист игр на Unity и C#?

Чем занимается программист игр на Unity и C#?

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

Василий Горелкин Образование : СПбПУ Профессия : программист игр В SkillFactory : преподает Unity и C# Стек технологий : Unity, C#

Чем я занимаюсь

Моя профессия — программист игр. В основном я занимаюсь преподаванием: учу детей и студентов SkillFactory игровому движку Unity и языку программирования С#. Я веду вебинары и создаю материалы и практические задания для учебных модулей. Когда у меня есть время, я разрабатываю собственные игры, например QUBE. Программист игр работает в движке и среде разработки. Есть разные движки, я работаю в одном из самых популярных — Unity со средой Visual Studio: в ней я пишу код на языке C#.

Освойте профессию «Разработчик игр на Unity»
Разработчик игр на Unity

Все главные навыки разработчика игр на одном курсе. Вы освоите все этапы геймдизайна, научитесь программировать на С# и создадите 7 игр во время курса.

картинка (95)

Профессия / 18 месяцев
Разработчик игр на Unity
Создавайте виртуальные миры
5 890 ₽/мес 9 817 ₽/мес

Group 1321314346 (3)

Движок — это программа, в которой за программиста написаны все инструменты, нужные в игре. Например, есть 3D-модель: по сути, это набор точек в трехмерном пространстве. Движок способен построить эту модель по точкам, и программисту не нужно делать это самому с нуля. Или звук: чтобы в игре были звуковые эффекты и музыка, код должен обращаться к операционной системе, звуковой карте и драйверам. Движок делает это все сам, программисту нужно написать лишь несколько строчек кода. В компаниях разработчики выполняют узкие задачи, программируя разные элементы игры. Но если программист создает свою игру полностью, понадобятся другие инструменты. Это редакторы графики (Photoshop, 3D Max), звуковые редакторы, конвертеры аудио и видео. В таком случае нужно уметь больше: режиссировать игру и выполнять функции всех остальных специальностей.

Как я работал курьером, преподавал и писал игру

Я закончил Колледж информационных технологий при Политехе, а затем и учился в самом институте. Мое высшее образование напрямую не связано с IT: специальность «бизнес-информатика» больше относится к экономике. В колледже и институте мы изучали основы программирования, но нужным в работе языкам и самому гейм-девелопменту я полностью учился сам. Параллельно с самообразованием первое время после института я работал курьером. Когда я понял, что моих навыков достаточно для старта в профессии, я начал преподавать детям программирование и Unity и делал игры для себя. Мне всегда нравилось учить других.

Разработчик игр на Unity – одна
из самых творческих профессий в IT. Создайте виртуальные миры уже через полгода обучения

Параллельно с преподаванием я искал работу в геймдев-компаниях и делал игру для своего портфолио — QUBE. Это головоломка с 60 уровнями, в которой нужно передвигать кубы к конечным целям. Я сразу прикинул, что такой проект можно потянуть в одиночку и научиться разным аспектам гейм-девелопмента от написания кода и дизайна до дистрибуции. Я занимался игрой целый год. Большинство задач было на мне, но помогали ученик-программист и мой друг саунд-дизайнер. В QUBE было вложено много труда, хотя внешне игра выглядит довольно простой. Несмотря на нехитрый дизайн, в ней много сложных игровых механик, и она затягивает так, что хочется пройти все 60 уровней. Писать код — простая задача. Больше всего времени уходит на придумывание уровней и рисование графики. Я создал прототип QUBE за три дня, но до релиза его нужно было доделывать еще год. Если нет возможности нанять специалистов или делать проект в команде, приходится учиться новым вещам. Хотя в детстве я неплохо рисовал, мне пришлось обучиться дизайну: композиции, подбору цветов, теням.

Чем занимаются разработчики игр в компаниях

В геймдев-компаниях я работал всего полтора месяца. Я занимался не техническими вещами, а именно логикой игры. Например, писал код для отображения действий игрока на 3D-моделях: что происходит, когда игрок двигает мышкой или нажимает клавишу. В этой компании был собственный движок и язык программирования для него. В крупных бизнесах такое бывает часто: им проще создать свой движок, в котором будет удобнее разрабатывать конкретные проекты. Со знанием C# и Unity обучиться таким движкам не трудно — нужно разобраться в архитектуре кода. Часто в компаниях новичкам дают задачи по исправлению багов: это не самая приятная работа, но она помогает быстро понять, как и что устроено. Я тоже начинал с багов как стажер, а затем уже работал с интерфейсами. Обычно стажируются до трех месяцев: за это время можно понять, как все устроено, и выбрать себе специализацию. На джуниор-позиции обычно продолжают работать над багами и начинают помогать старшим специалистам. Мидл-разработчики занимаются простыми замкнутыми системами внутри игры — например, движениями персонажей или интерфейсами. Синьоры связывают эти системы в целую функционирующую игру и разбираются в бизнес-логике: как успешно вывести продукт на рынок. Часто программисты отвечают за один участок проекта: графику, звуки или движок игры. То, чем будет заниматься новичок после стажировки, решает тимлид — менеджер проектов. Обычно он подбирает то, что интересно самому сотруднику: так процесс будет эффективнее. Я сразу сказал, что хочу заниматься интерфейсами, и мне подобрали соответствующие задачи. Бывает, что выбирать не приходится: если бы в UI было достаточно людей, мне бы пришлось заняться другой специализацией. Задачи для меня были несложными, но мне не нравился стиль работы в компаниях. Ты выполняешь узкие задачи в течение рабочего дня, но всем проектом целиком вдохновиться трудно. Мне больше нравится инди-сегмент — независимая разработка игр. А вот преподавание я не считаю работой — мне искренне нравится учить других. После релиза QUBE мне предложили преподавать Unity и C# для студентов SkillFactory. Игры — это сложный IT-продукт, в котором много специализаций. Но мне кажется, есть две основные: гейм-дизайнеры и программисты. Гейм-дизайнера можно назвать режиссером: он видит, как должна выглядеть игра, знает все механики и понимает, как должны быть сделаны отдельные элементы. Созданием этих элементов занимаются программисты: они пишут код, который оживляет игровой мир и персонажей. Все остальные специалисты помогают гейм-дизайнерам и программистам: пишут звуки, создают дизайн уровней игры, 3D-модели и анимации. И мобильные, и десктопные игры создают с помощью одних движков и инструментов. В мобильных играх больше занимаются оптимизацией, а в десктопных много времени уделяют проработке всех элементов. Вообще, у мобильных игр обычно меньший объем работы и над ними трудятся команды с меньшим количеством специалистов.

Какое нужно портфолио

В гейм-индустрии все занимаются своими проектами. Первые игры начинают делать во время обучения, а затем продолжают делать проекты для себя в течение всей карьеры. Даже в компании, в которой я работал, почти у каждого были свои игры: ими занимаются в свободное время и тратят на это много сил. Без своего портфолио трудно найти работу даже стажером и джуниором: их смотрят на собеседованиях. Однажды я устраивался на работу в небольшую команду и показывал на собеседовании QUBE. Общие вопросы о моих навыках практически не задавали. Работодателю легче узнать о твоей квалификации именно на готовых проектах, чем спрашивать о скучной технической теории или смотреть на дипломы. В идеале игры из портфолио должны быть опубликованы в одном из магазинов приложений: Steam, Play Market или App Store. Когда работодатель видит опубликованную игру, он понимает, что ты прошел весь цикл ее создания до конца. И действительно, доводя игру до релиза, ты приобретаешь все нужные в индустрии навыки. На таких проектах можно даже зарабатывать, но маркетинг в инди-сегменте — это отдельная боль индустрии. Нужно вкладывать много денег в рекламу и конкурировать с огромным количеством игр других разработчиков и студий. Я не ставил себе цели заработать, но знаю тех, кто получает по $100 в месяц со своих игр.

Советы новичкам

Главный совет: открывайте Unity и делайте игры для своего портфолио. У Unity есть большая библиотека учебных материалов, проектов и ресурсов. Информации невероятно много и это сильно помогает на старте. Но создание игр — сложная индустрия с большим количеством нюансов и специализаций. Чтобы освоить все тонкости, нужно учиться последовательно и системно. К тому же гейм-девелопмент — это творчество. Изучить C# не сложно, он отлично подходит для новичков. Я учу своих студентов начинать с С и С++: они немного сложнее, но помогают сразу научиться мыслить как программист. Раньше я скептично относился к онлайн-курсам, но после того как стал преподавать, я понял их ценность. Если бы у меня была возможность вернуться на пять лет назад, я бы начинал именно с них. После их прохождения у студента есть неплохое понимание того, как устроена индустрия, он умеет работать с Unity и программировать. С таким набором навыков, знаний и портфолио учебных проектов уже могут взять на работу.

Кто такой Unity Developer: основные задачи, обязанности и зона отвественности. Обзор профессии от Team Lead Unity в Pingle Game Studio

Продолжаем цикл материалов об IT-специальностях. Каждую описывает «типичный представитель» — опытный специалист и просто авторитетный коллега, тот же человек, который знает все тайные уголки своей профессии. Мы надеемся, эти материалы помогут школьникам, студентам, переквалификантам и всем, кто заинтересован в выборе IT-специальности. Цикл не только поможет оценить перспективы, но и позволит лучше понять индустрию и особенности профессии изнутри. Обсуждайте и дополняйте материал в комментариях, чтобы сделать его полезнее.

О профессии Unity Developer рассказывает Владимир Мельничук, Team Lead Unity в Pingle Game Studio.

Кто такой Unity Developer: основные задачи, обязанности и зона отвественности. Обзор профессии от Team Lead Unity в Pingle Game Studio

Но так можно сказать, наверное, о большинстве программистов. Игровых программистов отличает то, что они работают в таких игровых движках, как Unity, Unreal и т. д. Не буду вдаваться в детали, что это такое, ведь все люди, которые сталкивались каким-то образом с играми, имеют представление об их работе и для чего они нужны. Я лучше опишу особенности работы с ними, а более конкретно с Unity.

Есть такое понятие, которое называется игровой сценарий, или проще, — скрипт. Я бы его описал как единицу игровой логики. Скрипт может отвечать за что угодно: движение персонажа, воспроизведение звука, полосу HP на экране и т. д. В Unity такие скрипты именуются компонентами (component). Набором таких компонент называется сущность или игровой объект (game object). Набором сущностей называется сцена (scene) или игровой мир.

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

Какие навыки нужны для того, чтобы стать Unity Developer?

Прежде всего, нужно знать или активно заниматься изучением английского языка. Без этого вам просто нечего делать в разработке. Почти все ресурсы для обучения, форумы, документация, сообщество — все на английском. Если вас интересует карьера в игровой индустрии, то язык знать обязательно. Возможно, это звучит как «гейткипинг», но это моя устойчивая позиция.

Для Unity необходимо знать язык программирования C# для написания скриптов. Часто Unity разработчики пренебрегают изучением C# и знают его лишь на поверхностном уровне, что затем приводит к проблемам с памятью в игре, плохой оптимизации, багам и т. д. Поэтому советую серьезно отнестись к этому. Можно обойтись исключительно C#, но я бы рекомендовал освоить хотя бы на базовом уровне C++, поскольку это основной язык геймдева, и он даст более глубокое понимание «низкого уровня».

Может пригодиться знания Java и Objective-C, если целевая платформа игры будет Android и iOS соответственно. Я бы не сказал, что это нужно, но станет очень большим плюсом на собеседовании, если вы писали нативные плагины под эти платформы.

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

Стоит на самом деле здесь поговорить об «elephant in the room». А именно об обучении в университете. Смотрите, достаточно ли будет окончить университет, чтобы с полученными знаниями стать Unity разработчиком? Абсолютно нет. Необходимо ли заканчивать университет, чтобы получить работу Unity разработчика? Нет. Знаю много людей, которые построили успешную геймдевую карьеру и ни разу не ходили на пары. Считаю ли я, что следует поступить в университет? Я считаю, что да. Университет даст вам научную базу, которую вам трудно будет получить в других местах, а социальный аспект его прокачает ваши софт скилы, и подготовит вас к командной работе на рабочих проектах.

Как выглядит типичный день Unity Developer

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

Для разработчиков на проекте регулярно проходят митинги. В Pingle Game Studio они могут проходить как ежедневно, так и пару раз в неделю. Обычно на них присутствует вся команда: тестировщики, разработчики, геймдизайнеры и все остальные люди, вовлеченные в проект. На этих митингах каждый по очереди рассказывает, над чем он в данный момент работает, с какими проблемами сталкивается и т. д.

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

Каким может быть карьерный рост?

Что касается вертикального роста, то здесь все просто — джуниор, мидл, сеньор. Дальше можно по желанию стать тимлидом или техлидом.

На счет того, чем отличается tech lead от team lead, написана не одна статья, и, на самом деле, это отличается от компании к компании, но в общем так:

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

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

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

После прохождения той или иной игры я обычно сразу иду на YouTube искать видео по типу «History of …», чтобы узнавать интересующую разработку игры, которую только что прошел. А также иду на GDC, нет ли там какой-нибудь лекции от разработчика этой игры. Когда получаешь эмоциональную привязку к игре, такие лекции придают дополнительную мотивацию и вдохновение, чем когда смотришь лекцию о чем-то отвлеченном.

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

Добавить комментарий

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