7 个版本
0.2.2 | 2022年4月10日 |
---|---|
0.2.1 | 2022年4月8日 |
0.1.7 | 2022年3月31日 |
0.1.0 | 2022年2月15日 |
#67 in #unsafe
6.5MB
7K SLoC
filament-bindings
本软件包提供了一组 unsafe 绑定 API、构建脚本和预构建二进制文件,用于 Windows、macOS、Linux 上的 Google/filament。
为什么是 unsafe
本软件包中的所有 API 都标记为 unsafe,因为 filament 的 C++ 对象不使用引用计数来跟踪资源使用情况,该库无法知道何时释放对象,您必须手动释放资源。
预构建二进制文件
由于 filament 的构建速度非常慢且需要构建环境要求,我们为常见平台和功能提供预构建二进制文件。
发布新版本时,GitHub Action 会自动运行预构建任务,并将所有预构建二进制文件保存在 filament-binaries/releases。
filament-binding
构建脚本将首先尝试从 GitHub 下载预构建二进制文件,并跳过完整源代码构建。
我们目前提供 Windows
、Linux
、macOS
的预构建二进制包,并为所有平台启用 OpenGL
、Vulkan
后端,为 macOS 启用 Metal
后端。对于 Android、iOS 和 WASM
等其他平台,支持计划中但尚未提供。
构建要求
- cmake
- clang
- ninja
- libglu1-mesa-dev
- libxi-dev
- libc++-dev
- libc++abi-dev
示例
triangle
渲染一个三角形并将图像保存到 ppm 文件中
winit
使用 winit
与 filament。
运行 cargo run --example winit
依赖关系
~1.5–5MB
~99K SLoC