2012-04-05 6 views
0

플레이어가 플랫폼에 닿았을 때 내 게임에서 뛰어 내리려하고 있지만, 동시에 가속도계로 좌우로 움직여야합니다. 그래서 가속도계가 값을 변경할 때 X 축에 선형 속도를 적용하면서 점프를 만들기 위해 접촉 수신기의 Y 축에 선 속도를 적용하는 방법을 고려했습니다.Box2d에서 하나의 축 (X 또는 Y)에만 속도를 적용합니까?

문제는 setLinearVelocity 메서드를 사용할 때 두 축 모두에서 Velocity 값을 설정하는 것입니다. 결과적으로 가속도계가 Y 축의 속도 값을 변경하기 때문에 플레이어가 점프하지 않습니다.

어떻게해야할까요?

답변

2
b2Vec2 v = body->GetLinearVelocity(); 
v.x = ...; 
body->SetLinearVelocity(v); 
+0

나는 비슷한 것을했다 : Vector2 v = new Vecto2 (body.getLinearVelocity(). x, newYVelocityFloat); – Lokiare