Skip to content
/ TdVk Public
forked from mellinoe/vk

Cross-platform low-level bindings for the Vulkan 1.3 graphics and compute API and its extensions.

License

Notifications You must be signed in to change notification settings

Tacodiva/TdVk

This branch is 22 commits ahead of mellinoe/vk:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

28d0c26 · Jan 21, 2024
Feb 19, 2023
Oct 8, 2023
Jan 21, 2024
Oct 13, 2023
Oct 13, 2023
Jun 23, 2018
Feb 19, 2023
Mar 21, 2017
Jun 21, 2023
Feb 19, 2023
Feb 19, 2023
Sep 29, 2023
Feb 19, 2023
Sep 29, 2023

Repository files navigation

TdVk Vulkan Bindings for .NET

This repository contains cross-platform low-level bindings for the Vulkan graphics and compute API and its extensions. It is a fork of the vk nuget package which has compatibility problems, only supports Vulkan 1.0, doesn't provide support for any Vulkan extensions, doesn't provider support for instance and device dispatch, is only built for .NET 5.0 and .NET Standard 1.4 and hasn't been updated for 2 years.

These bindings differ from many other .NET bindings in that they are low-level and unsafe. There is no attempt made to provide a higher-level abstraction on top of Vulkan. This means you must be very careful with usages of the API. On the other hand, it means that you can simply and easily translate from the many C++ examples available on the web.

Example

See here for an example of using the library. This example is following this vulkan tutorial up to the 'Drawing a triangle' chapter. As you will see, it's mostly just a directly translation from the C++ code.

Repository Structure

Vulkan

Contains the raw bindings for the Vulkan API.

Vulkan.Build

The a cake frosting project which contains the code generation logic for creating the C# bindings for Vulkan, as well as a patcher which uses Mono.Cecil to modify Vulkan.dll to call the native functions directly for performance.

About

Cross-platform low-level bindings for the Vulkan 1.3 graphics and compute API and its extensions.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%