2012-12-19 3 views
1

box2d의 바디 볼을 가속하거나 덤핑 (배속이없는)하지 않고 배구처럼 움직일 수있는 방법은 무엇입니까?움직이는 상자 2 몸통 공

이 경우 특수 수식이 필요합니까?

+0

Box2d는 중력을 시뮬레이트합니다. 'bodyDef.gravityScale' –

+0

하지만 몸의 포물선 궤적이 필요합니다. 중력의 크기가 없어도 만들 수 있습니까? – Sergozh

+0

Box2D 중력 시뮬레이션을 사용하는 것이 좋습니다. 그리고 그것은 실제로 당신의 배구가 가속하게 할 것입니다. – theJollySin

답변

1

상자 2D에 move an object with forces입니다. 충격이나 선형 힘을 가할 수 있습니다.

당신은 일을 충동을 적용 할 수

myBody->ApplyForce(force, myBody->GetWorldCenter()); 

또는 수행하여 힘 :

b2Vec force = b2Vec2(0,50); 
:

myBody->ApplyForce(force, myBody->GetWorldCenter()); 

주를 힘 이상은 당신이하고 구성 할 수있는 b2Vec입니다

이 힘은 몸을 위로 밀어 올릴뿐입니다.

당신은 당신이 0보다 구성 요소의 x와 큰 Y가있는 힘을 만들 수 있습니다 포물선 궤도를해야하는 경우 :

b2Vec force = b2Vec2(50,50); 

을 그리고 물리 엔진이 나머지를 할 것입니다.

specific position으로 이동할 수도 있지만 조언을 드리지는 못합니다.

힘에 대한 자세한 정보가 필요하면 then follow this link.

+0

그래, 나도 알아,하지만 선 속도를 사용하여 포물선 궤도를 구현해야합니다, 나는 항상 신체 공의 일정한 속도가 필요합니다. 왜 내가 충격이나 힘을 사용할 수 없는지. – Sergozh

+0

@Sergozh 당신이 이것을 원한다 -> http://www.iforce2d.net/b2dtut/constant-speed? –

+0

OK'b2Vec force = b2Vec2 (50,50); 도움을 줄 수는 있지만 플레이어와 충돌 한 후에 공을 움직여야합니다. 50, 50 벡터는 제가 원하는 것이 아닙니다. – Sergozh