5 个版本
0.2.2 | 2021年9月24日 |
---|---|
0.2.1 | 2021年9月24日 |
0.2.0 | 2021年9月24日 |
0.1.1 | 2021年9月24日 |
0.1.0 | 2021年9月24日 |
406 in 模拟
12KB
188 行
Appl
描述
Appl 是一个提供对 Rapier 库抽象的库。Appl 的创建是由于缺乏适合初学者使用的物理引擎。
Appl 的主要目的是简单易用。
示例
use appl::*;
fn main() {
// Initialize Appl World
let mut appl = ApplWorld::new(Vect2 { x: 0.0, y: 9.81 }, 50.0);
// Create ground rigid body
let ground = appl.add_rigid_body(
BodyType::Static,
0.3,
BodyShape::Cuboid {
width: 64.0,
height: 32.0,
},
0.3,
Vect2 { x: 0.0, y: 320.0 }
);
// Create box1 rigid body
let box1 = appl.add_rigid_body(
BodyType::Dynamic,
0.3,
BodyShape::Cuboid {
width: 32.0,
height: 32.0,
},
0.3,
Vect2 { x: 0.0, y: 0.0 }
);
for _ in 0..200 {
// Update the world
appl.step();
// Prints box1 position
let box1_pos = appl.get_rigid_body_pos(box1);
println("{}, {}", box1_pos.x, box1_pos.y);
}
}
如何贡献
任何 pull request 都会受到欢迎和赞赏!
如果您有任何问题或疑问,请提交 issue,我会尽力帮助您。
项目状态
此项目处于非常非常早期阶段,目前仅支持 2D。
许可证
依赖项
~7.5MB
~161K SLoC