R3 в Unity: реактивное программирование без утечек подписок
Разбираем R3 — преемника UniRx: ReactiveProperty и привязка UI, управление подписками, полезные операторы, время и кадры, async и поиск утечек через Observable Tracker.
Полезные материалы про Unity ассеты, пайплайны и разработку игр.
Разбираем R3 — преемника UniRx: ReactiveProperty и привязка UI, управление подписками, полезные операторы, время и кадры, async и поиск утечек через Observable Tracker.
Как убрать опрос значений из Update и связать данные игры с интерфейсом: пишем свой ReactiveProperty на C#, а затем переходим на R3 от Cysharp с производными свойствами, CombineLatest и автоматической отпиской через AddTo.
Как перенести массовые Raycast, SphereCast и OverlapSphere с главного потока в Job System: RaycastCommand, OverlapSphereCommand, несколько попаданий, постоянные буферы и типичные ошибки.
Разбираем client-side prediction и server reconciliation на C#: фиксированные тики, буферы ввода, откат с повторной симуляцией, сглаживание ошибки и интерполяция чужих игроков.
Откуда берутся строковые GC-аллокации в UI Unity и пять приёмов, которые их убирают: проверка изменений, кэш строк, StringBuilder, запись чисел прямо в TextMeshPro и ZString.
Собираем на C# генератор уровней на алгоритме Wave Function Collapse: тайлы с сокетами и поворотами, решатель на битовых масках с выбором по энтропии, распространение ограничений, откат при тупиках и генерация в фоновом потоке.
Кубические и осевые координаты для гексов в Unity: соседи, расстояние, клетка под курсором, линия, зона и кольцо, повороты на 60° и перевод в координаты гексагонального Tilemap. Весь код на C# с тестами.
Разбираем PlayerLoop API: как посмотреть, из чего Unity собирает кадр, и встроить в него свои системы обновления из обычных C#-классов — с точным порядком, без служебных GameObject и без сюрпризов при отключённой перезагрузке домена.
Разбираем три приёма, после которых прыжок в платформере перестаёт «глотать» нажатия: coyote time, буфер прыжка и прыжок переменной высоты. Готовый контроллер на Rigidbody2D и новой Input System, расчёт скорости по высоте и unit-тесты логики.
Как добавить номер версии в файл сохранения, написать цепочку миграций v1 → v2 → v3 на Json.NET, атомарно записывать сейв на диск и покрыть миграции тестами, чтобы патчи не стирали прогресс игроков.
Страница 1 из 12