×

Від 9 років сапорту до C++ : Як робота над власними проєктами та калібрування амбіцій привели мене в геймдев

Привіт! Мене звати Мар’ян Винар, і після майже дев’яти років в торгівлі та клієнтській підтримці, я перейшов в геймдев та став Trainee Unreal Engine\C++ Developer в N-iX Game & VR Studio. А допомогло мені в цьому переосмислення власних амбіцій та концентрування на професійному розвитку. Може і вам мій досвід буде корисним.

Почалось все з любові до ігор: грав у все до чого дотягувався, а фаворитами на той час були Jedi Academy, Dawn of War, TES, Gothic. Інколи, граючи, помічав елементи геймплею, які я б хотів зробити по іншому, або взагалі побудувати свою історію на базі ігрового сетингу.

Спочатку пробував розробляти в редакторах ігор. Наприклад скриптинг в Dawn of war, хоч він виявився, довгим й трохи складним. Потім перейшов до редактора Warcraft 3. Його функціонал та широкий вибір моделей для імпорту давав хороші можливості створювати тематичні техно-фентезі сценарії, в стилі того ж Вархамеру. З часом і з’явилась мрія професійно створювати власні ігри.

Пізніше я почав навчання у Львівській Політехніці, де трохи ознайомився з Pascal, HTML, C++. Однак в той момент «чисте» програмуванні й написання програм видались мені нуднішими ніж розробка ігор. Процес був більш повільним, ніж я очікував. Хоч певно виною цьому був сухий і монотонний виклад матеріалу і практичні, виконання яких не приносило відчутного емоційного результату. Так я вирішив змінити діяльність й пішов в торгівлю, потім працював оператором служби підтримки, де і провів наступні роки.

Робота над власним Unreal Engine проєктом

Думок про розробку ігор ніколи не покидав, і з появою більш сучасних та зручних рушіїв вирішив у вільний час пробувати створювати щось своє. Серед рушіїв вибирав в першу чергу між Unity та UDK (Unreal Engine 3). Зупинився на Unreal і, чесно сказати, по більшій мірі через візуал і те, що працювати в ньому було приємніше. За витрачених умовно 30 хвилин я отримував кращий результат в Unreal ніж в Unity. Та і він здався мені більш підходящим для типу проєкту, який я тоді хотів створити — а саме гру а-ля Halo/Crysis.

Плани були грандіозні. Це мало бути техно-фентезі, з кінематографічністю, великою варіацією рівнів і способів ці рівні проходити, ігровою логікою і т.д. На реалізацію цієї задумки я дав собі один рік. Тут певно можна і не говорити, що втілити цей план не вдалось. За більше ніж рік часу, в перервах між основною роботою, мені вдалось зробити лише кілька прикладів власної зброї та персонажів і одну локацію, яка швидше могла слугувати візуальним референсом, ніж зразком геймплею. І якість реалізації була не тою, на яку я розраховував.

Згодом вийшов Unreal 4 і я зробив те, що зробила б кожна поважна людина — закинув старий проєкт і почав новий. В процесі навіть зробив промо ролик для нього і найняв концепт художника. Це був вже менш грандіозний проєкт ніж попередній, але все ще нереалістично великий для однієї людини з малим досвідом в розробці.

Калібрування амбіцій та фокус на зміні професії

Так, перебігаючи від одного проєкту до іншого, пройшло близько п’яти років. Я зрозумів що мої амбіції не відповідають реальності та моїм можливостям самотужки з усім впоратись. Я вирішив, що мені треба потрапити в професійний геймдев, не важливо чи продуктовий, чи аутсорс, і набратись досвіду.

Я почав проходити різні курси: С++ на Udemy і GlobalLogic, блупринтовий на Games Academy. Паралельно подавався на співбесіди і швидко їх завалював. Погано те, що вакансій на джуніора було одиниці, і як правило від один і тих самих компаній. Тому рекомендую добряче підтягнути теоретичну базу перед тим, як презентувати свої навички таким компаніям. Особливу увагу можна звернути на:

  1. Менеджмент памяті, розумні вказівники.
  2. Багатонитковість.
  3. Таблиці віртуальних функцій.
  4. Алгоритми знаходження шляху.

