Коротко: величезна частка гравців на скромному залізі, ноутбуки, портативки на кшталт Steam Deck, старіші GPU і оточення, що працює лише на топовій збірці, залишає їх за бортом. Гарна новина: більшість продуктивності оточення губиться в кількох передбачуваних місцях (овердро, дроколи, густе листя, роздуті текстури) і повертається парою дисциплінованих звичок. Це практичний посібник, щоб уловитися в низький бюджет кадру без потрошіння твого арту, плюс метод фіксованої камери для відлову регресій до їхнього виходу.
Це найдорожчий тип сцени для роботи: шари прозорого листя, тисячі інстансів, важкий овердро. Це також там, де живуть найбільші, найлегші перемоги, щойно ти знаєш, куди йде час кадру.
Задай спершу бюджет, у мілісекундах
Обери цільовий час кадру на твоєму найслабшому підтримуваному залізі, 16,6 мс для 60 fps, 33,3 мс для 30, і стався до нього як до жорсткої межі. «Оптимізувати пізніше» значить «переробляти пізніше»; бюджетувати наперед куди дешевше.
Оптимізація без числа — це просто вайб. Виріши кадр, на який цілишся на твоєму підлоговому залізі, Steam Deck, середньому ноутбуці, який би не був твій мінімальний спек, і переведи в мілісекунди, бо мілісекунди складаються, а відсотки брешуть. Потім тримай кожну сцену при ньому, поки будуєш, не в кінці. Команди, що випускають гладко на слабкому, не оптимізують жорсткіше; вони просто ніколи не дають сцені пробити бюджет у першу чергу, що коштує частку того, щоб видряпувати продуктивність назад після того, як арт готовий і все від нього залежить.
Знай, куди йде час
Час кадру оточення зазвичай з'їдається овердро (прозоре листя), надто багатьма дроколами (небатчені об'єкти), роздутими текстурами (пропускна здатність пам'яті), і дорогим освітленням/тінями. Профілюй, щоб знайти ТВОЄ вузьке місце, перш ніж оптимізувати наосліп.
Гадати про оптимізації марнує дні. Відкрий профайлер, знайди, CPU-bound ти (зазвичай дроколи) чи GPU-bound (зазвичай овердро, шейдинг або пропускна здатність), і атакуй справжнє вузьке місце. Тим не менш, оточення провалюються передбачуваними способами, і це майже завжди одне з: овердро від шаруватого прозорого листя; дроколи від тисяч неінстансованих об'єктів; пам'ять/пропускна здатність текстур від роздутих або надто багатьох текстур; і вартість освітлення/тіней від надто багатьох динамічних джерел або високороздільних карт тіней. Решта цього посібника проходить їх у порядку звичного впливу.
Листя й овердро: звичний лиходій
Прозорі карти листя перекриваються й перешейдять ті самі пікселі багато разів — це овердро, і це вбивця номер один слабкого заліза. Зменш перекриття карт листя, використовуй агресивні LOD-и, і відсікай далеке листя жорстко.
Густа рослинність, там, де вмирає більшість бюджетів кадру слабкого заліза, бо кожна напівпрозора карта листа змушує GPU шейдити пікселі, які вона потім перемалює знову, іноді десять-плюс разів на піксель у густому наметі. Виправлення: використовуй щільніші карти листя з меншою витраченою прозорою площею, падай швидко на дешевші LOD-и в міру відступу листя, і задай жорсткі дистанції відсічення, щоб далекі трава й кущі просто перестали малюватися. На портативці різниця між «трава до горизонту» і «трава відсічена на розумній дистанції» може бути всією різницею між 25 і 40 fps. Запечи листя в нативні інстанси, щоб GPU могла його батчити, і дай інстансингу рушія робити важку роботу.
Дроколи й інстансинг
Кожен унікальний об'єкт, відправлений окремо, — це дрокол, і тисячі їх застопорюють CPU. Інстансуй повторювані меші, щоб сотні копій коштували один кол; мерж статичний мотлох, де це має сенс.
Якщо ти CPU-bound, дроколи зазвичай чому. Кожна окрема річ, що ти просиш рушій відрендерити, несе оверхед, а сцена, розміщена вручну з тисячею окремих каменів і кущів, топить CPU у вартості відправки. Інстансинг, ліки: повторювані меші, намальовані як інстанси, схлопують сотні копій в єдиний кол, що рівно чому інструменти скатерингу, що запікають у нативні інстанси рушія, важливі для продуктивності, скатер, що виглядає як тисяча рослин, коштує як жменя. Де інстансинг не застосовний, мерж дрібного статичного мотлоху в комбіновані меші теж ріже число колів. Це одне місце, де робочий процес на кшталт Numivo, малюй щільність, потім запікай у прості інстансовані меші, окупається прямо на слабкому залізі, бо вивід, та дешева річ, яку хоче GPU.
Не кожна сцена має бути максимально густою. Тихі, відкриті простори коштують майже нічого й дають як залізу, так і гравцеві відпочинок; тактувати свою щільність само по собі оптимізація.
LOD-и, дистанції відсічення й розміри текстур
Дай кожному значущому мешу LOD-и, щоб далекі копії були дешеві, задай дистанції відсічення, щоб крихітні-на-екрані об'єкти перестали малюватися, і обмеж роздільність текстур тим, що камера розрізняє на дистанції. Ці три повертають багато за мале зусилля.
Три негламурні звички несуть більшу частину решти бюджету. LOD-и: далекі меші мають перемикатися на низькополігональні версії, бо повна деталь на 20-піксельному дереві витрачена. Дистанції відсічення: усе надто мале на екрані, щоб помітити, має перестати рендеритися цілком, дрібні пропси, галька, тонка трава, налаштоване за типом об'єкта. Розміри текстур: обмеж роздільність тим, що реально розрізнюване на дистанції гравця (див. логіку щільності текселів, далеким речам потрібно куди менше текселів), бо роздуті текстури палять пропускну здатність пам'яті, яку слабкі GPU не можуть виділити. Жодне з них не шкодить вигляду при правильному налаштуванні; вони просто перестають змушувати тебе платити за деталь, що ніхто не бачить.
Знаходь регресії фіксованими камерами
Визнач пару «бюджетних камер», твою найгіршу панораму, найгустіший бойовий простір, найзавантаженіший інтер'єр, і перевіряй їхній час кадру кожен білд. Випадкові прольоти ховають регресії; ті самі брутальні види щоразу виставляють їх напоказ.
Продуктивність тихо гниє в міру додавання контенту, і ти не спіймаєш це, блукаючи рівнем недбало. Натомість закріпи свою жменю найгірших видів, огляд густого лісу, забитий ринок, ефектно-важкий бій, і міряй рівно їх, кожен білд, проти бюджету. Коли число червоніє, ти знаєш, що недавня зміна це спричинила, і приблизно де. Це різниця між командою, що виявляє кризу продуктивності в кінці, і тією, що чинить 2-мс регресію в день її появи. На слабких цілях зроби так, щоб одна з тих камер працювала на справжньому Steam Deck або машині мінімального спеку, а не лише оцінці редактора.
Польові числа, які варто вкрасти
- Бюджети кадру: 16,6 мс (60 fps) / 33,3 мс (30 fps), задай на твоєму підлоговому залізі
- Звичний убивця слабкого: овердро листя, щільніші карти, швидкі LOD-и, жорстке відсічення
- Повторювані меші → інстанси: сотні копій за один дрокол
- Обмеж розмір текстур розрізнюваною камерою деталлю, далекому потрібно куди менше текселів
- Лови регресії фіксованими бюджетними камерами, міряними кожен білд
Міні-FAQ
Чи маю я вибирати між красивим і слабким залізом? Менше, ніж ти думаєш. Більша частина вартості слабкого, трата: овердро, небатчені коли, роздуті текстури — не видима якість. Відріж трату, і арт виживе; гравці на слабкому залізі рідко скучають за деталлю, за яку ти платив, але яку вони не могли бачити.
Чи динамічне освітлення під забороною на Steam Deck? Не під забороною, але бюджетоване. Обмеж число динамічних джерел і відкидачів тіней, обіприся на запечене освітлення, де сцена статична, і резервуй динамічну вартість для того, що важливо. Це рядок бюджету, не бан.
Яка одна зміна допомагає найбільше на портативці? Зазвичай приборкання листя: щільніші карти листя, агресивні LOD-и й жорсткі дистанції відсічення на траві й кущах. Овердро, найчастіше вузьке місце портативки, а рослинність, там, де живе овердро.
Наскільки рано мені тестувати на цільовому залізі? З першого вертикального зрізу. Оцінка редактора на потужній дев-машині ховає рівно ті проблеми, що будуть у портативки. Дістань білд на справжньому пристрої мінімального спеку рано й тримай його в циклі.
Працювати на картоплині не про те, щоб зробити твою гру потворною, а про те, щоб не платити за деталь, що гравці не можуть бачити. Бюджетуй у мілісекундах, убий овердро, інстансуй повтори, відсічи невидиме, і спостерігай за найгіршими камерами кожен білд, і твоє оточення виглядатиме чудово і працюватиме для величезної аудиторії, що не на топовій збірці.

