10 помилок у портфоліо кандидатів, яких не беруть у розробку ААА ігор

Всі привіт! Мене звуть Олександр Лисенко. Я CEO в L3D Studio, української аутсорс компанії, яка спеціалізується на створенні моделей військової техніки для ААА ігор. Ми є лідерами на ринку постачальників послуг у цій ніші, тому багато хто, як початківці, так і досвідчені моделлери, які люблять військову техніку і хочуть брати участь у розробці провідних проектів у близько військовій тематиці, прагнуть приєднатися до нашої команди. За роки діяльності, я переглянув тисячі портфоліо кандидатів. Найчастіше мені вистачає до 3х секунд для того, щоб зрозуміти, чи варте портфоліо того, щоб звернути на нього увагу. І до 1-2х хвилин для того, щоб оцінити рівень і потенціал кандидата.

Отже, поговоримо про помилки, яких у жодному разі не повинно бути у твоєму портфоліо, якщо ти прагнеш потрапити в розробку 3D моделей для ААА ігор.

Передмова

Ця стаття буде корисною для 3D-моделлерів початківців, які мріють працювати над створенням AAA ігор (тріпл-Ей). Такі проекти розробляються провідними студіями ігрової індустрії. Величезні бюджети дозволяють залучати до розробки найкращих професіоналів у світі. А жорсткі рамки дедлайнів не залишають вибору, окрім як довіряти розробку тільки найдосвідченішим фахівцям.

Чи означає це те, що у новачка без досвіду немає шансів потрапити на такий проект? Ні.

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

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

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

Однак, як поставитися до ситуації, якщо необхідна база знань у моделлера є, але досвіду немає? Рідкісний випадок, але таке буває. І тоді важливість досвіду не така вже й суттєва.

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

Отже, почнемо!

1. Розміщуй портфель на правильних майданчиках

Перша помилка пов’язана з вибором місця публікації портфеля. Якщо твоя мета потрапити в ігрову індустрію, портфоліо варто публікувати на Арт Стейшн.

По-перше, саме цей сайт насамперед прочісують рекрутери в пошуках талановитих 3D Артистів. А по-друге, якщо ти відгукнувся на вакансію на job-сайті й надіслав портфель із посиланням, наприклад, на Behance, то ще не відкривши його, я вже розумію, що ти, найімовірніше, візуалізатор, який нещодавно вирішив змінити сферу. Так зазвичай і є. Візуалізація і геймдев дуже далекі один від одного. Тому презентуй себе на правильних майданчиках.

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

Враховуй, що цінність твого портфеля визначає тільки якість твоїх робіт. Навіть у аутсор студій часто великі компанії-розробники запитують портфоліо саме на Арт Сейшн, хоча всі ці роботи є і на основному сайті, на створення якого витрачено тисячі доларів.

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

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

Тепер ближче до самого портфоліо. Як відобразити в ньому наявність базових знань.

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

Правильна топологія моделі — це найбільш явний індикатор того, наскільки успішно кандидат засвоїв базу. Хоч ігрові моделі сьогодні вже не ті, що були 10 років тому, фундаментальні принципи Low poly моделювання актуальні й донині. Як і раніше оптимальність сітки відіграє важливу роль в оцінці якості ігрової моделі. І хоч ліміти полігонів значно зросли, на багатьох проектах триває боротьба за кожну зайву грань. Тому під час публікації моделі в портфелі важливо показати не тільки фінальний результат, а й сітку. Без неї не можна оцінити якість ігрового асету. І критично важливо, щоб сітка моделі була побудована грамотно. Грамотно — це означає без помилок.

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

2. Уникай не формотворних граней і точок

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

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

Мал.1. Приклад помилки оптимізації сітки

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

Нижче дивись приклади помилок оптимізації з портфоліо кандидатів, які відгукувалися на наші вакансії. Це якраз ті помилки, після яких відмова кандидату надсилається миттєво.

Мал . 2. Приклад брудної сітки. Безліч граней, що не є формотворчими

Мал. 3. Помилки оптимізації сітки

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

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

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

Мал. 4. Зайві точки

3. Не залишай дегенеративні полігони

