UV-розгортка твердотільних об'єктів (Hard-surface) для ігор
Hard-surface UV — це задача з чіткими правилами і передбачуваними складностями. Куб — простіше органіки, ствол автомата — вже цікавіше, космічний корабель з внутрішніми деталями — це кілька робочих днів тільки на розгортку. Принципіальне відділення від органіки: у hard-surface є природні seam-и по ребрам конструктивних елементів, і це одночасно перевага й ловушка.
Ловушка в тому, що «очевидні» seam-и по всім гранях дають сотні дрібних islands, які погано упаковуються й дають низький texel density. Хороший hard-surface unwrap — це баланс між кількістю islands, texel density, hiding seams і технічною коректністю для bake.
Технічні складності hard-surface розгортки
Cylindrical surfaces. Труби, стволи, рукоятки — циліндр розворачується через один seam по найменш видимій образуючій. Звучить просто, поки не з'являється рукоятка пістолета з накладками, декоративними пазами і отворами. Кожне отвір вимагає окремого handling: або окремий island для торців, або seam по краях отвору. Ні одне автоматичне рішення не приймає це рішення коректно — тільки ручний аналіз.
Planar faces з нестандартним кутом. Панелі, наклонні грані, діагональні площини — якщо застосовувати Project From View без вирівнювання, отримуємо трапециєдальні islands замість прямокутних. При запіканні і створенні trim sheet текстур це критично: прямокутний island упаковується ефективно, трапециєдальний — ні.
Overlapping geometry (болти, заклепки, деталі крепежу). Для дрібних деталей, які повторюються багатократно, overlap UV умисне використовується для економії UV space. Але це працює тільки при строгих умовах: деталі ідентичні, освітлення baker-а не залишить видимих різниць між ними. Якщо хоч одна з клепок повернута в сторону джерела світла інакше — overlap дасть неправильний bake на цій деталі.
Trim sheets і tiling textures. Для архітектурних елементів і технічних поверхонь часто використовується trim sheet pipeline: вузька текстура з набором деталей (ребра, пази, панелі), які tile-ятся вздовж поверхонь. UV для trim sheet разворачується інакше ніж для standard atlas: важливий не тільки texel density, а й точне вирівнювання island-ів по вертикальній осі атласу.
Процес розгортки hard-surface об'єктів
Аналіз моделі. Визначаємо: що йде в bake (normal map), що буде тайловою текстурою, що — atlas. Для складних ассетів ці категорії змішуються.
Seam placement. Ребра для seam вибираємо за пріоритетами: невидимі з ігрової камери грані — перший пріоритет, interior surfaces — другий, конструктивні ребра на тильних сторонах — третій. Для зброї: дульний срізу, нижня грань рукоятки, внутрішня поверхня спускового крючка.
Інструмент. Rizom UV для всього. Maya UV Toolkit — якщо модель вже в Maya pipeline і немає сенсу експортувати. Blender UV Editor — для простих ассетів або якщо модель в Blender.
У Rizom UV для hard-surface ключовий інструмент — Auto Seam з наступною ручною правкою плюс Straighten UV для вирівнювання прямолінійних граней. Прямокутні панелі повинні давати прямокутні islands — це вимагає додаткового кроку після Unfold.
Packing. Для hard-surface особливо важлива орієнтація islands. Прямокутні island-и, вирівняні по осях, упаковуються значно ефективніше, ніж ротовані. UVPackmaster у Blender або вбудований packer Rizom UV дають хороший результат при правильній настройці Allow Rotation.
Texel density. Для weapons і hero props: 512 px/m як мінімум для 2048 текстури. Для environment hard-surface (стіни, техніка): 256–512 px/m залежно від дистанції від камери. Різні частини одного ассета можуть мати різний texel density — це нормально, якщо різниця обґрунтована пріоритетом зони.
Специфіка під рушії
Unreal Engine. Статичні меші вимагають другий UV channel (channel index 1) для lightmap. Lightmap UV — окремий unwrap без overlap, з додатковим padding (мінімум 2px на 64px lightmap resolution, 4px на 128px). Це нельзя робити автоматично для hero objects — артефакти в запеченому освітленні гарантовані.
Unity. Аналогічна історія з Generate Lightmap UVs в import settings. Для високоякісних статичних ассетів — ручний lightmap UV у channel 2 (Unity 0-indexed: channel 1).
Орієнтири по срокам
| Тип об'єкта | Строки |
|---|---|
| Простий проп (ящик, панель, деталь) | 1–4 години |
| Зброя (пістолет, ніж, автомат) | 4–10 годин |
| Транспорт (мотоцикл, машина) | 2–5 днів |
| Техніка / механізм середньої складності | 1–3 дні |
| Архітектурний елемент з trim sheet | 1–2 дні |
Вартість розраховується індивідуально. Lightmap UV channel включається в роботу окремим пунктом ТЗ.





