Перейти к содержимому

CrankShaft

Неофициальный порт Flywheel

FabricNeoForgeForge
Загрузчики
FabricNeoForgeForge
Скачиваний на Modrinth
7 тыс.
Подписчиков на Modrinth
3
версии
34
Обновлён
21 октября 202621 окт.
Опубликован
в 2026
Это библиотека — она нужна другим модам и сама ничего не добавляет в игру

Коротко о моде

Библиотека — нужна другим модам
Работает на Fabric, NeoForge и Forge
Для Minecraft 1.12.2, 26.2–26.3
Ставится только в игру; на сервер ставить не нужно
Последняя версия — 1.2.0+mc1.12.2 от 21 октября 2026
Лицензия MIT — бесплатно
Где нужен
В игреобязателенНа серверене нужен

Ставится только в игру; на сервер ставить не нужно

Версии игры1.12.2, 26.2–26.3
Описание переведено автоматическиПоказать оригинал (EN)

Требует Create & CrankShaft Bridge для работы с Create Fly и Create Adapted

О моде

CrankShaft — это неофициальный порт Flywheel на Minecraft 26.2, продолжающий работу Jozufozu и команды Engine-Room, а также собственный бэкпорт CrankShaft на 1.12.2. Работает на NeoForge и Fabric. Поддержка шейдерпаков Iris — это адаптация Colorwheel: контракт шейдерпаков Colorwheel и wavelet OIT, перестроенные на рендерере CrankShaft. Мод не связан с Flywheel, Colorwheel или их мейнтейнерами, не одобрен и не поддерживается ими. Баги в CrankShaft — это баги CrankShaft, а не их — пожалуйста, сообщайте о них здесь.

Вместе с CrankShaft поставляется Vanillate — аналог Vanillin для 26.2: инстансный рендеринг ванильных сущностей и блочных сущностей через Flywheel. Он встроен в jar CrankShaft и по умолчанию отключён — пока вы его не включите, он ничего не регистрирует, и ванильный рендеринг работает как обычно. Включите его через "enabled": true в config/vanillin.json (Fabric) или enabled = true в config/vanillin-client.toml (NeoForge). После этого отдельные сущности и блочные сущности можно включать или отключать для каждой записи в том же файле.

Возможности

  • OpenGL и Vulkan. Нативные бэкенды для обоих графических API Minecraft 26.2, выбираются автоматически.
  • Шейдерпаки Iris. Инстансная графика рендерится через собственные программы активного шейдерпака, включая его проход теней, вместо того чтобы отключаться.
  • Order-independent transparency (OIT). Перекрывающиеся полупрозрачные инстансы смешиваются корректно без сортировки. Доступно пять методов; см. OIT.
  • Интеграция с ландшафтом. Полупрозрачный ландшафт чанков по умолчанию участвует в том же OIT, что и инстансы. С Sodium CrankShaft также может отсекать и отрисовывать непрозрачный ландшафт на GPU; см. Ландшафт.

Требования

  • Minecraft 26.2 с NeoForge или Fabric (+ Fabric API) и Java 25+.
  • Опционально: Sodium 0.9.2 или новее, но ниже 0.10. Нужен для режимов ландшафта opaque/full и бэкендов с mesh-шейдерами.
  • Опционально: Iris для шейдерпаков (собран против 1.11.4). Требует OpenGL.

Бэкенды

CrankShaft выбирает лучший поддерживаемый бэкенд для вашего железа. /flywheel backend показывает или меняет его.

БэкендAPIВыбирается по умолчаниюПримечания
flywheel:vk_indirectVulkanДаGPU-отсечение + indirect-отрисовка.
flywheel:vk_mesh_shaderVulkanНетMesh-шейдеры (VK_EXT_mesh_shader). Требует Sodium.
flywheel:indirectOpenGLДа, кроме GPU IntelGPU-отсечение + indirect-отрисовка.
flywheel:gl_mesh_shaderOpenGLНетMesh-шейдеры, только NVIDIA (GL_NV_mesh_shader). Требует Sodium.
flywheel:instancingOpenGLНа GPU Intel; запасной вариантИнстансная отрисовка без GPU-отсечения.
flywheel:iris_indirect, flywheel:iris_instancingOpenGLПока активен шейдерпакОтрисовка через программы шейдерпака; см. Iris.
flywheel:off—НетОтключает рендеринг CrankShaft; ваниль рисует всё сама.

