Язык

VulkanCompat

VulkanCompat

Modrinth

VulkanCompat is a Fabric mod that lets Minecraft Vulkan run on older GPUs without dynamic rendering support

945 загрузок 6 подписчиков обновлено 57m ago
последняя v1.2-mc26.3 Modrinth
Fabric 26.2 – 26.3 OptimizationUtility

VulkanCompat

A client-side Fabric mod that makes Minecraft's Vulkan renderer run on older GPUs and drivers that do not support VK_KHR_dynamic_rendering.

Why?

Minecraft's Vulkan renderer relies on the VK_KHR_dynamic_rendering extension for drawing. Many older GPUs and drivers (especially on Linux or older Windows drivers) do not support this extension.

Without this mod, the game still opens but the Vulkan renderer fails to start with an error like this:

[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 translates the renderer's dynamic rendering calls into the classic, universally supported render pass API (vkCmdBeginRenderPass / vkCmdEndRenderPass), so the Vulkan renderer works on hardware without the extension.

Features

  • Replaces vkCmdBeginRenderingKHR / vkCmdEndRenderingKHR with legacy render passes
  • Replaces vkCreateGraphicsPipelines calls that use VK_KHR_dynamic_rendering pipelines with compatible render-pass-based pipelines
  • Caches render passes and framebuffers to avoid performance loss
  • Works automatically — no configuration needed, always active
  • Uses the native vkCmdBeginRenderPass / vkCmdEndRenderPass when dynamic rendering is supported (no interference)
  • Client-side only, lightweight

How it works

When a driver does not advertise VK_KHR_dynamic_rendering:

  • The renderer is allowed to initialize without the extension (VK_KHR_dynamic_rendering is stripped from the required device extensions and features)
  • Every render pass drawn with vkCmdBeginRenderingKHR is converted into a legacy render pass + framebuffer and recorded with vkCmdBeginRenderPass
  • Pipeline compilation that references dynamic rendering structures is rewritten to use the equivalent classic render pass layout

When the driver does support dynamic rendering, the mod does nothing and the game behaves exactly as vanilla.

Compatibility

  • Works with any GPU that supports Vulkan 1.2+ (which is practically all Vulkan-capable GPUs)
  • GPU-specific drivers that lack VK_KHR_dynamic_rendering (e.g. older Intel, AMD, NVIDIA drivers; some Wine/Proton environments) benefit the most
  • Client-side only; safe for singleplayer and multiplayer
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.

Neden?

Minecraft'ın Vulkan renderer'ı çizim işlemleri için VK_KHR_dynamic_rendering eklentisine (extension) dayanır. Pek çok eski GPU ve sürücü (özellikle Linux veya eski Windows sürücüleri) bu eklentiyi desteklemez.

Bu mod olmadan oyun yine açılır ama Vulkan renderer'ı şuna benzer bir hatayla başlamaz:

[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 renderer'ın dinamik render çağrılarını her yerde desteklenen klasik render pass API'sine (vkCmdBeginRenderPass / vkCmdEndRenderPass) çevirir; böylece Vulkan renderer'ı eklentisi olmayan donanımda da çalışır.

Özellikler

  • vkCmdBeginRenderingKHR / vkCmdEndRenderingKHR çağrılarını eski tip render pass'lerle değiştirir
  • VK_KHR_dynamic_rendering kullanan vkCreateGraphicsPipelines çağrılarını uyumlu render pass tabanlı pipeline'larla değiştirir
  • Performans kaybını önlemek için render pass ve framebuffer'ları önbelleğe alır
  • Otomatik çalışır — ayar yapmanız gerekmez, her zaman aktif
  • Dinamik rendering desteklendiğinde doğal vkCmdBeginRenderPass / vkCmdEndRenderPass kullanır (müdahale etmez)
  • İstemci tarafı, hafif

Nasıl çalışır?

Sürücü VK_KHR_dynamic_rendering bildirmediğinde:

  • Renderer'ın eklenti olmadan başlatılması sağlanır (VK_KHR_dynamic_rendering, gerekli cihaz eklentileri ve özelliklerinden çıkarılır)
  • vkCmdBeginRenderingKHR ile çizilen her render pass, eski tip render pass + framebuffer'a dönüştürülüp vkCmdBeginRenderPass ile kaydedilir
  • Dinamik rendering yapılarını kullanan pipeline derlemeleri, eşdeğer klasik render pass düzenine çevrilir

Sürücü dinamik rendering destekliyorsa mod hiçbir şey yapmaz ve oyun tamamen vanilya gibi çalışır.

Uyumluluk

  • Vulkan 1.2+ destekleyen her GPU ile çalışır (yani Vulkan destekleyen tüm GPU'lar)
  • VK_KHR_dynamic_rendering eklentisi olmayan sürücüler (eski Intel, AMD, NVIDIA sürücüleri; bazı Wine/Proton ortamları) en çok fayda görür
  • İstemci tarafı; tek oyunculu ve çok oyunculuda güvenle kullanılabilir

Версии

Release
1.2-mc26.3
fabric · 26.3 · 57m ago
4
Release
1.2-mc26.3-pre-2
fabric · 26.3-pre-2 · 7d ago
31
Release
1.2-mc26.2
fabric · 26.2 · 7d ago
372
Release
1.1
fabric · 26.3-pre-2 · 9d ago
16
Release
1.0
fabric · 26.2 · 1mo ago
522

Комментарии 0

Пока нет комментариев. Будь первым, кто поделится мнением.

FAQ

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

Скачайте файл под свою версию Minecraft и загрузчик с этой страницы, затем положите .jar в папку mods (или plugins) и запустите игру.

VulkanCompat бесплатный?

VulkanCompat можно скачать бесплатно на Modgrid — мы ведём прямо к официальному источнику, без paywall и лишних установщиков.

Какие версии Minecraft поддерживает VulkanCompat?

Работает с Fabric. Поддерживаются версии 26.2–26.3. Список поддерживаемых версий и загрузчиков — в блоке загрузки на этой странице.

Скачать VulkanCompat

Файлы отдаются напрямую с первоисточника. Modgrid не хранит и не изменяет их.