我创建了一个有重力和两个物体的空间:
var napeWorld:Space=new Space(new Vec2(0,500));
var ground:FlxNapeSprite = addBox(320, 480, 640, 20, BodyType.STATIC, FlxColor.BLUE);
var hero=addBox(320,60,20,20,BodyType.DYNAMIC, FlxColor.RED);
这是我的addBox()
功能:
private function addBox(x:Float, y:Float, w:Float, h:Float,bodyType:BodyType, color:Int):FlxNapeSprite {
var sprite:FlxNapeSprite = new FlxNapeSprite(x, y);
sprite.makeGraphic(Math.ceil(w), Math.ceil(h), color);
sprite.body.type = bodyType;
sprite.body.space = napeWorld;
//sprite.createRectangularBody(w, h, bodyType);
sprite.setBodyMaterial();
add(sprite);
return sprite;
}
我在我的update()
方法中调用 step :
override public function update():Void
{
super.update();
napeWorld.step(1/30);
}
我不明白为什么我的动态形状不会落在地上......
任何想法?