我正在開發一個簡單的遊戲,就像一個磚頭破碎機。如何防止Box2d碰撞後的反彈?
現在與磚塊碰撞,玩家應該反彈,它工作正常。 但是在與硬幣碰撞時,玩家不應該反彈,硬幣應該消失。
爲此,我已經試過負歸還硬幣&改變b2MixRestitution這樣的: -
/// Restitution mixing law. Feel free to customize this.
inline float32 b2MixRestitution(float32 restitution1, float32 restitution2)
{
//return restitution1 > restitution2 ? restitution1 : restitution2;
float mixRest = 0.0f;
if(restitution1 > 0.0f && restitution2 > 0.0f)
mixRest = (restitution1>restitution2)?restitution1:restitution2;
else
mixRest = (restitution1<restitution2)?restitution1:restitution2;
return mixRest;
}
但還是球員自然反彈。
對於硬幣,賠償是-1.00f。 對於球員來說,賠償是0.50f。
這甚至有可能對Box2d中的身體產生負面恢復嗎?
我只是想知道這是可能的兩個機構像硬幣(靜態)&播放器(動態)這是爲了發生碰撞,動態的不碰撞後反彈。
我可以這樣做嗎?如果是,請指導我。
任何幫助表示讚賞......!
哦是的..! !我也以同樣的方式思考。它是否真的必須是每幀典型的?因爲我必須將大約20個硬幣精靈幀與一個玩家精靈幀進行比較...... !!請記住,這增加了我在計劃選擇器tick中每幀完成的計算。 – Tarun
@Tarun如果你仍然想使用box2d來處理硬幣玩家碰撞,只需讓它們成爲傳感器,所以沒有人會對碰撞做出反應,但你仍然會得到觸發的回調。 –