AcceleratedRecoiling-Leaves: Ускорение коллизий на GPU для Minecraft

AcceleratedRecoiling-Leaves для Minecraft — плагин, выносящий расчёт столкновений сущностей на видеокарту. Снижает лаги, поднимает TPS и разгружает главный поток сервера.

Скачать acceleratedrecoiling для Minecraft 1.21.8

Оригинальное название: acceleratedrecoiling

Версии Minecraft: 1.21.8

ФайлВерсияЗагрузчикРазмер
acceleratedrecoiling-0.7-alpha-leaves-all.jar1.21.8—1.6 МБСкачать
AcceleratedRecoilingLeaves-0.7.2-alpha-leaves-all.jar1.21.8—1.6 МБСкачать

AcceleratedRecoiling-Leaves

Когда на сервере Minecraft скапливаются десятки мобов, ферм или игроков, главный поток начинает захлёбываться в вычислениях столкновений. AcceleratedRecoiling-Leaves решает эту проблему радикально — переносит обсчёт AABB-коллизий с процессора на графический чип. Плагин создан для Paper и его форков, использует Foreign Function & Memory API из Java 21 и буквально заставляет сервер дышать свободнее даже в самых нагруженных чанках.

Что такое AcceleratedRecoiling-Leaves?

AcceleratedRecoiling-Leaves — это экспериментальный оптимизационный плагин, который перехватывает логику столкновений сущностей и передаёт её на GPU через OpenCL. Вместо того чтобы на каждом тике перебирать все пары энтити на центральном процессоре, плагин задействует массивно-параллельную архитектуру видеокарты. Результат — резкое снижение времени обработки коллизий и рост TPS в зонах с высокой плотностью мобов. Разработчики из FoldMC предупреждают: плагин пока тестируется, поэтому перед использованием обязательно делайте бэкап мира.

Как работает оптимизация коллизий

В основе AcceleratedRecoiling-Leaves лежит разбиение мира на сетку (параметр gridSize) и ограничение максимального числа столкновений для одной сущности (maxCollision). Когда на сервере запущен плагин, он автоматически выгружает нативный код acceleratedRecoilingLib.dll (или .so на Linux) и начинает обрабатывать пересечения AABB прямо на GPU. Главный поток освобождается от этой рутины, а вычисления идут асинхронно. В конфиге можно даже переключить обработку на CPU, если видеокарта не справляется, но основная фишка — именно GPU-ускорение.

Требования и совместимость

AcceleratedRecoiling-Leaves для Minecraft предъявляет чёткие системные требования. Во-первых, нужна Java 21 или новее — FFM API стал официальным только с этой версии. Во-вторых, 64-битная операционная система, потому что нативная библиотека собрана под x64. На Windows потребуется Microsoft Visual C++ Redistributable, на Linux — OpenCL-рантайм (например, ocl-icd-libopencl1 для Debian/Ubuntu). Обязательно наличие совместимой видеокарты с драйверами, поддерживающими OpenCL. Плагин ориентирован на серверные ядра Paper и FoldMC, работающие с Minecraft 1.20.5 и выше — именно эти версии перешли на Java 21.

Как установить AcceleratedRecoiling-Leaves

Скачать AcceleratedRecoiling-Leaves можно с официальной страницы релизов FoldMC. Файл плагина с расширением .jar помещается в папку plugins вашего сервера. При первом запуске плагин сам извлечёт нативную библиотеку в корень сервера и создаст конфигурационный файл acceleratedRecoiling.json. Если вы пользуетесь лаунчером foxygame.net, то оцените, как легко добавить AcceleratedRecoiling-Leaves в сборку — каталог дополнений лаунчера предлагает установку в один клик и автоматически следит за совместимостью версий. После установки достаточно перезапустить сервер, и оптимизация включится с настройками по умолчанию.

Настройка конфигурации

Файл acceleratedRecoiling.json лежит в корне сервера и содержит несколько ключевых параметров:

  • enableEntityCollision — включает/выключает оптимизацию коллизий (можно переключать командой /acceleratedrecoiling).
  • enableEntityGetterOptimization — дополнительная оптимизация получения сущностей, также управляется через команду.
  • gridSize — размер ячейки сетки для разбиения мира. Меньшие значения дают более точное распределение, но увеличивают накладные расходы.
  • maxCollision — максимальное количество столкновений, которое может быть обсчитано для одной сущности. Ограничено размером выходного буфера OpenCL.
  • gpuIndex — индекс используемого GPU, если в системе несколько видеокарт.
  • useCPU — при значении true расчёт выполняется на процессоре, а не на GPU.

Рекомендуется начинать со стандартных значений и менять их только при появлении проблем. Команда /acceleratedrecoiling позволяет быстро отключить оптимизацию прямо в игре, если что-то пошло не так.

Решение проблем при запуске

Если сервер крашится после установки AcceleratedRecoiling-Leaves, первым делом проверьте версию Java — нужна строго 21+. Иногда помогает добавление флага --enable-preview в JVM-аргументы, либо переход на Java 22+. В случае повторяющихся ошибок удалите файл acceleratedRecoilingLib.dll (или .so) из корня сервера и перезапустите его — плагин извлечёт библиотеку заново. На Linux убедитесь, что установлен OpenCL-рантайм, а на Windows — Visual C++ Redistributable. Если видеокарта не поддерживает OpenCL, можно временно выставить useCPU: true, но тогда вы потеряете главное преимущество плагина.

Заключение

AcceleratedRecoiling-Leaves — смелый эксперимент, который действительно способен вдохнуть жизнь в перегруженные серверы Minecraft. Перенос коллизий на GPU снимает критическую нагрузку с главного потока и позволяет держать стабильный TPS даже там, где раньше всё тормозило. Плагин требует аккуратного подхода и соблюдения системных требований, но для администраторов, готовых к тестированию, он открывает новый уровень производительности. Скачайте AcceleratedRecoiling-Leaves, настройте под своё железо и убедитесь сами — будущее серверной оптимизации уже здесь.