前言
大家好,这次我来分享一下我自己实现的一个 Vulkan 库,这个库是用 C# 实现的,主要是为了学习 Vulkan 而写的。
在学习 Vulkan 的过程中,我主要参考 veldrid,它是一个基于 .NET 的跨平台图形库,支持 OpenGL、Vulkan、Direct3D 11 等图形 API。
我觉得这个库的设计思路很好,于是我就想自己实现一个类似的库,于是就有了这个项目。
该项目光线追踪部分的封装参考的 Evergine, 它有着非常全面的图形接口抽象,其结构与 veldrid 十分相似,目前该平台对个人免费,大家如有兴趣可以尝试。
项目依赖
- Vulkan 1.3 SDK:大家可以自行去 LunarG 官网下载最新版本 SDK,或者 百度、必应 搜索 Vulkan SDK 一般第一个链接就是。
- Visual Studio 2022
- .NET 9.0 SDK
- 支持 Vulkan 1.3 的桌面端设备。
如果要运行 Android 项目,需要安装 Android NDK 和 Android SDK,虚拟机不支持 Vulkan 1.3,需要真机 Snapdragon 8 Gen2 或更高芯片。
截图
AndroidApp | |||
---|---|---|---|
ComputeShader |
---|
GLTFAnimation |
---|
GLTFScene |
---|
MultiViewports |
---|
RayQuery |
---|
RayTracing |
---|
SDFFontTexture |
---|
Skia |
---|
WPF |
---|