Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

vulkan extension : which are supported by whom?

Tags:

vulkan

There is EXT, KHR or AMD or NV extensions. Maybe there are some others. I know that NV means Nvidia and that it nv extensions are unlikely supported by AMD. But what about khr ones or ext ones? Are they mandatory supported by everyone?

like image 330
Antoine Morrier Avatar asked Dec 15 '18 23:12

Antoine Morrier


1 Answers

There's a website devoted to tracking this information.

Maybe there are some others

There are lots

But what about khr ones or ext ones? Are they mandatory supported by everyone?

KHR extensions are typically things that will be folded into the specification (like how VK_KHR_external_memory became part of the core Vulkan specification in 1.1) or are things that are likely to be supported by a broad range of vendors and hardware, but not necessarily all hardware (like VK_KHR_swapchain).

KHX extensions are basically experimental versions of KHR extensions. They might become a KHR extension or get folded into the spec, but they also might change drastically before they do.

EXT extensions aren't vendor specific, but they're typically targeting some less common use case, or something more experimental. They typically won't ever become part of the specification, and they're the kind of thing you need to check for before relying on, as well as having a plan to fall back on some other mechanism if they're not supported. Sometimes EXT extensions can evolve into KHR extensions.

Vendor specific extensions are basically in the same boat as EXT extensions, but controlled by a specific vendor. They can also evolve to become KHR extensions or core specification. For instance, KHR_external_memory started out as NV_external_memory.

Are they mandatory supported by everyone?

They only thing that's mandatory what the core specification says is mandatory.

like image 135
Jherico Avatar answered Oct 11 '22 07:10

Jherico