Если запрошенный бэкенд не поддерживается, CrankShaft переключается на следующий поддерживаемый. Пока активен шейдерпак, выбор нативного бэкенда OpenGL выбирает его аналог iris_.

Vulkan

Minecraft 26.2 может рендерить через Vulkan: Options → Video Settings → Graphics API → Vulkan, затем перезапустите игру. CrankShaft определяет рендерер Vulkan и переключается на свои бэкенды Vulkan; никаких настроек CrankShaft не требуется.

На NeoForge также установите earlyWindowControl = false в config/fml.toml. Экран загрузки NeoForge работает только на OpenGL, и без этого изменения игра не запустится на Vulkan.

Функции рендеринга одинаковы на обоих API; только поддержка шейдерпаков требует OpenGL.

Шейдерпаки Iris

С Iris и включённым шейдерпаком CrankShaft переключается на свои бэкенды iris_ и рендерит инстансы через собственные программы пака, включая тени. Ничего настраивать не нужно.

  • Паки, реализующие контракт шейдерпаков Colorwheel (программы clrwl_ и colorwheel.properties), используют его напрямую, включая его OIT там, где пак его включает.
  • Встроенные адаптеры восполняют пробелы в конкретных паках (см. ниже). Адаптер проверяет фактические исходники шейдеров пака, а не его имя файла или версию. Если пак изменился, адаптер пропускается целиком, и пак возвращается к общему пути.
  • Другие паки рендерят инстансы через свои стандартные программы, без OIT.
  • Под шейдерпаком OIT следует собственным настройкам пака; /flywheel oit mode применяется только к бэкендам без Iris.

Протестированные шейдерпаки:

ШейдерпакВерсияКонтракт ColorwheelВстроенный адаптерOIT
Complementary Reimaginedr5.9.3ДаДаДа
Complementary Unboundr5.9.3ДаДаДа
SolasV3.7bДаДаДа
BSLv10.1.5НетДаДа
MakeUp UltraFast9.5eНетДаДа
SundialAlpha Build 2026-08-28ДаДаПо желанию, -Dcrankshaft.iris.oit.deferred=true ниже
IterationRPAlpha 0.8.28ДаДаНет (пак отключает его)
Blissv2.1.2 (Chocapic13 edit)НетНетНет
Sildur's Vibrant Shadersv2.01 ExtremeНетНетНет
Photonv1.3bНетНетНет

Инстансы, отрисованные через пак, могут немного отличаться от того, что выдал бы собственный рендерер пака.

Экспериментальные опции, по умолчанию выключены, включаются аргументами Java в вашем лаунчере:

АргументЭффект
-Dcrankshaft.iris.terrain=trueРисует ландшафт чанков через программы ландшафта пака с GPU-отсечением. Используйте с /flywheel terrain full (или opaque) и Sodium.
-Dcrankshaft.iris.mesh=trueС аргументом выше: ландшафт на mesh-шейдерах. flywheel:iris_mesh_shader тогда выбирается на поддерживаемых GPU NVIDIA.
-Dcrankshaft.iris.mesh.direct=trueС обоими аргументами выше: непрозрачный ландшафт пропускает отсечение на task-шейдерах, снижая его накладные расходы.
-Dcrankshaft.iris.oit.deferred=trueМногослойный OIT для отложенных прозрачных объектов Sundial. Стоит значительного времени GPU и памяти.

Команды

Команды клиентские; изменённые ими настройки сохраняются в файл конфигурации. Автодополнение по Tab перечисляет все варианты.

