.NET 9.0 使用 Vulkan API 编写跨平台图形应用

前言

大家好,这次我来分享一下我自己实现的一个 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
.NET 9.0 使用 Vulkan API 编写跨平台图形应用 .NET 9.0 使用 Vulkan API 编写跨平台图形应用 .NET 9.0 使用 Vulkan API 编写跨平台图形应用 .NET 9.0 使用 Vulkan API 编写跨平台图形应用
ComputeShader
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
GLTFAnimation
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
GLTFScene
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
MultiViewports
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
RayQuery
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
RayTracing
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
SDFFontTexture
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
Skia
.NET 9.0 使用 Vulkan API 编写跨平台图形应用
WPF
.NET 9.0 使用 Vulkan API 编写跨平台图形应用

项目地址

VulkanSamples

参考

发表评论

相关文章