2008-12-05 18 views
16

मैं पाइथन में एक बहुत ही सरल 2 डी गेम विकसित करना चाहता हूं। पायगम में पाइथन में गेम डेवलपमेंट के लिए सबसे लोकप्रिय पुस्तकालय है, लेकिन मैं पहले से ही wxPython से काफी परिचित हूं और इसका उपयोग करके सहज महसूस करता हूं। मैंने इसमें Tetris clone भी लिखा है, और यह बहुत चिकना था।पिक्सम ग्राफिक्स के संदर्भ में क्या कर सकता है जो wxPython नहीं कर सकता है?

मुझे आश्चर्य है कि ग्राफिक्स ग्राफिक्स के संदर्भ में क्या प्रदान करता है (एक पल के लिए ध्वनि छोड़कर) कि wxPython नहीं कर सकता है? क्या यह wxPython की तुलना में Pygame में ग्राफिक्स करने के लिए किसी भी तरह से सरल/तेज है? क्या यह और भी क्रॉस-प्लेटफार्म है?

ऐसा लगता है कि मुझे यहां कुछ याद आ रहा है, लेकिन मुझे नहीं पता कि क्या।

उत्तर

20

ठीक है, सिद्धांत में ऐसा कुछ भी नहीं है जो आप Pygame के साथ कर सकते हैं जिसे आप wxPython के साथ नहीं कर सकते। मुद्दा यह नहीं है कि कैसे। मेरी राय में, PyGame becasue के साथ एक गेम लिखना आसान है:

  • यह तेज़ है। पायगम एसडीएल पर आधारित है जो विशेष रूप से गेम के लिए डिज़ाइन की गई सी लाइब्रेरी है, इसे गति के साथ विकसित किया गया है। जब आप गेम विकसित करते हैं, तो आपको गति की आवश्यकता होती है।

  • एक गेम लाइब्रेरी है, एक सामान्य उद्देश्य कैनवास नहीं है, इसमें कक्षाएं और कार्य स्प्राइट्स, ट्रांसफॉर्मेशन, इनपुट हैंडलिंग, ड्राइंग, टकराव का पता लगाने के लिए उपयोगी हैं। यह गंदे आयत, पृष्ठ फ़्लिपिंग इत्यादि जैसे गेम में अक्सर उपयोग किए जाने वाले एल्गोरिदम और तकनीकों को भी लागू करता है।

  • thousands of games और इसके साथ किए गए उदाहरण हैं। किसी भी चाल को कैसे करना है यह खोजना आपके लिए आसान होगा।

  • libraries बहुत सारे libraries हैं जिनके प्रभाव और उपयोगिताएं आप पुन: उपयोग कर सकते हैं। आप एक आइसोमेट्रिक गेम चाहते हैं, एक लाइब्रेरी है, आप एक भौतिकी इंजन चाहते हैं, एक पुस्तकालय है, आप कुछ अच्छे दृश्य प्रभाव क्या हैं, एक पुस्तकालय है।

  • PyWeek। :) यह आपके खेल के विकास को और भी मजेदार बनाने के लिए है!

टेट्रिस जैसे कुछ बहुत ही सरल खेल के लिए, अंतर बहुत ज्यादा नहीं होगा, लेकिन अगर आप एक काफी जटिल खेल विकसित करना चाहते हैं, मुझे विश्वास है, तो आप pygame की तरह कुछ चाहते हैं।

13

wxPython wxWidgets पर आधारित है जो एक जीयूआई-उन्मुख टूलकिट है। यह सिस्टम द्वारा प्रदान की जाने वाली शैलियों और सजावट का उपयोग करने का लाभ है और इस प्रकार पोर्टेबल अनुप्रयोगों को लिखना बहुत आसान है जो जो भी आप चल रहे हैं उसके स्वरूप और अनुभव में अच्छी तरह से एकीकृत होते हैं। आप एक चेकबॉक्स चाहते हैं? WxCheckBox का उपयोग करें और WxPython दिखने और बातचीत को संभालेगा।

दूसरी ओर, pyGame, खेल विकास की ओर उन्मुख है और इस प्रकार आपको हार्डवेयर के करीब लाता है जिस तरह से wxPython नहीं करता है (और इसकी आवश्यकता नहीं है, क्योंकि यह अपने अधिकांश नियंत्रणों को खींचने के लिए ओएस को कॉल करता है) । pyGame में आपके चयन के समय टक्कर का पता लगाना, सतहों और परतों के ठीक दाग नियंत्रण या डिस्प्ले बफर फ़्लिपिंग जैसी कई संबंधित गेम हैं।

यह कहा गया है कि, ग्राफिक्स के अनुसार आप शायद टूलकिट्स के साथ जो भी चाहते हैं उसे करने का एक तरीका ढूंढ सकते हैं। हालांकि, जब गति मायने रखती है या आप टेट्रिस की तुलना में ग्राफिकल रूप से अधिक टैक्सिंग गेम विचारों को कार्यान्वित करना चाहते हैं, तो आप शायद pyGame से बेहतर हो सकते हैं। यदि आप बहुत से जीयूआई तत्वों का उपयोग करना चाहते हैं और फैंसी ग्राफिक्स और ध्वनि कार्यों की आवश्यकता नहीं है, तो आप wxPython से बेहतर हो जाते हैं।

पोर्टेबिलिटी कोई मुद्दा नहीं है।दोनों बड़े तीन (लिनक्स, ओएसएक्स, विंडोज) के लिए उपलब्ध हैं।

यह एक और सवाल है कि आपको वास्तव में किस तरह की विशेष क्षमताओं की आवश्यकता है।

+0

और यदि मैं दोनों का उपयोग करना चाहता हूं तो क्या होगा? अर्थात। एक ग्राफिक-पूर्ण गेम है और मानक जीयूआई विजेट के साथ इसे नियंत्रित/कॉन्फ़िगर करने में सक्षम हो? –

+2

आप wxPython-window में pyGame-graphics को प्रदर्शित करने पर विचार करना चाहेंगे। इस लिंक को आजमाएं: http://wiki.wxpython.org/IntegratingPyGame – Berufsstudent

+0

हाँ, मैंने पहले इसे देखा है, लेकिन यह बहुत व्यापक नहीं दिखता है। विवरण कुछ हद तक आरक्षित और संदिग्ध हैं, जो मुझे अन्य स्थानों में भी मिला है। –

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