Стриминг большой локации
Прошлый прототип дал понять, что боевая симуляция получается тяжёлой и нужно ограничить её пределы. Собирать мир из маленьких арен мне не хотелось, ведь так не будет элемента исследования, а я это дело обожаю. Поэтому пришлось немного поломать голову 🤔
Я разбил игровой мир на чанки, внутри которых сущности хранятся в компакнтом виде. А симуляция происходит только в небольшой зоне около игрока.
В начале кадра я смотрю, какие чанки задевает зона и забираю из них всё содержимое, распаковывая сущности в удобный для симуляции формат. В конце кадра пакую результат обратно в чанки.
Получается такая стриминговая система, благодаря которой размер локации не влияет на производительность боёвки.
P.S. Сундук самый обыкновенный, не обращайте на него внимание.