2012-12-20 3 views
1

나는 자동차가 물체에 부딪 칠 때 슬로우 모션 효과를 추가하려고하는 톱 뷰 레이싱 게임을하고 있습니다. Stage.frameRate 감소했지만 게임이 지연되는 것으로 보입니다. 그리고 나는 또한 온라인 자습서 터치 내 픽셀 (참조 : http://blog.touchmypixel.com/2009/12/box2d-contactpoint-filtering/) 터치 시도했다. 그러나 나는 이해하지 못했다.box2d로 플래시 게임에서 슬로우 모션 효과를하는 방법

슬로우 모션 효과가 있습니까? 사람이이 점에서

감사와 관련,

찬드라 세 카르 나에게 도움이 될 수 있습니다

답변

1

가장 쉬운 방법은 게임에서 모두의 움직임을 증식하는 데 사용할 수있는 곳 전역 수정 속성을 가지고하는 것입니다.

예를 들어 speedModifier의 기본값은 1 일 수 있습니다.

public var speedModifier:Number = 1; 

그리고 당신은 곱셈 수식에 의해, 속도를 적용 할 때마다 :

speedModifier = 0.5; 
:

body.SetLinearVelocity(new b2Vec2(x * speedModifier, y * speedModifier)); 

모두가 당신이 게임의 절반 속도로 할 필요가이 방법은 반 수정하는 것입니다


코드를 깔끔하게 유지하고 게임의이 구성 요소를 쉽게 관리하려면 간단한 병동 방식으로 Box2D 세계 내의 모든 몸체를 반복하고 각 업데이트 단계의 상단에서 속도를 수정합니다. 뭔가의 라인을 따라 :

for each(var i:b2Body in world.GetBodyList()) 
{ 
    var currentVel:b2Vec2 = i.GetLinearVelocity(); 

    var newVel:b2Vec2 = new b2Vec2(
     currentVel.x * speedModifier, 
     currentVel.y * speedModifier 
    ); 

    i.SetLinearVelocity(newVel); 
} 
+0

감사합니다 마티 월레스의 작업 ....... :) – Chandu

관련 문제