2011-11-28 78 views
1

現在我正在使用cocos2d + Box2d在carrom遊戲中工作。我設置了world gravity(0,0) ..在z軸上做重力。這是適當的還是其他價值?cocos2d,box2d:基於硬幣的遊戲:在z軸上的重力,硬幣浮動

Coin body: 
     density = 20.0f; 
     friction = 0.4f; 
     restitution = 0.6f; 
     Shape Circle with radius - 15/PTM_RATIO 

    Striker body: 
     density = 25.0f; 
     friction = 0.6f; 
     restitution = 0.3f; 
     Shape Circle with radius - 15/PTM_RATIO 

輸出不順暢,當我申請ApplyLinearImpulse(force,position);

投幣運動看起來就像漂浮在空中....花費太多時間停止:硬幣撞擊體

我設置下面的值...

硬幣和射手的哪個價值使它看起來像真正的carom?

回答

2

你遇到的問題是摩擦只適用於兩個物體碰撞時。由於硬幣剛剛漂浮在空中,因此不會有任何阻力。爲了解決這個問題,並應用空氣阻力的一個非常粗略的估計,you should set the linearDamping property of the body's definition

bodyDef.linearDamping = 0.5f; 

嘗試使用不同的值進行試驗,直到它看起來你的權利。

+0

謝謝,先生,現在工作。 – Guru

+0

由於你的建議很好,我們創建了這個卡羅姆遊戲先生。謝謝。 http://itunes.apple.com/us/app/carrom-pro/id525961441?mt=8 – Guru