КомандаДействие
/flywheel backendПоказать активный бэкенд.
`/flywheel backend //flywheel backend DEFAULT`Использовать конкретный бэкенд / позволить CrankShaft выбрать самому. Перезагружает рендереры.
/flywheel terrain off|translucent|opaque|fullРежим интеграции с ландшафтом; см. ниже.
/flywheel oitПоказать метод OIT, лимиты слоёв и режим погоды.
/flywheel oit mode auto|wavelet|kbuffer|mlab|abufferВыбрать метод OIT; см. ниже.
/flywheel oit layers <0-32>Лимит слоёв активного метода вставки (0 = его пресет).
/flywheel oit resetВернуть все лимиты слоёв к пресетам.
/flywheel oit exactweather true|falsetrue: дождь и снег сортируются по фрагментам относительно других полупрозрачных объектов. false (по умолчанию): погода смешивается как один слой, что гораздо дешевле во время дождя.
`/flywheel lightSmoothness `flat, tri_linear, smooth (по умолчанию) или smooth_inner_face_corrected.
/flywheel limitUpdates on|offРеже обновлять далёкие инстансы (по умолчанию включено).
/flywheel debug infoВерсия, бэкенд, настройки и количество визуалов/инстансов; полезно для баг-репортов.
/flywheel debug gpuTimer on|off|once|summaryТайминги GPU по проходам.
Порядконезависимая прозрачность
РежимМетод
auto (по умолчанию)mlab там, где GPU поддерживает fragment-shader interlock, иначе wavelet.
waveletМногопроходная вейвлет-пропускаемость Flywheel. Работает везде.
kbufferХранит первые K фрагментов, попавших в каждый пиксель (пресет 4), затем сортирует их.
mlabМногослойное альфа-смешивание: K отсортированных слоёв (пресет 8). Требует fragment-shader interlock.
abufferСписки фрагментов на пиксель с разрешением ближайших N (пресет 16). Наибольшее потребление памяти.

wavelet — всегда приближение. kbuffer, mlab и abuffer — однопроходные методы вставки и точны, пока ни у одного пикселя не больше полупрозрачных фрагментов, чем бюджет слоёв (K, или N для abuffer). После превышения бюджета kbuffer отбрасывает лишние фрагменты независимо от глубины, mlab объединяет самые дальние слои, а abuffer отбрасывает самые дальние. abuffer к тому же точен только пока не исчерпан его пул фрагментов — 8 на экранный пиксель по всему кадру. Больше слоёв сохраняет точность более глубоких стопок витражного стекла ценой более высокой нагрузки на GPU.

В OpenGL методы вставки работают на GPU-driven бэкендах (indirect, gl_mesh_shader); instancing всегда использует wavelet. Без fragment-shader interlock mlab откатывается к wavelet.

Режимы ландшафта
РежимНепрозрачный ландшафтПолупрозрачный ландшафт (вода, стекло, лёд)Требуется
offVanilla / SodiumVanilla / Sodium—
translucent (по умолчанию)Vanilla / SodiumCrankShaft OIT, смешивается с инстансамиЛюбой бэкенд, Sodium опционален
opaqueCrankShaft, GPU-culledSodiumSodium, GPU-driven бэкенд
fullCrankShaft, GPU-culledCrankShaft OIT, смешивается с инстансамиSodium, GPU-driven бэкенд

GPU-driven бэкенды — это indirect, gl_mesh_shader, vk_indirect и vk_mesh_shader. На других бэкендах или без Sodium opaque ведёт себя как off, а full — как translucent.

Настройка

Команды записывают те же файлы, которые вы можете редактировать вручную: config/crankshaft.json на Fabric, config/flywheel-client.toml на NeoForge. Настройки: backend, limitUpdates, workerThreads, useCommonPool, а в flw_backends: lightSmoothness, terrain и настройки OIT.

Частые вопросы

Как установить CrankShaft?

Установите Fabric под свою версию Minecraft, скачайте CrankShaft под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть CrankShaft?

У CrankShaft есть сборки для Minecraft 1.12.2, 26.2–26.3.

Нужен ли CrankShaft на сервере?

Ставится только в игру; на сервер ставить не нужно

Лицензия и источник
MIT Licenseможно свободно использовать и распространять с указанием автора
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее