所以,我有这样的事情:
physicsWorld=new PhysicsWorld(new Vector2(10, 10), false);
Rectangle test = new Rectangle(100, 100, 50, 50, vbom);
FixtureDef wallFixtureDef = PhysicsFactory.createFixtureDef(0, 0f, 0.5f);
Body body = PhysicsFactory.createBoxBody(physicsWorld, test, BodyType.DynamicBody, wallFixtureDef);
physicsWorld.registerPhysicsConnector(new PhysicsConnector(test, body));
body.setLinearVelocity(100, 100);
registerUpdateHandler(physicsWorld);
attachChild(test);
它不起作用,身体不动。 有什么想法吗?
GLES 2 AnchorCenter
答案 0 :(得分:0)
你的物理世界注册到你的游戏场景。 它工作我的设备和身体正在移动。
PhysicsWorld physicsWorld = new PhysicsWorld(new Vector2(10, 10), false);
Rectangle test = new Rectangle(100, 100, 50, 50,
getVertexBufferObjectManager());
FixtureDef wallFixtureDef = PhysicsFactory
.createFixtureDef(0, 0f, 0.5f);
Body body = PhysicsFactory.createBoxBody(physicsWorld, test,
BodyType.DynamicBody, wallFixtureDef);
physicsWorld.registerPhysicsConnector(new PhysicsConnector(test, body));
body.setLinearVelocity(100, 100);
yourScene.registerUpdateHandler(physicsWorld);
yourScene.attachChild(test);
答案 1 :(得分:0)
根据我的观点,您必须在代码中应用两项更改。
按以下方式更改物理世界构造函数值
mPhysicsWorld = new PhysicsWorld(new Vector2(0,SensorManager.GRAVITY_EARTH),false);
按照以下方式更改PhysicsConnector
new PhysicsConnector(test,body,true,true);
我认为第二个建议对您有用,因为在您的代码中,我看到您不会更新对象的位置和旋转。