Міграція Corsairs Legacy з Unity 2022 на Unity 6 від команди Tech-5

Протягом останніх місяців одним із найбільших технічних завдань у розробці Corsairs Legacy стала міграція з Unity 2022 на Unity 6.
Зі сторони оновлення рушія може здаватися відносно простим процесом - відкрити проєкт, оновити версію, виправити кілька попереджень і готово. Насправді ж для великої RPG з відкритим світом із роками накопичених систем, власною логікою рендерингу, стримінгом, AI, фізикою та платформеними оптимізаціями міграція рушія перетворюється на окремий великий інженерний проєкт.
Для нас цей перехід зачепив майже кожну ключову систему гри.
Чому ми вирішили перейти на Unity 6
Corsairs Legacy є незвично вимогливим проєктом з точки зору масштабу світу та щільності асетів.
Гра містить:
- великі безшовні морські простори
- густі тропічні острови
- велику кількість рослинності
- велику кількість унікальних матеріалів
- динамічні погодні системи
- рендеринг на великі дистанції
- інтер’єри кораблів
- велику кількість 4K-текстур
- системи стримінгу світу
- складну AI-симуляцію
У процесі розробки обмеження систем управління пам’яттю та стримінгу в Unity 2022 ставали дедалі помітнішими - особливо під час довгих ігрових сесій і переміщення великими морськими просторами.
Однією з найбільших проблем була стабільність texture streaming.
Теоретично texture streaming існував і в попередніх версіях Unity. На практиці ж, враховуючи масштаб і складність Corsairs Legacy, ми регулярно стикалися із ситуаціями, коли використання VRAM ставало нестабільним, текстури завантажувалися надто агресивно або поведінка стримінгу недостатньо динамічно реагувала на зміну ігрових ситуацій.
Особливо помітно це було під час плавання, коли гравець може швидко переміщатися величезними просторами з постійно змінними дистанціями видимості.
Міграція виявилася значно складнішою, ніж очікувалося
Сам перехід був далеким від безболісного.
Велика кількість внутрішніх систем потребувала рефакторингу або часткового переписування:
- rendering pipelines
- сумісність шейдерів
- post-processing
- terrain-системи
- рендеринг рослинності
- логіка управління пам’яттю
- стримінг-системи
- editor tooling
- кастомні плагіни
- поведінка UI
- інтеграції сторонніх рішень
Деякі системи почали поводитися інакше навіть тоді, коли сам код залишався незмінним.
У кількох випадках баги проявлялися лише після багатогодинного геймплею або за дуже специфічних умов стримінгу світу. Також були ситуації, коли системи ідеально працювали в editor build, але поводилися інакше в standalone build після міграції.
Open-world проєкти особливо чутливі до подібних змін на рівні рушія, оскільки багато систем безперервно взаємодіють між собою в реальному часі.
Найбільше покращення: texture streaming нарешті почав працювати правильно

Одним із найважливіших технічних покращень для Corsairs Legacy після переходу на Unity 6 стало суттєве покращення роботи texture streaming.
Для нас це була величезна зміна.
Оскільки Corsairs Legacy сильно покладається на деталізовані оточення та великі обсяги 4K-текстур, навантаження на VRAM завжди було одним із головних технічних вузьких місць - особливо на відеокартах середнього сегмента та handheld-пристроях.
У Unity 6 поведінка стримінгу стала значно стабільнішою та передбачуванішою.
Тепер рушій значно краще динамічно керує texture residency залежно від:
- видимості камери
- дистанції
- важливості сцени
- швидкості переміщення
- поточного навантаження на пам’ять
Це дозволило нам суттєво знизити непотрібне навантаження на VRAM, зберігаючи високу якість зображення там, де це справді важливо.
На практиці це означає:
- менше різких стрибків використання VRAM
- кращу стабільність пам’яті під час довгих сесій
- плавніше переміщення під час плавання
- менше агресивних unload/reload текстур
- кращу масштабованість між різними рівнями заліза
Для гри на кшталт Corsairs Legacy, де гравець може стояти на кораблі та одночасно бачити:
- поверхню океану
- острови
- рослинність
- поселення
- кораблі
- віддалений ландшафт
- динамічну погоду
- volumetric effects
...це покращення стало надзвичайно важливим.
Покращення FPS
Ще одним великим результатом міграції стало покращення продуктивності.
Після кількох місяців оптимізацій поверх міграції на Unity 6 ми почали бачити суттєве зростання FPS у кількох важких геймплейних сценаріях.
Особливо помітно це було під час:
- масштабного плавання
- дослідження островів
- локацій із густою рослинністю
- сцен із важкими погодними ефектами
- ситуацій із рендерингом на великі дистанції
Частина цих покращень пов’язана безпосередньо з Unity 6, а частина - з тим, що сама міграція змусила нас повернутися до старих систем і оптимізувати технічний борг, який накопичувався роками.
У певному сенсі міграція стала великою фазою «технічного прибирання» для проєкту.
Робота все ще триває
Попри те, що міграція вже приносить помітні результати, цей процес усе ще триває.
Міграції рушія для великих ігор ніколи не бувають повністю «завершеними» одразу після першого успішного білду. Завжди залишаються edge-case сценарії, платформені особливості та можливості для оптимізації, які стають помітними лише під час тривалого тестування.
Ми продовжуємо покращувати:
- поведінку пам’яті
- логіку стримінгу
- сумісність контролерів і платформ
- CPU bottlenecks
- GPU-heavy rendering paths
- продуктивність Steam Deck
- оптимізацію шейдерів
- стабільність завантаження
Але загалом перехід на Unity 6 уже став одним із найважливіших технічних оновлень у розробці Corsairs Legacy.
І найважливіше - він дає нам значно сильніший технічний фундамент для майбутнього проєкту.
22.08.2025, Tech-5 Team

















