4个版本
0.0.4 | 2023年5月12日 |
---|---|
0.0.3 | 2022年1月13日 |
0.0.2 | 2021年12月31日 |
0.0.1 | 2020年11月20日 |
#568 in 游戏开发
每月 32 次下载
740KB
18K SLoC
box2d-rs
Box2D的Rust本地移植。
最小Rust版本:1.56.0(dev-dependecies为1.61)
在移植过程中,我追求以下目标
- 保持文件系统结构不变,以便于后续更新
- 保留所有标识符名称(除大小写转换外)和代码顺序(除一些特定情况外)
- 将所有新代码存储在单独的文件中
- 没有不安全的代码
待办事项
- 将注释从doxygen转换为rustdoc
- 修复一些注释
已知差异
- 将dump()函数替换为
serde 库(可选依赖项) - 将注释从doxygen转换为rustdoc
- 测试平台UI中添加了两个用于序列化/反序列化的额外按钮(仅在
serde_support
功能下可用)。序列化数据在serialize_test
目录中可用 - 将query/raycast回调类替换为闭包
用法
将以下内容添加到您的Cargo.toml
[dependencies]
box2d-rs = "0.0.4"
如果您想使用serde序列化/反序列化世界
[dependencies]
box2d-rs = { version = "0.0.4", features = ["serde_support"] }
从源代码构建并运行测试平台
以调试模式构建并运行测试平台
# At the reposity root
cargo build --examples --tests
cargo run --example testbed
在具有serde_support
的调试模式下
cargo build --examples --tests --features serde_support
cargo run --example testbed --features serde_support
带有serde_support
的发布版本
cargo build --examples --tests --release --features serde_support
cargo run --example testbed --release --features serde_support
运行测试
cargo test --features serde_support
包功能
可选地,可以启用以下依赖项
serde_support
通过serde
包启用世界的序列化/反序列化