8 releases (breaking)

Uses old Rust 2015

0.8.0 Dec 29, 2015
0.7.0 Dec 22, 2015
0.6.0 Dec 15, 2015
0.5.0 Dec 13, 2015
0.1.0 Nov 15, 2015

#4 in #box2d

MIT license

600KB
16K SLoC

C++ 15K SLoC // 0.1% comments Rust 1K SLoC // 0.0% comments GNU Style Assembly 387 SLoC

LiquidFun Rust

Rust bindings for LiquidFun.

  • Model LiquidFun C++ API as closely as possible in idiomatic Rust.
  • Documentation for C++ API should be usable for Rust API.
  • Document places where Rust API varries from C++ API.

Documentation

LiquidFun Programmer's Guide

LiquidFun C++ API Documentation

Cargo Crate

Usage

First, add the following to your Cargo.toml:

[dependencies]
liquidfun = "*"

Next, add this to your crate root:

extern crate liquidfun;

Example

extern crate liquidfun;

use liquidfun::box2d::common::math::*;
use liquidfun::box2d::dynamics::world::*;

#[test]
fn hello_world() {

	// Define the gravity vector.
	let gravity = Vec2::new(0.0, -10.0);

	// Construct a world object, which will hold and simulate the rigid bodies.
	let mut world = World::new(&gravity);
	assert_eq!(gravity, world.get_gravity());

}

Status

The LiquidFun Hello World example compiles and runs. More bindings will be added as needed by projects that depend on LiquidFun Rust.

Thank You

Erin Catto for Box2D

Google for LiquidFun

Nicolas Silva for box2d.rs

Dependencies