2012-08-06 3 views
0

은 매우 쉬운 일이다. Box2D (AS3) 충돌시 오브젝트 흡수력을 시뮬레이트 하시겠습니까? 내가이 기대

나는 화면의 한쪽에 그물에 노크 할 수있는 떨어지는 콩 가방을 시뮬레이션하기 위해 노력하고있어.

I가 가지고 마우스에게 각 이동 손이나 배트를 나타내는 동적 신체 및 원 형상. 빈 주머니를 나타내는 떨어지는 동적 몸체 모양. 그물의 열린 정상을 나타내는 두 개의 작은 원 모양.

// move hand 
deltaX = (handBody.GetPosition().x * scaleF) - mouseX; 
deltaY = (handBody.GetPosition().y * scaleF) - mouseY; 
var newVel:b2Vec2 = new b2Vec2(-deltaX, -deltaY); 
handBody.SetLinearVelocity(newVel); 

내 문제는 내가 흡수하기 위해 빈 가방을 좋아하는 것 :이 힘이 콩 주머니에 적용 할 수 있도록

, 나는 각 단계에 선 속도를 업데이트 손/방망이를 이동하려면 일부 노크의 초기 힘. 순간적으로 떨어지는 가방이 빠른 슬쩍으로 화면 밖으로 떨어지는 것은 너무 쉽습니다. 마찰, 댐핑 또는 다른 설정을 사용하는 간단한 방법이 있습니까? 시도했지만 효과를 생성 할 수 없습니다. 아무도 내가 방망이/손의 업데이트 된 위치에 영향을주지 않고 수동으로 충돌 력의 일부를 제거 할 수있는 방법을 제안 할 수 있습니까?

TIA, 크리스

답변

0

당신이 단지와 새로운 속도/콩 주머니 속도를 곱 수 없습니다 0.8 말하거나 무엇이든하고 이것을 완충 효과가 전화를?

그러나 제공된 코드가 이상한 것 같다, 나는 충격이나 콩 가방 타격 관련된 아무것도 볼 수 없습니다. 이것은 단지 손의 벨을 설정? 당신이 제안했듯이

+1

안녕 다니엘, 난 결국 댐핑 팩터를 만들었습니다. 나는 box2d의 b2ContactListener 클래스를 확장하고 'hit'후에 가방에 새 벡터에 감쇠력을 적용했습니다. 당신의 대답에 대해 많은 감사드립니다. – SuperCat

관련 문제