1.构造世界 (定义重力b2Vec2 是否休眠doSleep 边界值b2AABB)
2.增加地板等刚性边界b2BodyDef 地板要增加一个带摩擦力的shape
3..position.Set(x, y);设置物体的位置 注意单位是m 定义比例,Box2D中是一米为长度单位,1m=30像素
4. .userData贴图 将自定义skin绑定到刚性物体上面,注意 默认情况下 skin的原定的中点 注意定义物体的注册点的位置
5. 密度为0的物体为禁止物体处于休眠状态
6。 /**
* 建议的 Box2D 迭代次数是 10 次。你可以按自己
的喜好去调整这个数,但要记得它是速度与质量之间的平衡。更少的迭代会增加性能并降低精度,同样
地,更多的迭代会减少性能但提高模拟质量。这是我们选择的迭代次数:
*/
public var m_iterations:int = 10;
7. public function Update(e:Event):void{
//更细世界
m_world.Step(m_timeStep, m_iterations);
// Go through body list and update sprite positions/rotations
for (var bb:b2Body = m_world.m_bodyList; bb; bb = bb.m_next){
if (bb.m_userData is Sprite){
//更新贴图 根据物体的属性
bb.m_userData.x = bb.GetPosition().x * 30;
bb.m_userData.y = bb.GetPosition().y * 30;
bb.m_userData.rotation = bb.GetAngle() * (180/Math.PI);
}
}
}