forked from mirror/vulkan-zig
13
README.md
13
README.md
@@ -382,6 +382,19 @@ See [examples/build.zig](examples/build.zig) for a working example.
|
||||
|
||||
For more advanced shader compiler usage, one may consider a library such as [shader_compiler](https://github.com/Games-by-Mason/shader_compiler).
|
||||
|
||||
### Vulkan Video
|
||||
|
||||
Vulkan-zig also supports generating Vulkan Video bindings. To do this, one additionally pass `--video <video.xml>` to the generator, or pass `-Dvideo=<video.xml>` to build.zig. If using vulkan-zig via the Zig package manager, the following also works:
|
||||
```zig
|
||||
const vulkan_headers = b.dependency("vulkan_headers");
|
||||
const vulkan = b.dependency("vulkan_zig", .{
|
||||
.registry = vulkan_headers.path("registry/vk.xml"),
|
||||
.video = vulkan_headers.path("registery/video.xml"),
|
||||
}).module("vulkan-zig");
|
||||
```
|
||||
|
||||
The Vulkan Video bindings are not generated by default. In this case, the relevant definitions must be supplied by the user. See [platform types](#platform-types) for how this is done.
|
||||
|
||||
## Limitations
|
||||
|
||||
* vulkan-zig has as of yet no functionality for selecting feature levels and extensions when generating bindings. This is because when an extension is promoted to Vulkan core, its fields and commands are renamed to lose the extensions author tag (for example, VkSemaphoreWaitFlagsKHR was renamed to VkSemaphoreWaitFlags when it was promoted from an extension to Vulkan 1.2 core). This leads to inconsistencies when only items from up to a certain feature level is included, as these promoted items then need to re-gain a tag.
|
||||
|
||||
Reference in New Issue
Block a user