4个版本 (破坏性更新)

0.4.0 2024年3月22日
0.3.0 2023年11月18日
0.2.0 2023年5月31日
0.1.1 2023年1月26日
0.1.0 2023年1月26日

#726 in 图形API

每月29次下载
用于 4 crate

MIT 许可证

2.5MB
9K SLoC

Blade Graphics

Docs Crates.io

Blade-graphics 是一个针对人体工程学和娱乐的轻量级 GPU抽象层。详情请参阅 动机常见问题解答,和 性能

示例

ray-query example particles example

平台

后端会根据宿主平台自动选择

  • Vulkan 在桌面Linux、Windows和Android上
  • Metal 在桌面macOS和iOS上
  • OpenGL ES3 在Web上
功能 Vulkan Metal GLES
compute
光线追踪

OpenGL ES

GLES也以基本级别支持。它对wasm32-unknown-unknown目标启用,也可以在本地强制启用

RUSTFLAGS="--cfg gles" CARGO_TARGET_DIR=./target-gl cargo test

此路径可以通过Angle库在所有平台上激活。例如,在macOS上,只需将libEGL.dyliblibGLESv2.dylib放置在工作目录中即可。

WebGL2

以下命令将启动一个提供bunnymark示例的Web服务器

cargo run-wasm --example bunnymark

Vulkan可移植性

首先,请确保从Vulkan SDK加载环境

cd /opt/VulkanSDK && source setup-env.sh

可以使用"vulkan"配置标志强制使用Vulkan后端。以下示例调用将生成一个将vulkan(可移植性)构建到另一个目标文件夹的调用

RUSTFLAGS="--cfg vulkan" CARGO_TARGET_DIR=./target-vk cargo test

依赖关系

~5–18MB
~246K SLoC