Дневник разработки №48

Это видимо самый долгий по написанию и хотелось бы верить долгожданный дневник разработки. Спера дневник откладывался из-за обилия новостей о поездке на ИГРОПРОМ и потом множество ивентов смещало акцент от дневника в сторону.

ИГРОПРОМ 2023<br />
ИГРОПРОМ 2023

За написание я садился не один десяток раз, но постоянно все сливалось в какое то нытье что все идет не по плану и полученный заряд энергии от ивентов уходит в сторону.

Я пишу действительно глобальную стратегию в которой должен быть виден масштаб всего происходящего с первых минут игр. И первое что видит игрок в нашем проекте, это масштабность игровых карт.

Я проводил сравнение размеров карт, возможно они уже не точны и что-то изменилось с тех пор.

Сравнение размера карт<br />
Сравнение размера карт

Каждый свой рабочий сезон над проектом я начинаю с доработки игровой карты, рендера или допиливанием движка. Это позволяет мне быстрее включиться в процесс разработки.

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

Весь зимний сезон я занимался параллельно несколькими взаимосвязанными задачами.

Первая задача была переписать всю генерацию под генерацию по сиду (Сид, (от англ. random seed от seed — зерно, начало) — значение, состоящее из символов (включая цифры), которое используется в качестве основы при генерации игрjвого мира).

Вторая задача - ввести понятие разности высот. Оказалось достаточно сложной задачей, особенно в плане прокладки рек.

Ландшафт в игре<br />
Ландшафт в игре

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

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

Но еще предстоит провести работу в плане дополнительной оптимизации процесса загрузки ресурсов доработать функцию кэширования.

Четвертая задача, это реализация всех юнитов первой эпохи для шести рас и анимаций для них. Мы справились с этой задачей.

Юниты первой эпохи<br />
Юниты первой эпохи

Пятая задача состояла в том чтобы доделать паки строений всех рас. Мы практически справились с этой задачей, осталось совсем немного - специализированные здания (охотничьи лагеря, шахты, карьеры, лесолилки, пастбища и поля).

Шестая задача - реализовать программно масштабируемый интерфейс пользователя. И эту задачу мы решили - https://youtu.be/eUzagW2fErQ

Седьмая задача состояла в написании второй итерации музыкального сопровождения к игре. Тоже готово. Осталось теперь сделать переходы и паузы между музыкой.

Ближайший план

Планируемые задачи должны быть решены до 20 ноября 2024 года, новый билд повезем на ИГРОПРОМ.

Движок:

  • Оптимизация функции кэширования.
  • Оптимизация загрузки моделей.
  • Реализация управления музыкальными треками.

Модели:

  • Все модели строений первой эпохи.
  • Модели животных и их анимация.

Текстуры - обновить текстуры карты. Задача сложная (либо затратная) и пока под вопросом.

UI/UX

  • Реализовать основной игровой интерфейс.
  • Новое оформления окна юнита и кнопок управления.
  • Новые значки юнитов и городов.
  • Наконец сделать интерфейс города.

Геймплей

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

Работа движется, уже начал потихоньку возвращаться к проекту после своего летнего рабочего сезона.

Дневник разработки №48

Скоро будет много интересных новостей!

1111
Начать дискуссию