Skip to content
Box2D is a popular rigid-body 2D physics engine
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
box2D changed B2Fixture SetUserData to setUserData Apr 16, 2019
samples/TestBed Add Box2D TestBed (thanks @justnajm) Jan 11, 2015
.gitignore Add Box2D TestBed (thanks @justnajm) Jan 11, 2015 Update Jan 1, 2018 Readme syntax highlighting Feb 12, 2017
haxelib.json Update to 1.2.3 Jan 12, 2015
include.xml Add Box2D TestBed (thanks @justnajm) Jan 11, 2015

MIT License Haxelib Version


The Box2D rigid-body 2D physics engine, ported to Haxe from the Box2DFlash port by Boris the Brave.

The syntax has been updated to follow the standard Haxe convention, for example:


var world:b2World = new b2World (new b2Vec2 (0, 10.0), true);
var worldScale:int = 30;
var body:b2BodyDef = new b2BodyDef ();
body.position.Set (250 / worldScale, 200 / worldScale);
body.type = b2Body.b2_dynamicBody;
var circle:b2CircleShape = new b2CircleShape (10 / worldScale);
var fixture:b2FixtureDef = new b2FixtureDef ();
fixture.shape = circle;
player = world.CreateBody (body);
player.CreateFixture (fixture);

The above ActionScript code would be written like this in Haxe:


var world = new B2World (new B2Vec2 (0, 10.0), true);
var worldScale = 30;
var body = new B2BodyDef ();
body.position.set (250 / worldScale, 200 / worldScale);
body.type = DYNAMIC_BODY;
var circle = new B2CircleShape (10 / worldScale);
var fixture = new B2FixtureDef ();
fixture.shape = circle;
player = world.createBody (body);
player.createFixture (fixture);


You can easily install Box2D using haxelib:

haxelib install box2d

To add it to a Lime or OpenFL project, add this to your project file:

<haxelib name="box2d" />

Development Builds

Clone the Box2D repository:

git clone

Tell haxelib where your development copy of Box2D is installed:

haxelib dev box2d box2d

To return to release builds:

haxelib dev box2d
You can’t perform that action at this time.