Ми стикалися з ситуацією, коли через неоптимізований UV атлас кількість draw calls на мобільній RPG сягала 350 — після атласування та batching вона впала до 120, забезпечивши стабільні 60 FPS. Такі кейси — норма для індустрії: гравець дивиться на оточення 90% часу, і кожна зайва операція відмальовування критична. За 5 років ми пройшли понад 50 проектів, від інді до AAA, і виробили пайплайн, який економить час і ресурси.
Як створюються 3D-моделі оточення та пропсів для ігор?
Процес починається з аналізу вимог: рушій, платформа, роль асета у сцені. Для мобільних ігор критичні polycount (до 500 трикутників для пропсів) та кількість draw calls (не більше 150 на кадр); для ПК і консолей — якість текстур і LOD. Ці параметри закладаються на етапі моделювання.
Технічні складнощі, які не очевидні
Як забезпечити безшовне стикування модульних елементів?
Модульність потребує планування на етапі моделювання. Якщо тайлові секції підлоги не вирівняні по сітці з кроком, кратним розміру текстури (наприклад, 1024 px), при стикуванні з'являться видимі шви. Для UE5 стандарт — сітка 10/100/1000 юнітів; для Unity — залежить від scale проекту. Ми налаштовуємо grid snapping індивідуально під ваш пайплайн.
Чому ручний lightmap UV кращий за автоматичний?
В Unreal Engine кожен статичний меш потребує окремого UV channel для lightmap. Автоматична генерація через Generate Lightmap UVs дає overlapping, нерівномірний розподіл і артефакти при запіканні. Ми розгортаємо lightmap вручну, що гарантує оптимальне використання texel density (наприклад, 20.48 px/m) та відсутність артефактів. При ручному розгортанні щільність texel рівномірна, що критично для запіканого освітлення.
Що таке UV atlas і як він допомагає оптимізувати draw calls?
UV atlas об'єднує кілька мешів в одну текстуру, скорочуючи кількість draw calls. Це особливо корисно для environment kits з повторюваними елементами. Ми створюємо атласи з урахуванням бітності текстур і формату стиснення на цільовій платформі. Наприклад, для набору з 20 пропсів атласування скоротило draw calls з 20 до 2 на сцену. Використання UV atlas і batching дозволяє скоротити їхню кількість у рази.
Крім атласів, ми використовуємо Physically Based Rendering (PBR) текстурування для всіх асетів. Це забезпечує реалістичне відображення матеріалів у будь-якому освітленні. У нашій роботі ми спираємося на стандарти PBR, описані у специфікації, що гарантує сумісність з більшістю рушіїв.
Як ми будуємо роботу над асетом
Все починається з контексту: рушій, платформа, роль асета (hero prop або background filler), статичний чи інтерактивний.
- Concept review. Якщо концепту немає — запитуємо референси. Моделювання без ТЗ — найдорогий спосіб отримати не те, що потрібно.
- Blockout. Швидке блокування форм у 3ds Max або Blender. Узгоджуємо пропорції, модульні стики.
- High-poly або low-poly. Для PBR-пайплайну створюємо high-poly з опрацюванням chamfer і деталей; для стилізованих ігор — одразу low-poly з чіткою геометрією.
- UV + Bake. UV з коректним texel density, окремий lightmap channel, запікання повного PBR набору у Marmoset Toolbag.
- LOD chain. Щонайменше три рівні (0/1/2); ручний LOD для ключових асетів дає якість у 2-3 рази вищу за автоматичний при збереженні силуету. Для hero prop ми вручну опрацьовуємо LOD, контролюючи polycount від 2000 до 150 трикутників.
- Експорт. FBX з потрібними осями, smoothing groups, іменованими material slots. Для наборів асетів використовуємо UV atlas, щоб мінімізувати draw calls.
Для Unreal Engine ми налаштовуємо імпорт з автоматичним створенням колізій та LOD-груп. Для Unity — використовуємо Asset Postprocessor для автоматизації налаштування тайлів та pivot'ів. Це скорочує час інтеграції асетів на 20–30%.
Порівняння автоматичного та ручного LOD
| Параметр |
Автоматичний LOD (Unity LOD Group / Unreal LOD Tool) |
Ручний LOD |
| Якість силуету |
Середня, можливі втрати форми |
Висока, зберігає ключові деталі |
| Контроль polycount |
Приблизний |
Точний, до заданого бюджету |
| Час на асет |
5–10 хвилин |
1–3 години для складних об'єктів |
| Рекомендація |
Для фонових об'єктів |
Для hero props і близьких планів |
Орієнтири за термінами
| Тип асета |
Терміни |
| Простий prop (ящик, бочка) |
1–3 дні |
| Середньоскладний prop (меблі, техніка) |
2–5 днів |
| Hero prop (транспорт, унікальний об'єкт) |
5–14 днів |
| Модульний environment kit (10–20 елементів) |
10–25 днів |
| Повна сцена / локація |
за ТЗ, від 3 тижнів |
Вартість розраховується індивідуально, для наборів — пакетні умови. При замовленні набору асетів ви економите до 30% порівняно з поштучним замовленням.
Що входить у роботу
- Вихідні файли (blend/max, ztl, текстури у високій роздільній здатності)
- Налаштування імпорту під ваш рушій
- Документація з використання асетів (сітка, pivot, LOD-рівні)
- Навчання команди за потреби
Як почати?
Щоб ми оцінили ваш проект, підготуйте ТЗ із зазначенням рушія, платформи, стилю та вимог до LOD. Зв'яжіться з нами — обговоримо деталі та терміни. Замовте консультацію, щоб визначити оптимальний пайплайн для вашої гри.
3D-моделювання для ігор
Уявіть: художник здає персонажа з 120 000 полігонів, мотивуючи це тим, що «так виглядає краще». На мобільному пристрої сцена з десяти таких персонажів впустить FPS до неіграбельних значень. Ми в студії GameArt щодня вирішуємо такі проблеми: наші моделі проходять суворий полігональний контроль та оптимізацію під цільову платформу. Понад 7 років ми випустили понад 50 ігрових проєктів — від мобільних гіперказуалок до PC-екшенів. Гарантуємо, що кожна модель впишеться в технічні вимоги без втрати візуальної якості. Замовте безкоштовний аудит вашого 3D-асета — оцінимо полігонаж і тексельну щільність за одну годину.
3D-моделювання для ігор — це не просто «зробити гарно». Це розстановка пріоритетів в обмеженому бюджеті трикутників і draw calls. Кожен етап пайплайну впливає на продуктивність у рантаймі. Пропуск ретопології або криві UV обертаються переробками на етапі інтеграції — ми це виключаємо на старті.
У цій статті розберемо ключові аспекти: від high-poly скульпту до фінальної збірки в Unity або Unreal Engine, з акцентом на практичні кейси. Ми проєктуємо моделі під конкретну платформу: для мобільних використовуємо низьку тексельну щільність (512 px/м), для PC — до 2048 px/м. Всі рішення приймаються на основі бенчмарків рушія та профілювання на реальному залізі.
Як оптимізувати 3D-моделі для різних платформ?
Цей аспект найчастіше ігнорується на старті проєкту — і саме він потім коштує переробок.
Стандартний пайплайн виглядає так:
- Концепт / референси — перш ніж відкривати ZBrush, потрібно розуміти силует, читаність та цільову платформу.
- High-poly sculpt — детальна скульптурна модель без обмежень по полігонах. Робиться в ZBrush або Blender (Sculpt Mode).
- Low-poly retopology — чиста ігрова сітка поверх high-poly, вручну або напівавтоматично.
- UV-розгортка — підготовка координат для текстур.
- Baking — перенесення деталізації з high-poly на карти (normal map, AO, curvature тощо).
- Передача в рушій — імпорт в Unity або Unreal з налаштуванням LOD-ланцюжка.
Кожен етап впливає на наступний. Погана ретопологія зламає скіннінг. Криво нарізані UV дадуть артефакти при запіканні. Етапи не можна міняти місцями.
Мобільні платформи (iOS / Android)
Мобайл — найжорсткіше середовище. Орієнтири для персонажів:
| Тип персонажа |
Полігони (тріангульовані) |
| Головний герой (великий план) |
3 000 – 8 000 |
| NPC другого плану |
1 000 – 3 000 |
| Масовка, вороги вдалині |
300 – 800 |
Для оточення (один пропс):
| Об'єкт |
Полігони |
| Великий інтерактивний (скриня, двері) |
500 – 1 500 |
| Середній декоративний |
100 – 400 |
| Дрібний (камінь, гілка) |
20 – 80 |
Критичніше самого полігонажу — кількість draw calls і батчинг. Модель на 200 трикутників з окремим матеріалом може бути дорожчою за модель на 2 000 трикутників, яка батчиться з усією сценою. Правильний батчинг (SRP Batcher, GPU instancing) знижує draw calls до 40% — це дає запас для більш деталізованих асетів.
PC / Console
Тут бюджети м'якші, але не безмежні:
- Головний персонаж у шутері від першої особи: 15 000 – 60 000 полігонів (модель противника, яку гравець бачить постійно).
- Персонаж у RPG від третьої особи: 8 000 – 25 000.
- Транспортний засіб у гонці: 30 000 – 80 000 (багато дрібних деталей, LOD обов'язковий).
Ключовий інструмент — LOD (Level of Detail). В Unity це LOD Group, в Unreal — автоматичний HLOD + ручні LOD-рівні в Static Mesh Editor. Правило: LOD0 → LOD1 має втрачати ~50-60% полігонів, LOD1 → LOD2 ще ~50%. Додатково налаштовуємо occlusion culling і кластерний рендеринг, щоб знизити навантаження на GPU.
VR
VR — окрема історія. Рендер іде для двох очей, цільовий фреймрейт 90 fps (Quest) або 120 fps (PSVR2). Будь-який фризен відчувається фізично — у гравця паморочиться голова.
Бюджет персонажа у VR: 4 000 – 12 000 (залежить від кількості NPC у сцені одночасно). Оточення агресивно оптимізується: портальна система, occluder culling, кластерний рендеринг — без цього сцена не потягне потрібний fps. Ми використовуємо Frame Debugger і Render Doc для профілювання на цільовому пристрої на ранніх етапах.
Чому ретопологія — художнє завдання?
Ретопологія — створення чистої полігональної сітки поверх sculpt-моделі. Багато хто сприймає її як нудний технічний етап, який можна прискорити авторетопологією (ZRemesher, Instant Meshes, функція Auto Retopology в Maya). Це помилка. Ручна ретопологія в 3 рази точніша за автоматичну на суглобах та обличчі.
Авторетопологія дає поганий результат у трьох ключових зонах:
- Суглоби — коліна, лікті, зап'ястя. Там потрібні рівні кільця еджлупів, перпендикулярні осі обертання. Авторетопологія ламає їх хаотичними діагоналями, і при анімації суглоб схлопується негарно.
- Обличчя — навколо рота та очей потрібні concentric loops, які слідують м'язовій структурі. Це обов'язкова умова для коректної мімічної анімації через blend shapes / morph targets.
- Силуетні ребра — плечі, груди, великі форми. Тут потрібно свідомо розподілити полігони так, щоб силует читався навіть на LOD2.
Інструментарій для ручної ретопології включає Maya (Quad Draw), Blender (BSurfaces + Shrinkwrap), 3ds Max (Graphite Modeling Tools) і ZBrush (ZRemesher з guide curves). Щільність сітки розподіляється нерівномірно: обличчя та кисті — більше полігонів, спина та низ ніг — менше. Це не свавілля, а наслідок того, де камера проводить більше часу.
Як UV-розгортка впливає на якість текстур?
UV — ще один етап, який часто недооцінюють. Тексельна щільність (texel density) повинна бути однаковою по всьому персонажу. Якщо у чобота щільність вдвічі вища, ніж у обличчя — текстура виглядатиме непослідовно. В Maya для цього є UV Toolkit з нормалізацією, в Blender — аддон TexTools.
UDIM (U-Dimension) — технологія, при якій кілька UV-тайлів об'єднуються в один об'єкт. Це дозволяє використовувати текстури 4K–8K без обмежень одного UV-простору. Застосовується для персонажів з високими вимогами до деталізації — cinematic-ігри, hero assets. В pipeline це означає Substance Painter з UDIM-режимом і окремий експорт кожного тайла.
Запікання (baking) — перенесення деталей високополігональної моделі на карти для low-poly. Інструменти:
- Marmoset Toolbag — галузевий стандарт, cage-based baking з тонким налаштуванням. Зручна візуалізація помилок. Marmoset забезпечує в 2 рази швидше запікання ніж xNormal при однаковій якості.
- xNormal — безкоштовний, перевірений часом. Менш зручний інтерфейс, але стабільний результат і батч-запікання.
- Substance Painter — вбудований baker для швидкого результату всередині текстурування, менш гнучкий, ніж Marmoset.
- Blender — Cycles baker. Повільніший і потребує налаштування, але безкоштовний.
Типовий набір запіканих карт: Normal Map, Ambient Occlusion, Curvature, Thickness, Position, World Space Normal. Curvature і Thickness — генераторні маски в Substance Painter, що автоматично виділяють опуклості та ввігнутості для процедурного текстурування. Згідно з документацією Marmoset Toolbag, batch-baking на кількох об'єктах економить до 30% часу.
Що входить у 3D-моделювання для ігор?
| Етап |
Деталі |
Формат здачі |
| High-poly sculpt |
Створення деталізованої скульптури в ZBrush / Blender |
.zpr / .blend, скріншоти |
| Ручна ретопологія |
Чиста low-poly сітка з правильними еджлупами для анімації |
.fbx / .ma |
| UV-розгортка |
Нормалізована тексельна щільність, опціонально UDIM |
.fbx з UV-set |
| Запікання |
Normal, AO, Curvature, Thickness (Marmoset / xNormal) |
texture set (PNG/TGA) |
| LOD-ланцюжок |
LOD0–LOD3 з порогами по полігонах і відстані |
.fbx для кожного LOD |
| Інтеграція |
Імпорт в Unity / Unreal, перевірка матеріалів і батчингу |
.unitypackage / .uasset |
| Документація |
Іменування асетів, ієрархія, вимоги до трикутників |
PDF / Notion |
Додатково надаємо годинну сесію підтримки після здачі — допомагаємо з налаштуванням LoD Group, колізіями та анімацією. Вихідні файли (.zpr, .blend, .ma, .fbx) передаються в повному обсязі.
Типові помилки при UV-розгортці, які ми запобігаємо:
- Різні тексельні щільності на сусідніх частинах моделі — текстура виглядає неконсистентно.
- Перекривні UV (overlap) — артефакти запікання.
- Недостатній padding між островами — розмиття текстур при міп-маппінгу.
- Відсутність UDIM для складних персонажів — втрата деталізації.
Для отримання комерційної пропозиції зв'яжіться з нами — ми оцінимо строки та підготуємо рішення під ваші вимоги: від мобільних гіперказуалок до PC-екшенів і VR. Отримайте безкоштовний аудит вашого асета просто зараз.