Виникають ситуації, коли одна з точок провалюється в основний силует полігона. На мал.5. це виділений червоним полігон. Проблема таких полігонів полягає в тому, що під час імпорту моделі є ймовірність, що ігровий движок неправильно з’єднає точки під час тріангуляції. Замість того щоб побудувати edge між точками 2 і 3 (див. мал. 5), він може з’єднати точки 1 і 4. У результаті з’явиться зайва грань і артефакт на моделі. Тому таких проблемних місць ми не допускаємо на рівні моделювання. У цьому випадку потрібно вручну з’єднати точки 2 і 3.

Мал. 5. Імовірність появи зайвої грані під час тріангуляції в ігровому движку

4. Контролюй баланс щільності сітки

Щільність сітки на заокругленнях для всіх деталей моделі має бути приблизно однорідною. При зменшенні розмірів геометрії щільність сітки має бути меншою, а при збільшенні — більшою.

Ось наочний приклад як щільність сітки має змінюватися залежно від діаметра кола:

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

Ось приклад помилки, яку часто можна зустріти в портфоліо:

Мал. 7. Приклад оптимізації отвору з меншим діаметром

До речі, кількість ребер в окружності слід вибирати так, щоб її можна було зменшити вдвічі, щонайменше у 2 рази. Це важливо для зручності подальшого створення ЛОДів моделі. Кожен ЛОД урізає полікаунт на 50%. Тому з 32 ребер ми можемо отримати 16, а потім 8. А з 30 ребер отримуємо 15, а далі виникають складнощі.

Але повернемося до щільності сітки. Ось приклад подібної помилки з портфоліо кандидата:

Мал. 8. Об’єкти 1 і 2 мають практично однаковий діаметр. Водночас щільність сітки об’єкта 2 істотно вища, а також відсутні оптимізація окружності маленького заглиблення всередині

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

Мал. 9. Приклад гарної топології лоу полі моделі

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

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

5. Розшивай точки на плоских кришках циліндрів

Цей пункт я б назвав не грубою помилкою, а радше правилом хорошого тону.

На малюнку нижче представлено кілька варіантів топології плоскої кришки циліндра.

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

2) Автоматична тріангуляція в 3D редакторі, по суті, дасть той самий результат, що й пункт 1. Проблем, найімовірніше, не спричинить, але має некрасивий вигляд.

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

4) Найбільш трудомісткий, але й найправильніший варіант розшивки точок. У цьому разі ми отримуємо красиву топологію, економимо пару трикутників і найголовніше — показуємо свою акуратність. Роботодавець обов’язково зверне на це увагу й оцінить.

Мал.10. Приклади топології кришок циліндрів

6. Дотримуйся рівномірності перерізів

Рівень досвіду моделлера дуже легко перевірити на плавних формах. Розглянемо знову радіостанцію з портфоліо кандидата.

Мал. 11. Приклад поганого Edge Flow

Очевидна відсутність правильного балансу між кількістю перетинів і плавністю форми. Праворуч червоним я виділив перерізи, які можна було б видалити, а синім позначено місця, де перерізів якраз бракує і геометрія має надто рубаний вигляд.

У місцях більш різкої зміни форми сітку варто робити щільнішою, а там, де вигини менш драматичні — більш розрідженою.

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

Ось ще приклад нерівномірної щільності сітки з портфоліо кандидата:

Мал. 12. Червоним обведено ділянки з необґрунтовано різною щільністю сітки

7. Видаляй невидимі полігони

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

Мал. 13. Полігон, який ніхто ніколи не побачить, необхідно видаляти

8. Уникай вузьких і довгих трикутників

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

Мал. 14. Довгих вузьких трикутників слід уникати, навіть ціною додавання зайвих граней

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

Мал. 15. Довгі вузькі трикутники, а також низка інших помилок топології моделі

9. Усувай Z-файтинг

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

Мал. 16. Приклад Z-файтингу

У цьому разі зайвий полігон необхідно видалити і зшити точки в єдиний меш.

10. Виноси дрібну деталізацію в карту нормалей

Усю дрібну деталізацію, яку можна показати картою нормалей, потрібно переносити в карту нормалей. Не варто витрачати на неї ресурси полігонів. До дрібної деталізації належать і фаски на гранях, заклепки, різьблення, щілини тощо. Правило просте. Оптимізуємо всю геометрію, яку в прийнятній якості можна фейково показати нормалом.

