2011-03-21 9 views
9

मैं box2d के साथ प्रयोग कर रहा हूं। मैं एक समस्या लोगों के रूप में चिपचिपा दीवारोंमैं बॉक्स 2 डी में दीवारों पर चिपकने से गेंद को कैसे रोक सकता हूं?

मैं एक गेंद और एक पैडल

मैं सभी बुनियादी सिफारिश की तराजू मैं मिल सकता है, 10 मी दुनिया उपयोग कर रहा हूँ, 1m गेंद

है का वर्णन है लगता है गेंद निम्नलिखित गुण है:

shape: circle (.5f radius) 
size: 1.0f 
density: 1.0f 
restitution: 1.0f 
friction: 0.0f 

गेंद को स्थानांतरित करने के लिए इस्तेमाल चप्पू 1.5m, यह निम्नलिखित गुण है: आकार:

+०१२३५१६४१०
circle (.75f radius) 
size: 1.5f 
density: 10.0f 
restitution: 0.1f 
friction: 0.0f 

जैसा कि आप देखते हैं कि घर्षण सभी वस्तुओं के लिए 0 है।

गेंद लगातार एक दीवार के साथ रोलिंग अटक जाता है या पूरी तरह से 90 डिग्री कोनों

मैं सोच रहा था मैं एक दीवार के साथ एक टक्कर का पता लगाने और दीवार से गेंद को स्थानांतरित करने के लिए एक applyLinearImpulse को चालू कर सकते में जाम।

+11

मुझे कहना है के करीब कम करके ऐसा करें, आपके सवाल का शीर्षक तुरंत मुझे आश्चर्य है कि अगर आप एक अलास्का न्यूडिस्ट थे। – Groovetrain

उत्तर

12

आपको लोचदार टकराव के लिए न्यूनतम वेग सीमा को कम करने की आवश्यकता है।

b2Settings::b2_velocityThreshold 0.

+0

मुझे जो चाहिए वह दिखता है। इसके लिए एक समझदार मूल्य क्या है? शुरुआत में मैं इसे 0.f पर सेट करना मानता हूं यह सुनिश्चित करेगा कि यह कभी अटक न जाए, लेकिन क्या इसका प्रतिकूल प्रभाव हो सकता है? – Rob

+0

शून्य से शुरू करें और कार्य करें - 0.1 ठीक होना चाहिए। 0 केवल खराब प्रभाव होंगे यदि आप सतहों के खिलाफ वस्तुओं को आराम करने के लिए देख रहे थे - वे लगातार चिल्लाएंगे। – Martin

+0

बहुत अच्छा लगता है। आपकी सहायता के लिए बहुत धन्यवाद। – Rob

संबंधित मुद्दे