Добавлен , опубликован
Прежде всего хочу сказать, что работа по проекту продолжается. Новостей не очень много, ведь разработка была возобновлена совсем недавно.

Адаптивная область загрузки

Сейчас я экспериментирую с изменением формы области вокруг камеры, в которой загружается карта. Например, при быстром движении в каком-то направлении область загрузки деформируется, расширяясь в направлении движения и уменьшаясь в других направлениях.
При сверхбыстром движении в одном направлении можно реально подгружать только смежные с персонажем фрагменты карты, а остальную область экрана смазывать, убив при этом сразу трех зайцев:
  • добавление вырвиглазного красивого motion blur эффекта
  • снижение нагрузки на ядро игры, а при мультиплеере и на сервер и сеть.
  • уменьшение количества информации, которую получает игрок при быстром движении и, соответственно, постановка игрока перед выбором - или очень быстрое движение или движение по медленней, но с возможностью любоваться видами и искать ресурсы.
К сверхбыстрому движению относиться будут, скорее всего, только свободное падение и некоторые виды скоростных транспортных средств.

Гибкая камера

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

Предгенерация

Многострадальный генератор карты возможно будет в очередной раз переписан. Одна из основных фич, которую я хочу реализовать - разделение карты на векторный "макет" и, собственно, саму растровую карту. Векторный макет охватывает очень большую территорию и генерируется задолго до приближения игрока к границам сгенерированного мира, а растровое заполнение карты на основе макета производится по мере необходимости.
Естественно, векторный макет используется исключительно для генерации карты и не адаптируется под внесенные игроком изменения - макет может быть удален после генерации всех связанных с ним растровых фрагментов карты - для экономии места на диске, а также макет может быть использован при необходимости по каким-либо причинам обнулить все сделанные игроком изменения в некотором фрагменте карты.
Ну и вполне разумной мне кажется возможность добавить опцию, позволяющую в процессе создания мира сгенерировать не только векторный макет карты, но и заполнить значительную его часть растровой составляющей.

На этом все, заходите еще.
`
ОЖИДАНИЕ РЕКЛАМЫ...