10个版本

0.3.1 2022年1月6日
0.3.0 2021年9月10日
0.2.3 2021年4月24日
0.2.2 2021年3月26日
0.1.0 2020年11月20日

#987 in 图形API

Download history 1/week @ 2024-03-16 12/week @ 2024-03-30 2/week @ 2024-04-06

每月下载量 58
rokol中使用

MIT许可证

525KB
10K SLoC

Rust 9K SLoC // 0.0% comments Python 1.5K SLoC // 0.2% comments C 23 SLoC // 0.3% comments Objective-C 16 SLoC // 0.3% comments

rokol-ffi

Rust对Sokol的FFI,仅用于Rokol

使用bindgen生成,并实现了Default特质的接口。

状态

仅在macOS上测试

支持的头文件

rokol_ffi编译以下所有头文件

  • sokol_app.h
  • sokol_gfx.h
  • sokol_glue.h

支持的后端

GlCore33、Metal和D3D9。 rokol-ffi不支持WebGPU后端 (直到我需要它)。

指定渲染器

使用功能标志切换图形后端: cargo run --features=glcore33

下游包的条件编译

rokol_ffi/build.rsDEP_SOKOL_GFX输出到在它们的Cargo.toml中列出rokol_ffi的包的build.rs中。

参考构建脚本 - Cargo手册 #链接清单键


lib.rs:

Rokol (API) 的Rust对Sokol头文件的FFI

最后更新:2020年12月3日 (提交)。Sokol头文件声明的差异可以在GitHub上查看。

实现默认

使用 bindgen 生成,实现了 Default 特性(Bindgen::derive_default(true))。

注意:Sokol 认为 未初始化的结构体处于默认状态。这意味着 Default::default 确保了其意义!

FFI 到 sokol_glue.h

依赖

~0–2MB
~37K SLoC