«Движок Unreal Engine используют даже в кино»: история победителя хакатона «Синеус»
Михаил всегда хотел разрабатывать игры. И достиг даже большего: освоив Unreal Engine, он применил полученные знания не только в геймдеве, но и в кино.
Иллюстрация: Игра Knitted And Inflatable / Potato Ded 3 / Annie для Skillbox Media
Михаил Ефремов
Россия, Тула
Пройденные курсы
Достижения
Прошёл обучение всего за семь месяцев. Победил в хакатоне «Синеус» и вложил выигрыш в 700 тысяч рублей в свою игру «Дуэлянт». В сумме реализовал уже около 20 проектов. В том числе — в направлении virtual production.
✅ Помощь
Михаил рассказал:
- кем работал до того, как пришёл в геймдев;
- пробовал ли учиться самостоятельно и что из этого вышло;
- как попал в большое кино, но всё же остался в геймдеве;
- за счёт чего выиграл в хакатоне и что это ему дало;
- в чём секрет успеха в любой профессии.
«Работал по 15 часов в сутки»: о профессиях, освоенных до прихода в геймдев
Когда-то моя деятельность была очень далека от разработки игр. Я был сторожем, сварщиком, копал и заливал фундаменты, торговал косметикой и даже разливным пивом. Но после армии понял, что пора менять жизнь, и начал медленное шествие в IT: работал системным администратором, сервисным инженером, инженером-программистом — все эти профессии осваивал самостоятельно.
Развиваясь в IT, я наконец ощутил, что не упираюсь в карьерный потолок.
На последнем до геймдева месте работы вообще дорос до человека-оркестра (хоть в трудовой и написали просто «инженер-программист»): подбирал, настраивал и прошивал оборудование, обучал сотрудников клиента работе с ним в системах учёта.
Благодаря мне всего за пару дней заказчик получал полностью работающий салон красоты, магазин, аптеку, кафе или ресторан. Однажды я даже цифровизировал пивной завод в Туле — зарегистрировал его в системе ЕГАИС, настроил электронный документооборот, помог в запуске половины брендированных торговых точек.
Иногда приходилось тяжело. Дело в том, что именно в то время в России начали вводить онлайн-кассы и обязательную маркировку для отдельных категорий товаров — бизнесу требовалось срочно подстроиться под новые законы.
В короткие сроки я прошивал и регистрировал кассы (до полусотни в день!), обучал десятки клиентских сотрудников, заносил сотни тысяч кроссовок российского производства в систему маркировки. Мне даже базовый синтаксис Python пришлось освоить буквально за полдня, чтобы автоматизировать процесс запроса кодов для маркировки и создания Data Matrix на их основе.
Да, опыт был непростой, но благодаря ему я прокачал стрессоустойчивость, научился грамотно приоритизировать задачи, брать на себя ответственность и с холодной головой работать по 15 часов в сутки.
«Смотрел стримы и пытался повторять»: о первых шагах в игровой индустрии
В свободное от работы время я всегда увлекался компьютерными играми. Зная, что существует такой движок Unreal Engine, даже как-то скачал его, но к освоению подступался долго. Во-первых, информации в открытом доступе почти не было. Во-вторых, желание просто поиграть зачастую перевешивало.
Так что путь к освоению движка был долгим — в общей сумме он занял около пяти лет.
Первое время я изучал функции Unreal Engine по вечерам, а чаще — по выходным и в отпусках. Просто смотрел разные стримы и пытался повторить. Я понимал, что в моих руках мощнейший инструмент, каждый рычажок которого обязательно нужно «потрогать». Но… прогресс был едва заметен, поскольку я делал большие промежутки в обучении.
К тому же параллельно я разбирался с языком Java. Учил его целый год, потому что где-то вычитал, что через Java легче перейти на С++, и решил пойти этим путём. А то все кругом говорили, что С++ очень сложный, вот и хотел перестраховаться.
Даже однажды проходил собеседование по Java. Там мне как раз пояснили, что я сильно заблуждаюсь и для создания игр лучше сразу изучать именно С++ на Unreal Engine.
«Мы создали дружелюбную игру без насилия»: об учёбе и участии в GameBox
Всё изменилось в ковидный 2020 год. Нагрузка на основной работе снизилась, и нас перевели на удалёнку. Появилось больше свободного времени. Вот я и решил провести его с максимальной пользой и приобрёл курс по разработке игр на Unreal Engine.
Процесс пошёл на удивление легко, хотя на быстрый результат я по-прежнему не рассчитывал. Половину курса я освоил буквально за месяц. Вторая половина заняла уже полгода.
В общей сложности со старта обучения до трудоустройства прошло примерно полтора года.
Благодаря курсу мой прогресс заметно ускорился. Я разобрался в важных мелочах движка, понял, как устроена работа в команде, и познакомился с замечательными людьми. А ещё — научился делать свои игры интереснее.
Один из самых классных проектов, выполненных за время обучения, я реализовал во время практики в студии GameBox. Вместе с командой мы создали дружелюбную игру без насилия Knitted And Inflatable («Вязаные и Надувные»). Это платформер от первого лица про вязаный мир, на который напали злобные надувные пришельцы.
Аудитория довольно тепло приняла игру. Она заняла первое место на питче игровых проектов GameBox Hack, также мы выиграли в номинации «Выбор tinyBuild» на Unreal Engine Dev Contest 2021 и получили свои первые деньги в геймдеве.
Этот успех дал сильный толчок мотивации. Но, к сожалению, проект пришлось заморозить, поскольку к моменту оглашения результатов большая часть участников команды уже нашли работу и не могли уделять игре достаточно времени. Хотя мне бы очень хотелось вернуться к её разработке сейчас, уже имея опыт.
Моей итоговой работой на курсе должна была стать игра Moonshine Mayhem. Я сделал кооперативный шутер от первого лица про реднеков, которые спасают Землю от вторжения инопланетян — похитителей свиней. Получилась классическая юмористическая стрелялка на современных технологиях.
Минимальный объём игры собрал буквально за неделю, сидя за разработкой по вечерам, но… не стал защищать её в таком виде, поскольку хотел ещё докрутить оформление. Пока из-за высокой занятости на проектах не успел завершить задуманное, но обязательно вернусь в шутеру и доведу его до конца.
«Моё имя есть в титрах»: как Unreal Engine привёл Михаила в большое кино
После обучения мне на глаза попалась стажировка в сфере virtual production. Решил пройти отбор и победил. В качестве награды как Unreal Engine Artist оказался на съёмках большого кино — художественного фильма «Воздух» российского режиссёра Алексея Германа — младшего.
Я не только впервые побывал в «Главкино», но и поучаствовал в создании боевых самолётных сцен и даже попал в титры. Готовые бои выводились на огромный экран: на его фоне из кабины самолёта снимали крупные планы главного актёра. Смена на площадке в среднем длилась 12 часов, что для меня было даже легко.
Побывать на съёмочной площадке и увидеть, как творится магия кино, — восхитительный опыт.
После этого я ненадолго вернулся в GameBox, чтобы поучаствовать ещё в одном потоке практикума. Нас вновь разбили на команды, и за месяц мы сделали замечательную игру «Звёздный кочевник». Это экшен с видом сверху. За основу сюжета взяли башкирский эпос «Урал-батыр».
Мой вклад в создание игры «Звёздный кочевник» не остался незамеченным: один из участников дискорд-сообщества GameBox пригласил меня на работу над метавселенной.
Вместе мы разрабатывали игру, которая должна была стать развитием идей их мобильного приложения, в котором игроки зарабатывали монеты за пешие прогулки. По задумке, со временем игра должна была вырасти в большую метавселенную, где все эти монеты можно было бы тратить. Но, к сожалению, проект так и не увидел свет из-за смены приоритетов инвестора.
Я же продолжил работать в сфере virtual production: занимался клипами, концертами и рекламой. Ещё одним значимым для меня проектом в этом направлении стал «Выпускной ВКонтакте 2022» — в его рамках я помогал разрабатывать сцены для фона концерта.
Возможности движка Unreal Engine не ограничиваются только геймдевом. Не все об этом знают.
Вообще, Unreal Engine используется десятком профессий: программистами, дизайнерами, художниками, аниматорами и даже музыкантами. Тем, кто только подступается к освоению движка, важно уже на старте понимать, в каком именно направлении они хотят себя реализовать. Кстати, я в итоге всё же выбрал геймдев.
«Рабочая смена продлилась 23 часа»: о сложном кейсе
Моя суперсила — работать в режиме нон-стоп. Расскажу показательный случай: однажды я готовил фоны для концерта, в котором участвовали несколько музыкальных коллективов. Все тайминги выступлений были уже согласованы, а вот мы с командой не успевали доделать все сцены и рисковали получить крупные проблемы.
Чтобы решить ситуацию, удалённо связались с продюсером, и я в реальном времени программировал ему необходимые инструменты для работы со сценой, а в промежутках помогал 3D-художникам обуздать Unreal Engine.
В итоге работу мы сдали чётко в срок, а наша смена продлилась 23 часа, с десяти утра одного дня до девяти утра следующего. Я тогда установил личный рекорд по кранчу. В выдержке мне очень помог опыт участия в хакатонах. Горжусь этим жёстким кейсом.
«Игра про дуэли не может обойтись без ковбоев»: о победе в хакатоне и исполнении мечты
В сентябре 2023 года я стал победителем хакатона «Синеус» от Skillaz, который ежегодно проходит в Вологде при поддержке студии GameBox. Всем участникам нужно было всего за два дня создать игру, находясь на офлайн-локации. Про опыт участия я подробно рассказал в своей статье на DTF.
Ранее в хакатонах я участвовал неоднократно, но не побеждал, потому что брал слишком масштабные идеи и просто не успевал довести их до ума. В этот раз мне хотелось получить законченный и понятный проект. Жанр шутера как раз отлично подходил для этой цели, так как он допускает отсутствие глубоких сюжетов и сложных механик.
Идею «Дуэлянта» я тоже придумал прямо во время хакатона. Заранее знал лишь, что игра должна быть максимально простой как визуально, так и технически.
Игровой сеттинг — киберпанк-будущее с участием ковбоев и пиратов. Выбор героев прост: на мой взгляд, игра про дуэли ну никак не может обойтись без ковбоев, а пиратский пистоль с металлическим шариком вместо пули нагляднее всего передаёт всю суть рикошета. Киберпанк же служит этакой склейкой-нарративом, переводя действие игры в виртуальный мир.
На хакатоне я победил с демоверсией игры и получил 700 тысяч рублей. Решил, что потрачу эти деньги на дальнейшую разработку «Дуэлянта», чем сейчас и занимаюсь: доделываю полную версию, где реализую все-все оставшиеся задумки.
Я всегда мечтал создавать игры в комфортном темпе и в собственной студии. И вот мечта сбылась: по сути, я стал основным инвестором игры и теперь работаю над собственным проектом за зарплату, которую я плачу себе сам 🙂
Изначально предполагал, что это произойдёт только лет через пять лет, но победа в хакатоне дала мне возможность получить такой опыт уже сейчас. Думаю, «Дуэлянт» станет отличным стартом для запуска молодой студии разработки игр.
Кроме победы в хакатоне у меня была ещё одна давняя мечта — побывать на живой игровой выставке-конференции «Игропром» на ВДНХ. И эту мечту я тоже осуществил!
А недавно ещё и сам поучаствовал в выставке, только уже в её онлайн-версии. Там я представлял демоверсию своего «Дуэлянта». К сожалению, взять призовое место не удалось, зато игра очень понравилась стримерам и во всех рейтингах заняла крепкую «серединку». А ещё на выставке я познакомился с интересными проектами других российских разработчиков, послушал лидеров индустрии.
«В разработке игр можно развиваться бесконечно»: о процессе создания игр
Я много играю и на любые свои проекты смотрю в первую очередь с точки зрения игрока. Играть должно быть весело. Также дополнительно читаю различные книги по геймдизайну, хотя эта область пока остаётся для меня лишь увлечением.
Мне кажется, управляться с разработкой на С++ у меня выходит лучше, чем работать с дизайном игр. Всё-таки в коде есть понятные критерии оценки, а у геймдизайнера они скорее расплывчатые.
А ещё навыки программирования позволяют мне творить. Проведу простую аналогию: можно сколько угодно придумывать картины, но, если вы не умеете пользоваться кистью, картину за вас нарисует кто-то другой. Так и тут.
Unreal Engine — это моя кисть, а игры — мои картины.
Самый интересный этап создания игры для меня — это прототипирование. На этой стадии идея постоянно видоизменяется и мутирует — из одной может родиться ещё несколько интересных, которые можно использовать в будущих проектах.
А самый сложный этап, как по мне, — это полишинг. Тут мне всегда трудно остановиться: хочется сделать ещё и ещё лучше, починить какой-нибудь маленький баг. При этом сама работа довольно скучная, поскольку изо дня в день ты делаешь одно и то же, особо не меняя саму игру.
Вообще, в разработке игр можно развиваться бесконечно — это меня особенно подкупает. Здесь я могу до самой старости изучать что-то новое и сохранять мозг в тонусе. Делать как можно больше классных игр, с выпуском каждой всё жирнее вписывая своё имя в историю геймдева.
«Дисциплина очень важна»: о навыках, необходимых программисту, и подходе к обучению
Любая игра — это большой и комплексный продукт. Иногда, чтобы найти какую-то ошибку, требуется очень глубоко погрузиться. Поэтому от разработчиков, помимо хард-скиллов, и требуется множество других, мягких навыков — высокий уровень усидчивости, умение добираться до сути.
А ещё игры невозможно создавать без умения слушать и слышать — свою команду, игроков. Да в целом без способности общаться с другими людьми и грамотно выстраивать коммуникацию, ясно аргументируя своё видение.
К слову об усидчивости — она во время учёбы меня очень выручала. Иногда я мог заниматься по восемь часов в день, но, честно, никому бы такого не советовал — уж слишком велика опасность быстро выгореть и из-за этого надолго забросить учёбу.
Что точно могу рекомендовать, так это выстроить чёткий и сбалансированный график обучения и следовать ему.
Очень важно учиться регулярно: не перегружать себя, но и не делать больших перерывов. Чем длиннее пауза, ты выше вероятность уже не вернуться. Даже полтора-два часа учёбы день через день при совмещении с работой очень скоро дадут вам ощутимый результат.
Также, помимо дисциплины, важно не забывать и о вдохновении. Для меня примерами крутой подачи в играх стал Хидео Кодзима, а также братья Хаузеры — нравится, как они прорабатывают детали в своих играх серий GTA и Red Dead Redemption. А ещё меня восхищает путь Гейба Ньюэлла, создателя студии Valve.
«Железо может подвести в самый неподходящий момент»: о базовых правилах работы и отношении к своей профессии
Иногда я неожиданно нахожу для себя простые решения сложных задач или знакомлюсь с полезными людьми, которые спустя годы приглашают меня на интересные проекты. Такие моменты считаю своей профессиональной удачей.
Но случаются и провалы. Помню случай, когда я неделю настраивал поведение оружия в игре и получалось прямо красиво: с анимацией, прицелами, эффектами. Я был доволен как слон. Но, когда перекидывал часть логики из другого проекта, случайно испортил всю работу.
Вышло вот как: я использовал систему контроля версий, но откладывал сохранение проекта в репозиторий на сервере до завершения всей работы над оружием. А потом, когда повторно настраивал систему, всё перенеслось не совсем так, как я хотел, и, на мой взгляд, получилось хуже.
Так что теперь я советую всем разработчикам использовать системы контроля версий и максимально часто сохранять промежуточные этапы проектов. Стоит помнить, что и железо может подвести в самый неподходящий момент, поэтому лучше дробить задачи на более мелкие и оформлять коммиты чаще.
«Любите то, что делаете»: как достичь успеха в деле
Если честно, профессия разработчика игр не кажется мне какой-то «необычной», как я часто слышу. На мой взгляд, IT-специальности вообще сильно переоценены сегодня: многие рвутся в эту сферу только ради денег. Мне кажется, умелый повар или даже массажист при должном подходе может зарабатывать не меньше.
Если вам нравится ваша профессия, вы легко вырастете в ней и добьётесь успехов. И неважно, что именно это за дело.
Нужно понимать, что геймдев — он не про лёгкие деньги, а в первую очередь про усердный труд, эксперименты и постоянное самообразование. Дорогу осилит идущий 🙂