Ось приклади такої помилки в портфоліо кандидатів.

Мал. 17. Зазначені деталі легко можна було б запекти в нормал мап. Кінцевий результат мав би такий самий вигляд

Фаски, особливо на дрібних деталях, так само все виносимо в нормал. Приклад помилки з портфоліо кандидата:

Мал. 18. (1) — Фаска у 2 полігони на деталі розміром в 1 см. (2) — Ця деталь ще й врізана в геометрію моделі

1 — Подібні фаски легко запікаються в карту нормалей з хайполі і мають гарний вигляд. До того ж, на більшій частині моделі, в яку вставлена ця деталь, фаску моделер все ж таки запік.

2 — Таку дрібну деталь правильно не врізати, а вставляти. А щілини при цьому запікаються в карту нормалей.

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

Висновок

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

Дивись який вигляд мають моделі з ААА ігор. Їх повно на Артстейшн. Просто забий у пошук назву гри і знайди ассети доступні для перегляду в режимі 3D моделі. Або хоча б скріни сітки цих моделей. Усі ці асети пройшли через QA. Вони мають правильну топологію і є наочним прикладом того, як потрібно робити. Уважно дивись та вчись.

А насамперед, просто зараз, відкрий своє портфоліо, і перевір усі свої моделі на наявність тих базових помилок, які ми проговорили. І виправ їх терміново! Продовжуй вдосконалюватися, і у тебе обов’язково все вийде. Сподіваюся ми скоро попрацюємо разом.

До речі, якщо в тебе є необхідний досвід та бажання приеднатися до нашої команди, то відправляй своє портфоліо на: [email protected]

До зустрічі на тріпл-Ей!

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

👍ПодобаєтьсяСподобалось25
До обраногоВ обраному10
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

Добавлю одно зауваження. Стикався з проектами ААА, де вимагали максимально, навіть у збиток полігоножа, вшивати всі деталі. Можу озвучити і причину. Це в проектах, де кількість тр-ків не таке критичне, як максимальне використання місця на атласі UV. З ростом продуктивності вiдiо плат помiтив тенденцію, коли замовник все частіше і частіше вимагає відробітку фасок геомерiею. Так же стикався, коли «красивий» шейдинг на фасках і прочих переходах витягувався чаклунством з нормалями, без використання карти нормалі і додаткової геометриї. Но це так, до загальної інформації

Дякую за статтю, але місцями виглядає як гугл-транслейт з російської

короче, стисло суть статті в тому що: 1. потрбіно показувати своє портфоліо на артстейшн бо на інших ресурсах hr не хочуть дивитись. 2 показати полігональну сітку. тепер я зрозумів чому я роблю гру для некомерційної компанії з хлопцями з США а в Україні я не дотягую навіть до співбесіди на посаду джуна. Дякую! Було цікаво, взнав для себе новеньке про недопустимість довгих вузьких трикутників.

Помилки — помилками, але без досвіду все рівно нікуди не беруть. А як його наберешся, якщо, знову ж таки, нікуди не беруть?

Так це якраз і є нюанси, які відрізняють досвідченого моделлера від не дуже

Гарний матеріал. Тільки я не дуже зрозумів про закриття циліндрів. Попри викладений вище матеріал — ми маємо, як взірець, циліндр з 18 вершинами (18/9/4,5) що погано ділиться на 2 в подальшому. Що до методу тріангуляції — з власного досвіду , другий варіант мені завжди приводили, як зразковий, бо людина, що робитиме лоди, матиме менше головного болю при зменшенні геометрії та не потребуватиме переробки/корегування uv.

такий циліндр гарно спрощується 18-12-6

так а як же правило 50% і подальші проблеми — за такою логікою 30-15-8?

Але ж тоді при переході 15-8 на одну з вершин припаде три ребра, хіба ні? І це типу у подальшому може викликати проблеми. Так мені здається)

Олексій, дякую, що порахував) Так, для Лодів, в даному випадку краще зробити 16 або 20 граней.

З такою кількістю сегментів швидше всього на другому лоді циліндр удалиться зовсім.

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