VulkanCompat
VulkanCompat — это мод для Fabric, который позволяет Minecraft Vulkan работать на старых GPU без поддержки динамического рендеринга
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 5,8 тыс.
- Подписчиков на Modrinth
- 8
- версий
- 5
- Обновлён
- 16 сентября 202616 сент.
- Опубликован
- в 2026
Коротко о моде
Ставится только в игру; на сервер ставить не нужно
VulkanCompat
Клиентский мод для Fabric, который заставляет Vulkan-рендерер Minecraft работать на старых GPU и драйверах, не поддерживающих VK_KHR_dynamic_rendering.
Зачем?
Vulkan-рендерер Minecraft использует расширение VK_KHR_dynamic_rendering для отрисовки. Многие старые GPU и драйверы (особенно на Linux или старые драйверы Windows) не поддерживают это расширение.
Без этого мода игра всё равно запускается, но Vulkan-рендерер не стартует с такой ошибкой:
[Render thread/WARN]: Device [NVIDIA GeForce GT 740] does not support required extensions, missing: [VK_KHR_dynamic_rendering]
[Render thread/WARN]: Device [NVIDIA GeForce GT 740] does not have required feature [dynamicRendering]
[Render thread/ERROR]: Failed to create backend Vulkan
com.mojang.blaze3d.systems.BackendCreationException: Device missing capabilities
at knot//com.mojang.blaze3d.vulkan.VulkanBackend.throwForMissingRequrements(VulkanBackend.java:404)
at knot//com.mojang.blaze3d.vulkan.VulkanBackend.findPhysicalDevice(VulkanBackend.java:261)
at knot//com.mojang.blaze3d.vulkan.VulkanBackend.createDevice(VulkanBackend.java:149)
at knot//net.minecraft.client.Minecraft.<init>(Minecraft.java:515)
at knot//net.minecraft.client.main.Main.main(Main.java:278)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:514)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:72)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:115)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)VulkanCompat транслирует вызовы динамического рендеринга рендерера в классический, повсеместно поддерживаемый API render pass (vkCmdBeginRenderPass / vkCmdEndRenderPass), так что Vulkan-рендерер работает на железе без этого расширения.
Возможности
- Заменяет
vkCmdBeginRenderingKHR/vkCmdEndRenderingKHRна легаси render pass - Заменяет вызовы
vkCreateGraphicsPipelines, использующие пайплайныVK_KHR_dynamic_rendering, на совместимые пайплайны на основе render pass - Кэширует render pass и фреймбуферы, чтобы избежать потери производительности
- Работает автоматически — настройка не нужна, всегда активен
- Использует нативные
vkCmdBeginRenderPass/vkCmdEndRenderPass, когда динамический рендеринг поддерживается (не мешает) - Только клиентская сторона, лёгкий
Как это работает
Когда драйвер не заявляет VK_KHR_dynamic_rendering:
- Рендереру разрешается инициализироваться без этого расширения (
VK_KHR_dynamic_renderingубирается из требуемых расширений и функций устройства) - Каждый render pass, отрисованный через
vkCmdBeginRenderingKHR, преобразуется в легаси render pass + фреймбуфер и записывается черезvkCmdBeginRenderPass - Компиляция пайплайнов, ссылающихся на структуры динамического рендеринга, переписывается на эквивалентную классическую схему render pass
Когда драйвер действительно поддерживает динамический рендеринг, мод ничего не делает, и игра ведёт себя точно как ванильная.
Совместимость
- Работает с любой GPU, поддерживающей Vulkan 1.2+ (то есть практически со всеми GPU с поддержкой Vulkan)
- Больше всего выигрывают драйверы конкретных GPU без
VK_KHR_dynamic_rendering(например, старые драйверы Intel, AMD, NVIDIA; некоторые окружения Wine/Proton) - Только клиентская сторона; безопасен для одиночной игры и мультиплеера
Türkçe (Göster / Gizle)
VulkanCompat
VK_KHR_dynamic_rendering desteklemeyen eski GPU'lar ve sürücüler için Minecraft'ın Vulkan renderer'ının çalışmasını sağlayan istemci tarafı (client-side) bir Fabric modu.
Почему?
Vulkan-рендерер Minecraft опирается на расширение VK_KHR_dynamic_rendering для операций отрисовки. Многие старые GPU и драйверы (особенно на Linux или старые драйверы Windows) это расширение не поддерживают.
Без этого мода игра всё равно запустится, но Vulkan-рендерер не стартует с ошибкой вроде такой:
[Render thread/WARN]: Device [NVIDIA GeForce GT 740] does not support required extensions, missing: [VK_KHR_dynamic_rendering]
[Render thread/WARN]: Device [NVIDIA GeForce GT 740] does not have required feature [dynamicRendering]
[Render thread/ERROR]: Failed to create backend Vulkan
com.mojang.blaze3d.systems.BackendCreationException: Device missing capabilities
at knot//com.mojang.blaze3d.vulkan.VulkanBackend.throwForMissingRequrements(VulkanBackend.java:404)
at knot//com.mojang.blaze3d.vulkan.VulkanBackend.findPhysicalDevice(VulkanBackend.java:261)
at knot//com.mojang.blaze3d.vulkan.VulkanBackend.createDevice(VulkanBackend.java:149)
at knot//net.minecraft.client.Minecraft.<init>(Minecraft.java:515)
at knot//net.minecraft.client.main.Main.main(Main.java:278)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:514)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:72)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:115)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)VulkanCompat преобразует динамические вызовы отрисовки рендерера в классический API render pass (vkCmdBeginRenderPass / vkCmdEndRenderPass), поддерживаемый везде; так Vulkan-рендерер работает и на железе без этого расширения.
Возможности
- Заменяет вызовы
vkCmdBeginRenderingKHR/vkCmdEndRenderingKHRна render pass старого типа - Заменяет вызовы
vkCreateGraphicsPipelines, использующиеVK_KHR_dynamic_rendering, на совместимые pipeline на основе render pass - Кэширует render pass и framebuffer, чтобы избежать потери производительности
- Работает автоматически — настраивать ничего не нужно, всегда активен
- При поддержке динамической отрисовки использует родные
vkCmdBeginRenderPass/vkCmdEndRenderPass(не вмешивается) - Клиентский, лёгкий
Как это работает?
Когда драйвер не заявляет VK_KHR_dynamic_rendering:
- Рендерер запускается без этого расширения (
VK_KHR_dynamic_renderingисключается из требуемых расширений и возможностей устройства) - Каждый render pass, отрисованный через
vkCmdBeginRenderingKHR, преобразуется в render pass старого типа + framebuffer и записывается черезvkCmdBeginRenderPass - Компиляции pipeline, использующие структуры динамической отрисовки, переводятся в эквивалентную классическую схему render pass
Если драйвер динамическую отрисовку поддерживает, мод ничего не делает, и игра работает полностью как ванильная.
Совместимость
- Работает с любой GPU, поддерживающей Vulkan 1.2+ (то есть со всеми GPU с поддержкой Vulkan)
- Больше всего выигрывают драйверы без расширения
VK_KHR_dynamic_rendering(старые драйверы Intel, AMD, NVIDIA; некоторые окружения Wine/Proton) - Клиентский; безопасно использовать в одиночной и многопользовательской игре
Частые вопросы
Как установить VulkanCompat?
Установите Fabric под свою версию Minecraft, скачайте VulkanCompat под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть VulkanCompat?
У VulkanCompat есть сборки для Minecraft 26.2–26.3.
Нужен ли VulkanCompat на сервере?
Ставится только в игру; на сервер ставить не нужно