- Разработчик / автор
- Harvey_Husky
- Для версий
- 1.20.+
- 1.21.+
AsyncParticles — мод для оптимизации частиц в Minecraft: выше FPS, меньше лагов и гибкая совместимость
AsyncParticles — это мод, который ускоряет Minecraft за счёт продвинутой оптимизации частиц: их тика, рендера, буферизации и расчётов освещения. Он создан для игроков, которые хотят плавный FPS в насыщенных сценах — взрывы, дым, магические эффекты, дождь, снег, механизмы Create, корабли Valkyrien Skies и любые модовые визуальные эффекты. Главная идея простая: убрать лишнюю нагрузку с клиента и сделать работу с частицами безопаснее, быстрее и умнее за счёт настроек и режимов исполнения.Зачем нужен AsyncParticles и что он реально улучшает
Если у вас просадки FPS появляются в моменты, когда на экране много эффектов (частицы от боя, автоматизации, погодных модов, крупных конструкций), AsyncParticles часто даёт заметное облегчение. В отличие от «одной кнопки оптимизации», мод предлагает понятную механику улучшений:- ускорение обработки частиц за счёт переноса части работы в асинхронный поток (где это безопасно);
- culling частиц (отсечение лишних) — меньше мусора на экране и меньше нагрузки;
- оптимизация подсветки частиц и кэша освещения;
- уменьшение длительности клиентского тика за счёт переноса отдельных операций.
Где находятся настройки: ModMenu и ModList
Все ключевые параметры AsyncParticles настраиваются через интерфейс списка модов:- настройки доступны через ModMenu (Fabric) или экран ModList (Forge/NeoForge в зависимости от сборки);
- мод предлагает гибкие опции миксинов, режимы рендера, блокировки и совместимость.
Основные возможности AsyncParticles: что именно оптимизируется
AsyncParticles не ограничивается одной фишкой — это набор систем, которые уменьшают нагрузку на клиент.Асинхронный тик и рендер частиц
Мод умеет выполнять тик частиц и подготовку буферов параллельно, снижая «пики» нагрузки. Это особенно полезно, когда эффектов много и они обновляются каждую секунду.Particle culling — умное отсечение частиц
Когда частиц становится слишком много, игра тратит ресурсы на то, что вы почти не замечаете. Culling помогает убрать лишнее и оставить важное — визуально картинка остаётся приятной, а нагрузка падает.Асинхронный кэш освещения частиц
Подсветка и расчёт света часто стоят дорого. Кэш и оптимизация позволяют снизить цену эффекта, особенно в динамичных сценах.Отложенный тик текстур на один кадр
Небольшая, но полезная оптимизация: некоторые операции с текстурами переносятся на следующий кадр, чтобы сократить длительность клиентского тика и сделать игру отзывчивее.Дождь и снег: отдельная оптимизация погоды
Мод поддерживает асинхронный тик и рендер дождя/снега (буферизация). Важно: эта возможность заявлена как актуальная для Minecraft 1.21.5+.Create и Valkyrien Skies: частицы с коллизией с кораблями и механизмами
Одна из сильных сторон AsyncParticles — улучшенная интеграция с популярными техническими модами:- в связке Valkyrien Skies + Create частицы могут сталкиваться с кораблями и контрапциями;
- для погодных частиц из модов (например, Simple Weather/Pretty Rain/Particle Rain) тоже доступна коллизия с движущимися объектами при нужной комбинации модов.
Асинхронная генерация модовых частиц
AsyncParticles умеет ускорять генерацию частиц, которые добавляют другие моды (например, моды на дождь/эффекты). В результате уменьшается нагрузка на моменты массового спавна эффектов — это важно для серверов и сборок, где визуала много всегда.Режимы рендера и стабильность: почему по умолчанию стало безопаснее
Начиная с версии x.4.0, режим рендера частиц по умолчанию переключён на SYNCHRONOUSLY. Это сделано ради стабильности, чтобы избежать редких, но неприятных ошибок вида ConcurrentModificationException, которые могли проявляться в сборках с модами, использующими внешние небезопасные контейнеры (глобальные списки/карты) во время рендера.Если вы используете старую версию (≤ x.3.0), разумная практика — вручную установить режим SYNCHRONOUSLY в настройках для более спокойной игры.
Для авторов модпаков и тех, кто тестирует FPS:
- можно попробовать режимы быстрее (например, максимально быстрый), чтобы проверить прирост;
- но делать это стоит осторожно: в некоторых сочетаниях модов это может спровоцировать краши.
Совместимость с модами: что работает, а что нет
AsyncParticles рассчитан на современные оптимизационные и графические сборки и заранее дружит с популярными решениями.Совместим (проактивно)
- Sodium / Embeddium
- Flerovium
- Iris / Oculus
- Create
- Valkyrien Skies
- Particle Rain / Pretty Rain
- Simple Weather
- Effectual / Effective
- Particular
- Particle Core (частично)
Несовместим
- OptiFine
- MadParticle
Рекомендуемые моды рядом с AsyncParticles: усиление эффекта
Чтобы получить максимум плавности и стабильности, AsyncParticles часто ставят вместе с:Такой набор обычно закрывает сразу несколько узких мест: освещение, память, рендер, тик и общую производительность клиента.
Частые проблемы и быстрые решения: если что-то упало
AsyncParticles даёт гибкость, но из-за сложности сборок иногда встречаются конфликты. Ниже — самые типовые случаи и понятные обходные шаги.Краш с LodestoneLib
Решение, которое часто помогает: в файле lodestone-client.toml установитеbuffer_particles = false
Краши, связанные с ClassInstanceMultiMap или Level.getEntities(...)
Как обходной путь включите настройку:- Mixin → Make ‘ClassInstanceMultiMap’ Thread-Safe
Краши, связанные с Level.getBlockEntity(...)
Как обходной путь включите:- Mixin → Make ‘LevelChunk#blockEntities’ Thread-Safe
ConcurrentModificationException: самая частая причина и как лечится
Чаще всего это происходит, когда тик и рендер частиц одновременно обращаются к одному и тому же контейнеру, который не потокобезопасен.Рабочий способ стабилизации:
- добавьте полные имена классов частиц (fully qualified class names) в параметры particle$lockProvider и particle$lockRequired в Mixin-настройках мода.
Как понять, стоит ли включать самые быстрые режимы
Если вы играете в одиночку или собираете модпак и хотите выжать максимум FPS, логика такая:- начните с безопасного режима (синхронного) и проверьте стабильность;
- затем тестируйте ускоренные режимы на сценах с большим количеством частиц: фермы, механизмы, массовые бои, дождь/снег;
- если появились краши или странные ошибки — возвращайтесь к SYNCHRONOUSLY и используйте точечные thread-safe миксины.