GPUBooster
GPUBooster - клиентский мод на оптимизацию рендера для Майнкрафт. DSA, пулы буферов, векторизация и прирост FPS до 9%. Совместим с Sodium, Iris и шейдерами.
Если вы собираете клиентскую сборку на производительность, то GPUBooster - один из тех модов, про которые мало кто говорит, но которые незаметно делают свою работу под капотом. Это низкоуровневая оптимизация рендера для Minecraft: мод вмешивается в то, как игра общается с видеокартой через OpenGL, и убирает лишние операции при отрисовке кадра. Никакого нового контента, блоков или мобов тут нет - только чистая работа с графическим конвейером.
Кстати, старожилы могут знать этот проект под именем GpuTape. Начиная с Minecraft 1.21.10 автор официально закрыл старое название и рекомендует использовать именно GPUBooster, так что если видите GpuTape в старых гайдах - это оно и есть.
По сути это мод из той же лиги, что и Sodium: его обычно ставят не вместо него, а рядом с ним. Именно так и делают игроки - связка GPUBooster + Sodium (или Embeddium) + Iris с шейдерами встречается чаще всего. Скачать мод GPUBooster можно на этой странице, ниже разберём, что он реально даёт и какие у него подводные камни.
Сколько FPS даёт на практике
Автор замерял на чистой игре версии 1.21.11 без других модов (кроме библиотек):
| Без мода | С модом (1.2.2) | Прирост FPS |
|---|---|---|
| 1100 | 1200 | 9.09% |
Цифра честная - не обещанные мифические "+200%", а реальные ~9% на топовом железе, где и так всё летает. На слабом или среднем ПК эффект может ощущаться иначе, потому что мод снижает количество вызовов отрисовки и нагрузку на CPU при рендере, а это как раз то, что обычно душит старые системы. Важный нюанс: замеры делались на чистой версии, в жирной сборке со Sodium и шейдерами вклад будет менее заметным на фоне общей нагрузки, но лишним он точно не будет.
Что делает мод под капотом
Тут уже техническая часть, но постараюсь объяснить человеческим языком.
- DSA для VBO/EBO/FBO/текстур - главная фишка мода, подробнее ниже.
- RBO для глубины - замена текстурной глубины на рендербуфер.
- Пул буферов VBO/EBO - переиспользование памяти вместо постоянного создания новых буферов.
- Кэш "VAO - формат" - игра запоминает соответствия и не пересчитывает их каждый раз.
- Векторизация через jdk.incubator - ускорение вычислений на CPU.
- Батчинг текста в UI - интерфейс рисуется меньшим количеством вызовов.
- Быстрые коллекции в системах загрузки и кэш GL-целей.
DSA - сердце мода
DSA (direct-state access, прямой доступ к состоянию) - это подход в OpenGL, при котором буферы не нужно каждый раз "привязывать" (bind) перед использованием. В ванильном рендере Майнкрафта куча времени уходит именно на эти переключения состояний. GPUBooster работает с VBO, EBO и FBO напрямую, сокращая количество операций, а заодно добавляет пул VBO/EBO: мод создаёт буферы заданного в конфиге размера и переиспользует их, вместо того чтобы каждый раз выделять новую память. Для видеокарты и драйвера это ощутимо легче.
RBO для глубины (версии выше 1.21.11)
Вместо текстуры для буфера глубины мод использует Renderbuffer (RBO). Это даёт небольшой, но стабильный прирост. Работает и через DSA, если тот включён в режиме "FBO only" или "All".
Тут есть важное ограничение, о нём ниже.
SIMD - ускорение математики на процессоре
Векторизация через Vector API из модуля jdk.incubator ускоряет CPU-вычисления в рендере Frustum (около версии 1.21.1) и в отрисовке погоды (около 1.21.11). Раньше для этого требовалось вручную добавлять JVM-аргумент:
--add-modules jdk.incubator.vector
Его надо вписать в список JVM-аргументов вашего лаунчера. Хорошая новость: в релизе 1.3.1 для версий 1.21-1.21.1 автор убрал обязательность этого аргумента, так что свежие сборки ставятся проще. Но если игра крашится на старых версиях мода - первым делом проверяйте, не забыли ли вы этот аргумент. Это причина номер один вылетов у GPUBooster.
Совместимость и требования
По совместимости тут всё довольно широко, но с парой жёстких оговорок.
- Версии Minecraft: от 1.12.2 до 1.21.x включительно, плюс свежие снапшотные ветки.
- Загрузчики: Fabric, Forge, NeoForge и Quilt - мод доступен под все четыре.
- Работает только на клиенте. Ставить его на сервер бессмысленно - с версии 1.1.1 серверная часть переехала в отдельный мод NumFlux, про который ниже.
- Совместим с Sodium и Embeddium, а также с Iris и шейдерами. В релизе 1.3.1 дополнительно пофиксили краши с Sodium 0.8+ и Satin-API.
- Зависимости: для отдельных сборок нужны Fabric API и библиотека ToadLib - учтите при установке.
- VulkanMod несовместим. Логично: GPUBooster целиком построен вокруг OpenGL, а VulkanMod заменяет весь графический API. Ставить их вместе бессмысленно и опасно для стабильности.
Важно про OpenGL. Если ваша видеокарта не поддерживает OpenGL 4.5 или новее, часть функций будет недоступна. На любом более-менее современном GPU (даже встройках последних лет) проблем не будет, а вот на совсем древнем железе мод сработает в урезанном режиме.
И ещё один подвох, про который многие забывают: режим RBO несовместим с шейдерпаками. Если вы играете с шейдерами через Iris - либо отключайте RBO в конфиге, либо оставляйте дефолт. Базовая связка с шейдерами при этом работает нормально, речь именно про фичу RBO.
Настройки и политика багов
У мода есть конфиг, где можно отключать отдельные оптимизации. И вот почему это важно: автор честно делит проблемы на два типа. "Bug/Compat" - это настоящие баги и конфликты модов, они чинятся в приоритетном порядке. А "Inaccuracy" - это мелкие неточности в рендере, которые решаются простым отключением соответствующей опции в конфиге, и срочности тут никакой.
Практический совет: если после установки заметили визуальные артефакты - не спешите сносить мод целиком. Зайдите в конфиг и попробуйте по одной отключать опции, обычно виновник находится быстро. В релизе 1.2.5 для 1.21.11, к слову, добавили умный кэш типов рендера, который как раз снижает количество таких мелких косяков.
Перевод интерфейса есть на английский и русский языки, ранее были также немецкая и украинская локализации - так что с настройкой у русскоязычных игроков проблем не возникнет.
А что с сервером?
Сам GPUBooster - история строго клиентская. Если вы держите сервер и хотите такой же подход к оптимизации, автор вынес серверную часть в отдельный проект NumFlux. Он ставится только на сервер и занимается оптимизацией уже с той стороны.
И если вы как раз думаете, где поднять свой сервер Майнкрафт с такой сборкой - проще всего арендовать сервер на BungeeHost: мод ставится в пару кликов, а связка NumFlux на сервере и GPUBooster у игроков в клиенте даёт комплексный эффект. Для кооперативной игры с друзьями это, пожалуй, самый безболезненный вариант запустить сервер Minecraft без танцев с настройкой своего железа.
Другие моды автора
Если подход разработчика вам зашёл, у него есть и другие проекты:
- NumFlux - серверные оптимизации, упоминал выше.
- H+ - новый контент и усложнение игрового процесса.
- EnlightenedBlockEntities/EBEReforged - форк Enhanced Block Entities, правда, уже заброшен.
- Palladium - ещё один оптимизационный мод.
- MovieMaker - контентный проект.
Стоит ли ставить
Коротко: да, если вы собираете оптимизационную сборку на Fabric, Forge, NeoForge или Quilt. Мод распространяется под GPL-3.0, у него уже миллионы загрузок, и он отлично вписывается в стандартный набор "Sodium + Iris + шейдеры". Прирост в ~9% на чистой игре - это то, что сложно получить одним модом без жертв по графике.
Единственные, кому он не нужен: игроки на VulkanMod (несовместимы по определению) и владельцы совсем древних видеокарт без OpenGL 4.5 - там половина фич просто не заведётся. Остальным - качайте GPUBooster, закидывайте в папку mods рядом с Содиумом, и пусть ваши кадры в секунду скажут спасибо.
Скриншоты GPUBooster
Часто задаваемые вопросы
Совместимость
Зависимости
Создатели
Детали
Версии мода GPUBooster
Доступно 46 версий. Сначала показаны самые популярные и самые свежие.