2012-07-03 2 views
0

키보드로 움직이는 동적 플랫폼이 있습니다. 벽돌 깨기 게임을 생각해보십시오. 나는 그것을 쳤던 다른 동적 인 물체를 반영하고 싶지만, 나는 그 물체가 온통 튀어 나오길 바라지 않는다. 어떻게하면됩니까?Box2D/AS3 다이내믹 플랫폼은 다른 다이나믹 오브젝트 만 반송합니다.

감사합니다. 감사.

+0

플랫폼의 질량이? 무거운 물체로 약간 밀면 재미있을 것입니다. – alxx

답변

0

플랫폼을 기구학 체로 만들 수 있습니다. 타입을 생성하기 전에 바디 정의에서 타입을 b2_kinematicBody로 설정하거나, 생성 한 후에 body-> SetType (b2_kinematicBody)를 수행하십시오.

운동기구는 힘이나 충격에 반응하지 않으므로 이동하기 위해 SetLinearVelocity를 사용해야합니다. 그들은 또한 정적 물체와 충돌하지 않기 때문에 만약 당신이 당신의 경기 영역의 측면에 정적 몸체 벽을 가지고 있다면, 플랫폼은 그 물체를 바로 통과 할 수 있습니다 - 당신은 매 시간마다 그 위치를 확인하여 플랫폼이 멈춰야합니다.

+0

그러나 키보드로 어떻게 이동합니까? 나는 플랫폼을 제어 할 필요가있다. 일반적으로 동적 객체의 경우 키를 누를 때 강제로 적용합니다. – DevITper

+0

왼쪽 키가 눌려지면 선형 속도를 설정하여 왼쪽으로 이동합니다 (예 : SetLinearVelocity (b2Vec2 (-1,0)), 오른쪽 키가 내려가면 SetLinearVelocity (b2Vec2 (1,0))를 수행합니다. 두 키 또는 키가 모두 눌려져 있지 않으면 SetLinearVelocity (b2Vec2 (0,0))를 수행하십시오. – iforce2d