Low-poly персонаж — це компроміс, виражений в полігонах. Кожен трикутник має працювати: на силует, на деформацію, на читабельність текстури. Зайвий edge loop у непотрібному місці — це не «запас», це waste, який множиться на кількість одночасних екземплярів у сцені. Ми у своїй практиці стикаємося з цим щодня: один невірний полігон може коштувати FPS.
Конкретний приклад з практики: мобільна RPG з тактичною камерою, 20 юнітів одночасно на екрані. Початковий hero mesh — 8 200 triangles. Після профілювання в Unity Profiler з'ясовується, що одні тільки персонажі дають 164k tris на кадр, і це до оточення. Перегін кожного юніта в 3 500–4 500 tri з переглядом UV layout знизив draw calls і дав стабільні 60fps на mid-range Android. Це не магія — це дисципліна роботи з polycount.
Щоб отримати стабільний FPS та якісний силует, зв'яжіться з нами для передпроектного аналізу.
Де ламається low-poly pipeline
Головна помилка — робити low-poly «з high-poly через ZRemesher». Автоматичні ретопологізатори не розуміють, де потрібен edge loop під деформацію, а де — ні. Результат: додаткові полігони в статичних зонах та нестача геометрії там, де персонаж гнеться. Плечовий суглоб з трьома петлями не деформується — він ламається.
Чому автоматична ретопологія не підходить для анімації?
ZRemesher та аналоги ігнорують анатомію. Edge loops мають йти вздовж м'язових груп, а не впоперек суглобів. На практиці це означає, що після авто-ретопології аніматор отримує mesh з розтягнутими полігонами в ліктях та колінах, що робить скіннінг непередбачуваним. Тільки ручне розставляння петель дає потрібну пружність деформації.
Другий камінь — UV islands та texel density. Якщо UV-розгортка робиться нашвидкуруч, обличчя отримує таку ж texel density, як черевик. На 512×512 текстурі (типово для мобайлу) обличчя персонажа перетворюється на кашу. Різні частини тіла вимагають різного розподілу UV space за пріоритетом візуальної важливості.
Як уникнути головних помилок при low-poly моделюванні?
Третій момент — skinning-friendliness топології. Edge loops мають йти вздовж м'язових груп, а не впоперек суглобів. Програміст-ригер або технічний аніматор бачить модель і одразу розуміє, чи буде скіннінг передбачуваним. Погана топологія = години правок на анімаційній стадії.
Перший крок до успішного low-poly персонажа — manual retopology з урахуванням анімації та UV пріоритетів. Не покладайтеся на автоматику, якщо персонаж буде рухатися.
Як ми будуємо процес low-poly моделювання
Відправна точка — технічні вимоги: цільова платформа, polycount budget, розмір texture atlas, движок. Blender, Maya або 3ds Max — інструмент вибирається під pipeline проекту, не під вподобання художника.
Blockout. Спочатку примітиви — box modeling від крупного до дрібного. Пропорції та силует важливіші за деталі. На цьому етапі polycount вже контролюється: рахуємо triangles, не quads.
Topology pass. Ручне розставляння edge loops під риг. Ключові зони: плечовий суглоб (мінімум 2 петлі), лікоть (2–3 петлі залежно від діапазону руху), коліно, шия, зап'ястя. Обличчя — окрема розмова для hero character, там edge flow під міміку принциповий.
UV unwrap. Робиться в Blender або Rizom UV — залежить від складності моделі. Для mobile персонажа з одним 2048×2048 atlas принципово важливо: обличчя отримує максимум UV space, руки — помірно, ноги та спина — мінімум. Seams ховаються у візуально неприоритетних зонах.
Чому ручна UV-розгортка критична для якості?
Якщо тексельна щільність розподілена нерівномірно, текстура буде розмитою на важливих деталях. Ручний розріз дозволяє виділити пріоритетні області (обличчя, руки) та пожертвувати менш помітними (спина, ступні). На мобільних проектах це може вирішити, чи виглядатиме персонаж презентабельно.
Підготовка під bake. Якщо модель йде в парі з high-poly, налаштовуємо cage, перевіряємо відсутність overlapping UV, експортуємо у FBX з правильними smoothing groups. Запікання робиться в Marmoset Toolbag або через Substance Painter з налаштуванням match by mesh name.
Фінальний формат — FBX або glTF 2.0 залежно від вимог движка. Unity приймає обидва, Unreal Engine краще працює з FBX, web-движки (Three.js, Babylon.js) віддають перевагу glTF.
Що входить у результат
- Low-poly mesh у форматі FBX або glTF 2.0 (polycount в межах узгодженого бюджету)
- UV-розгортка з оптимізованою texel density та прихованими seams
- Коректна топологія, готова під риг (edge loops у зонах деформації)
- Підготовка до запікання: cage, smoothed normals, exploded smoothing groups (якщо потрібен high-poly)
- Технічний паспорт: polycount, кількість UV-островів, texel density на ключових частинах
- Консультація з інтеграції в движок
Орієнтири за термінами
| Складність | Polycount | Терміни |
|---|---|---|
| Простий NPC (стилізація) | до 2 000 tri | 2–4 дні |
| Стандартний ігровий персонаж | 3 000–6 000 tri | 4–8 днів |
| Hero character (full equipment) | 6 000–12 000 tri | 8–16 днів |
| Технічно складний (мех, броня) | 10 000–20 000 tri | 12–20 днів |
Це терміни на геометрію без текстурування. UV unwrap входить у базову вартість. Вартість розраховується індивідуально після аналізу вимог.
Рекомендований polycount за платформами
| Платформа | Рекомендований budget | Приклад проекту |
|---|---|---|
| Mobile (low-end) | 1 500–3 000 tri | Казуальна гра |
| Mobile (mid-range) | 3 000–5 000 tri | RPG з 10+ персонажами |
| PC / Console | 8 000–15 000 tri | AAA-екшн |
| Web (WebGL) | 2 000–5 000 tri | Браузерна гра |
Що перевірити до початку роботи
- Узгоджено polycount budget з урахуванням кількості одночасних екземплярів у сцені
- Є концепт мінімум з двох ракурсів (front + side), краще — з чотирьох
- Визначено розмір texture atlas та кількість матеріальних слотів
- Зазначено, чи буде персонаж анімований та наскільки екстремальні деформації
- Зрозуміло, чи потрібен high-poly джерело для запікання або текстурування буде hand-painted
Ми працюємо з геймдевом понад 5 років і реалізували понад 50 проектів на Unity та Unreal Engine. Оптимізація polycount дозволяє заощадити до 40% витрат на рендеринг. Замовте моделювання персонажа з гарантією оптимізації — ми підготуємо технічне завдання та дамо рекомендації.






