2011-10-13 11 views
8
के साथ दुनिया नहीं बना सकता

मेरे परियोजना Cocos2d Box2D टेम्पलेट के रूप में जन्म लिया और मैं समस्याएं आ रही हैं, जैसे ही मैं एक ऐसी दुनिया बनाने की कोशिश की है:Xcode: Cocos2d: Box2D

world = new b2World(gravity,doSleep); 

त्रुटि देता है: नहीं 'बी 2 वर्ल्ड' के आरंभ के लिए मिलान करने वाला कन्स्ट्रक्टर।

फ़ाइल है। एमएम, मुझे लगता है कि पुस्तकालय लिंकिंग के बारे में कुछ समस्या है? यदि ऐसा है तो मैं xCode 4 का उपयोग कर रहा हूं, मैं कैसे जांच सकता हूं कि lib ठीक से जुड़ा हुआ है?

धन्यवाद।

+0

आप किस cocos2d संस्करण का उपयोग कर रहे हैं? यदि यह cocos2d 2.0 अल्फा है तो उसे एक अद्यतन "cocos2d box2d" प्रोजेक्ट टेम्पलेट के साथ आना चाहिए। – LearnCocos2D

उत्तर

25

आप Box2D v2.2 या नए का उपयोग कर रहे हैं। b2World constructor अब दो तर्क नहीं लेता है, केवल एक (गुरुत्वाकर्षण)। आप doSleep अलग से सेट करने के लिए है:

world = new b2World(gravity); 
world->SetAllowSleeping(doSleep); 

यह v2.2.x. को v2.1.x केवल परिवर्तन आप Box2D से संक्रमण के लिए करने की आवश्यकता होगी नहीं होगा Kobold2D में एक बॉक्सिंग 2 डी 2.2.1 नमूना प्रोजेक्ट है, भले ही आप कोबॉल्ड 2 डी का उपयोग न करें, आप बॉक्स 2 डी मूलभूत के लिए अद्यतन स्रोत कोड प्राप्त कर सकते हैं। विशेष रूप से GLESDebugDraw क्लास और एकाधिक आकृतियों का उपयोग करके शरीर के साथ स्क्रीन बाउंडिंग बॉक्स कैसे सेट करें।

+0

बहुत धन्यवाद :) – FBryant87

+0

धन्यवाद स्टीफन। ऐसा लगता है कि Box2D आधिकारिक संदर्भ अद्यतन याद करता है। http://box2d.org/manual.pdf पृष्ठ 8 में अभी भी दुनिया बनाने का पुराना तरीका है। बीटीडब्ल्यू, आपने Cocos2D प्रश्नों के लिए एक बहुत अच्छा "श्रोता बंदरगाह" सेट किया है :)। –

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