Згодом натрапив на курс від N-iX Game & VR Studio, який привернув мою увагу тим, що там викладався С++ саме під Unreal Engine, тоді як більшість навчальних програм по UE акцентує увагу на графічному програмуванні (Blueprints). Звісно і таку програму можна знайти і на інших освітніх платформах, але мені хотілось живого знайомства з ігровою компанією та людьми, які безпосередньо займаються розробкою ігор. Для курсу потрібно було мати базові знання з С++, які в мене вже були.

Курс тривав місяць. Сподобалась чітка подача матеріалу, без води і сухої монотонності, адже не всі хороші спеціалісти, на жаль, вміють зрозуміло і ясно розказувати матеріал. Були QA сесії, на яких можна було ставити питання, що стосуються геймдеву. В мене накопичилось багато таких питань ще відколи робив свій проєкт. І було класно послухати, що запитують інші люди з нашої групи.

Після завершення навчання мене запросили на співбесіду. Було страшно, бо частину математичного матеріалу я призабув. Але в мене було трохи часу на підготовку і встиг закрити проблемні місця, і все ж таки пройшов співбесіду.

Про роботу в професійному колективі

Зараз я працюю в команді яка розробляє ВР тренінг на базі UE4 для працівників різних закордонних компаній, від фаст-фудів (що мене здивувало), до рятувальних служб та енергетичної сфери. Сьогодні, я успішно пройшов свій перший реліз і це було неймовірно! Звичайно були помилки. Неочікувані баги, косяки, мердж-конфлікти. Багато із цього можна було уникнути, якби я менше спішив й більш уважно й спокійно все обдумував. Також певний час потрібно було звикнути до архітектури необхідних плагінів, але із цим теж впорався.

Дуже допомагає присутність старших колег, які можуть швидко підказати ефективне рішення, замість того щоб самотужки переривати пів дня гугл заради простої проблеми. Що також дуже допомагає, так це диверсифікованість спеціалістів. Якщо мені треба допомога, наприклад, з левелдизайном, я можу звернутися до відповідної людини. Самому робити проєкт звісно класно, бо ти сам як ніхто інший розумієш власну ідею і як вона повинна бути реалізована. Але в такому разі приходиться бути Jack of all trades, master of none. Тепер я бачу, що якщо хочеш, щоб все було швидко, ефективно та якісно, потрібно щоб кожен спеціаліст мав свою сферу відповідальності та робив те, що вміє найкраще.

Крім того, в компанії з налагодженими пайплайнами проєктів, краще розумієш як оцінювати обсяг роботи, розділяти час між завданнями, розставляти майлстоуни тощо. Таким чином бачиш весь процес ніби зверху і випрацьовується більш реалістичний та організований підхід до розробки.

Загалом я радий що потрапив сюди, що пройшов цей шлях в геймдев, який зайняв в мене не один рік. Вірю в те що воно було того варте. І хоч досвід роботи над власними проєктами теж допоміг виділитись серед інших кандидатів, думаю цей процес міг бути набагато швидшим, якби я одразу поставив за мету потрапити в компанію.

Зараз планую розвиватись в напрямку UE 4 та UE 5 і пізніше, можливо, повернутись до власних ідей, вже з новим досвідом. Тому бажаю наснаги всім, хто вирішив потрапити в геймдев, а тим, хто хоче зайти з нуля з власним продуктом, дуже рекомендую почати прокачувати навички в професійній команді. Тут це відбувається набагато швидше.

Підписуйтеся на Telegram-канал @gamedev_dou, щоб не пропустити найважливіші статті і новини

👍ПодобаєтьсяСподобалось9
До обраногоВ обраному1
LinkedIn

Схожі статті



Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

воу, дуже крутий досвід. Я сам працюю в айті, але ще зі школи мріяв навчитися створювати ігри, і от нещодавно пройшов курс на udemy теж на unreal engine, аде поки що натхнення на щось своє немає)
Але ваша історія надихає)

Дякую!) Думаю, що головне -це просто почати з чогось, а там вже або натхнення Вас само знайде, або знайдуть натхненні однодумці))

Підписатись на коментарі