4个版本

0.0.4 2024年8月17日
0.0.3 2024年8月14日
0.0.2 2024年8月7日
0.0.1 2024年8月3日

#20 in 渲染引擎

Download history 122/week @ 2024-07-31 161/week @ 2024-08-07 247/week @ 2024-08-14

530 每月下载量

GPL-3.0-only

88KB
2K SLoC

Kiyo

build crate

什么是Kiyo?

Kiyo是一个使用ash的轻量级计算着色器引擎。

Kiyo提供了一个简单的配置接口来运行计算着色器。以下特性已实现

  • 多个连续的计算通道
  • 它们之间的共享存储图像
  • GLSL编译日志
  • 着色器热重载

对于任何反馈或请求,您非常欢迎创建问题或直接联系我!

您可以在./examples/ 和我的 玩具项目仓库 中找到示例。

着色器环境变量

这些变量可以在着色器中访问,并由Kiyo本身提供,不要覆盖这些,因为会引入错误。

  • NUM_IMAGES - 可访问的存储图像的数量。
  • WORKGROUP_SIZE - 着色器应运行的工作组大小。

构建 & 运行

确保您已安装Vulkan SDK
然后构建并运行kiyo

git clone https://github.com/angelocarly/kiyo.git
cd kiyo
cargo run --example simple-render

GPU调试

Windows & Linux

Renderdoc!

Mac

Mac仅具有XCode的Metal调试器。要使用它,您需要提供以下环境变量

VULKAN_SDK=$HOME/VulkanSDK/<version>/macOS
DYLD_FALLBACK_LIBRARY_PATH=$VULKAN_SDK/lib
VK_ICD_FILENAMES=$VULKAN_SDK/share/vulkan/icd.d/MoltenVK_icd.json
VK_LAYER_PATH=$VULKAN_SDK/share/vulkan/explicit_layer.d

然后您应该能够启动您的kiyo应用程序并捕获一个帧。
此视频很好地解释了整个过程。

依赖项

~45–60MB
~1M SLoC