Awesome
<h1 align="center"> vke.net <br> Vulkan Engine for .NET <br> <p align="center"> <a href="https://www.nuget.org/packages/vke"><img src="https://buildstats.info/nuget/vke"></a> <a href="https://travis-ci.org/jpbruyere/vke.net"> <img src="https://img.shields.io/travis/jpbruyere/vke.net.svg?&logo=travis&logoColor=white"> </a> <a href="https://ci.appveyor.com/project/jpbruyere/vke-net"> <img src="https://img.shields.io/appveyor/ci/jpbruyere/vke-net?label=Windows&logo=appveyor&logoColor=lightgrey"> </a> <a href="https://www.paypal.me/GrandTetraSoftware"> <img src="https://img.shields.io/badge/Donate-PayPal-green.svg"> </a> <a href="https://gitter.im/CSharpRapidOpenWidgets?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"> <img src="https://badges.gitter.im/CSharpRapidOpenWidgets.svg"> </a> </p> </h1> <p align="center"> <a href="https://github.com/jpbruyere/vke.net/blob/master/samples/pbr/screenshot.png"> <kbd><img src="https://raw.githubusercontent.com/jpbruyere/vke.net/master/samples/pbr/screenshot.png" height="300"></kbd> </a> <br>adaptation of the gltf PBR sample from Sacha Willems</br> </p>Presentation
vke.net
(vulkan engine for .net) is a vulkan abstraction layer writen in c# composed of high level classes encapsulating vulkan objects and commands with IDispose
model and reference counting.
vke.net
use autogenerated vk.net library for low level binding to vulkan and GLFW handles the default windowing system.
vke.net
aims to provide a simple api for all common vulkan tasks, ideal to quickly prototype vulkan applications, but fits also the needs to build complete application or game.
To see vke.net
in action check vkChess.net, and to start a vulkan application with an integrated GUI, start with VkCrowWindow.
Use the download_datas.sh
script for downloading sample's datas.
vke is in beta development stage.
Requirements
- GLFW if you use the
VkWindow
class. - Vulkan Sdk, glslc has to be in the path.
- on linux, dlib is required.
Building
SPirVTasks is an addon to the net build system to allow compilation of shaders during msbuild process. It has to be built first:
dotnet build /p:Configuration=ReleaseSpirVTasks
Then normal compilation:
dotnet build
vke.net
supports netcoreapp3.1
.
Tutorials
Title | Screen shots |
---|---|
ClearScreen | |
Triangle | |
Textured |
Contributing
See the contribution guide for more information.
Join us on gitter for any question.
Features
- physicaly based rendering, direct and deferred
- glTF 2.0
- ktx image loading.
- Memory pools