Living Layers: Слой первый
Фокус этапа: архитектура движка, интеграция физики, оптимизация рендеринга ландшафта
Поехали 🫠
Неделя была насыщенной. Создаётся фундамент проекта и были крупные правки краткосрочных планов и дополнения долгосрочных.
Под конец недели Альфа 2 разрослась на 8 задач, и это при том, что часть задач были вынесены в последующие версии.
Большая часть второстепенных задач была выделена из планов на Альфу 3 в новую Альфа 3.1; запланированы дополнительные R&D в Альфа 6.
Архитектура: Разделение Client/Server
Произведён рефакторинг кодовой базы с выделением ядра симуляции.
- Изоляция логики: Системы управления воксельным миром, физикой и игровой логикой отделены от систем рендеринга, ввода и UI.
- Local Server: Реализована модель «клиент-сервер» внутри одного процесса. Симуляция мира отвязана от частоты кадров рендеринга, что обеспечивает детерминированность физики независимо от производительности графической подсистемы.
- Command Queue: Взаимодействие клиента с миром переведено на очередь команд.
Воксельный мир и Рендеринг
Завершена реализация базовой воксельной песочницы с размером чанка 32×32×32 и размером вокселя 0.1м.
- Terrain Pages: Внедрена система объединения мешей и коллайдеров чанков в более крупные структуры. Это позволило существенно сократить количество вызовов отрисовки и физических тел в сцене.
- Greedy Meshing: Реализован алгоритм жадной генерации сетки для оптимизации геометрии.
- Time-Sliced Remeshing: Обновление геометрии чанков переведено в режим с распределением нагрузки по кадрам. Это частично устраняет фризы основного потока при массовых изменениях ландшафта.
- Прозрачность: Добавлена поддержка прозрачных материалов с корректным отсечением невидимых граней на стыке с непрозрачными блоками.
Физика и Интеграция Физического Движка
Интегрирован физический движок первого уровня для обработки твёрдых тел и персонажей.
- Гибридная архитектура: Реализовано взаимодействие статической воксельной сетки с динамическими объектами. При разрушении вокселей генерируются физические обломки, наследующие форму и материал.
- Character Controller: Реализован кинематический контроллер пешки с базовыми механиками передвижения и прыжков.
- Collision Optimization: Для статической геометрии мира используются оптимизированные compound-коллайдеры, генерируемые на основе воксельных данных, вместо используемых ранее тяжелых trimesh-коллайдеров.
Игровой процесс и Управление
Реализован минимальный вертикальный срез геймплея Alpha 2.
- Режимы управления: Внедрена машина состояний для переключения между режимом бога и режимом вселения.
- Взаимодействие: Реализована механика рэйкастов для редактирования мира. В режиме персонажа взаимодействие ограничено дистанцией.
- Разрушаемость: Удаление блоков корректно обновляет граф сцены, перестраивает коллайдеры и спавнит обломки.
Инструментарий и QA
- Benchmark Module: загрузка мира, стресс-тесты, A/B.
- Profiling Overlay: Добавлен второй уровень внутриигрового оверлея. Метрики CPU/GPU, количество активных чанков и физических тел, время кадра симуляции.
- E2E Testing: Развёрнут фреймворк headless-тестирования.
- Dev Screenshots: Настроена система автоматического создания скриншотов ручного тестирования.
Поддержка проекта
Разово поддержать проект можно лайкнув девблог и оставив комментарий.
Дальнейшие планы
- Альфа 2: конец 2025
- Альфа 2.1: январь 2026,
открытие странички на Sponsr — доступ к закрытой альфе - Страницы в магазинах: февраль-март 2026
- Демо: весна-лето 2026
- Ранний доступ: 2026-2027
Рубиконы
Наиболее сложные инженерные решения заложены в Альфу 3 (навигация), Альфу 4.1 (визуал) и Альфу 6 (слои).
Успешное прохождение этих этапов — гарантия технической возможности проекта.