Async Chunk Generator
Асинхронные чанки
Эксперименты с асинхронной генерацией чанков, чтобы сервер не зависал при создании новых территорий.Experiments with async chunk generation so the server doesn't freeze while creating new terrain.Експерименти з асинхронною генерацією чанків, щоб сервер не зависав при створенні нових територій.
О проектеOverviewПро проєкт
Соседняя с PFCG тема. Когда игрок уходит в неизведанные земли, сервер генерирует новые чанки прямо в основном игровом потоке и часто заметно подлагивает — все остальные игроки чувствуют фриз.
Здесь я пробовал вынести генерацию в фон, чтобы основной поток её не ждал. В папке несколько подходов — ChunkGeneratorPlugin и DistributedChunksPaper — каждый со своими компромиссами между скоростью и стабильностью.
Статус — прототип: асинхронная генерация в Minecraft работает, но требует очень аккуратной синхронизации, и это исследование её границ.
A topic adjacent to PFCG. When a player heads into uncharted land, the server generates new chunks right in the main game thread and often visibly lags — every other player feels the freeze.
Here I tried moving generation into the background so the main thread doesn't wait on it. The folder has several approaches — ChunkGeneratorPlugin and DistributedChunksPaper — each with its own trade-off between speed and stability.
Status — prototype: async generation in Minecraft works but needs very careful synchronization, and this is research into its limits.
Сусідня з PFCG тема. Коли гравець іде в незвідані землі, сервер генерує нові чанки прямо в основному потоці й часто помітно підлагує.
Тут я пробував винести генерацію у фон. Кілька підходів — ChunkGeneratorPlugin і DistributedChunksPaper — кожен зі своїм компромісом.
Статус — прототип: асинхронна генерація працює, але потребує дуже акуратної синхронізації.
ОсобенностиFeaturesОсобливості
- Вынос генерации чанков из основного потока сервера
- Несколько подходов: ChunkGeneratorPlugin, DistributedChunksPaper
- Цель — убрать фризы при заходе в новые земли
- Исследование безопасной асинхронности
- Moves chunk generation off the server's main thread
- Several approaches: ChunkGeneratorPlugin, DistributedChunksPaper
- Goal — remove freezes when entering new terrain
- Research into safe asynchrony
- Винесення генерації чанків з основного потоку сервера
- Кілька підходів: ChunkGeneratorPlugin, DistributedChunksPaper
- Мета — прибрати фризи при заході в нові землі
- Дослідження безпечної асинхронності