एक अजगर खेल कई प्लेटफार्मों पर चलेगा?


10

मेरी योजना पायथन में एक खेल लिखने की है और शायद कुछ एसक्यूएल की है। मैं इस बात से चिंतित हूं कि जब मैं इसे पूरा करूंगा तो मेरा कार्यक्रम कितना बहुमुखी होगा, आदर्श रूप से मैं इसे विंडोज, मैक, एंड्रॉइड और आईफोन पर चलाना चाहूंगा ... हालांकि मुझे लगता है कि इसके लिए फोन ऑफ-लिमिट होंगे। चिज की तरह। मैं एक प्रोग्राम लिखने के बारे में कैसे जाऊंगा जो कई प्लेटफार्मों पर चलता है? क्या यह एक शुरुआती प्रोग्रामर के लिए भी संभव है?

जवाबों:


12

पायथन अपने आप में बहुत पोर्टेबल है (कई प्लेटफार्मों पर चलता है), लेकिन आपको निम्नलिखित बातों का ध्यान रखना होगा:

  • आपके द्वारा लक्षित प्लेटफ़ॉर्म की सीमाएँ क्या हैं? क्या आप मोबाइल स्टोर के माध्यम से बेचना चाहते हैं?

    उदाहरण के लिए, WP7 बाज़ार केवल प्रबंधित कोड (.NET) में लिखे ऐप को बेचने की अनुमति देता है। AppStore बहुत नीचे बंद कर दिया है और केवल उद्देश्य-सी में लिखा देशी आवेदन की अनुमति देता है। Android NDK के माध्यम से जावा और देशी कोड दोनों को चलाने की अनुमति देता है। लोगों ने आईओएस में मूल एप्लिकेशन में जावास्क्रिप्ट को चलाने या वेब एप्लिकेशन को मूल एप्लिकेशन में बदलने की अनुमति देने के लिए वर्कअराउंड विकसित किया है

  • आप जिन पुस्तकालयों का उपयोग करना चाहते हैं, वे कितने महत्वपूर्ण हैं?

    यहां एक उदाहरण है: Cocos2D एक ऑब्जेक्टिव-सी पोर्ट के साथ एक पायथन लाइब्रेरी है। आप अपने गेम को डेस्कटॉप प्लेटफॉर्म के लिए पायथन में बना सकते हैं और इसे लाइब्रेरी के लिए धन्यवाद देते हुए, इसे स्ट्रक्चर-सी में फिर से लिख सकते हैं। लेकिन फिर आपके पास केवल डेस्कटॉप + आईओएस के लिए समर्थन है।

कुल मिलाकर, समर्थन की कमी के कारण, पायथन मोबाइल प्लेटफार्मों के लिए एक आसान फिट नहीं है। यहाँ तीन वैकल्पिक विकल्प दिए गए हैं:

  • XNA को विंडोज, Xbox 360 और विंडोज फोन के लिए गेम बनाने के लिए बनाया गया था। दो प्रोजेक्ट्स ( MonoGame और ExEn ) हैं जो उन गेम्स को बंद करने की अनुमति देते हैं, जिनमें लगभग कोई संशोधन नहीं किया गया है, iOS ऐप में (MonoTouch के माध्यम से), एंड्रॉइड ऐप (MonoDroid के माध्यम से) )। हालांकिमोनोऑट और मोनोऑड्रो के पास लाइसेंस की लागत है।

  • एकता बहुत पोर्टेबल है और लगभग सभी प्लेटफार्मों को लक्षित करने की अनुमति देती है (हालांकि अभी तक कोई लिनक्स समर्थन नहीं है )

    यह डेस्कटॉप गेम के लिए मुफ्त है। उनके पास एक प्रो संस्करण है लेकिन अधिकांश गेम के लिए आप इसके बिना बस ठीक कर सकते हैं। प्रत्येक प्लेटफ़ॉर्म के लिए विभिन्न संस्करणों की तुलना करने वाला एक चार्ट है: http://unity3d.com/unity/licenses

  • कैनवास 2 जी एपीआई या वेबजीएल के साथ वेब एप्लिकेशन (तथाकथित एचटीएमएल 5) हाल के ब्राउज़रों और स्मार्टफ़ोन पर चलते हैं। समर्थन केवल समय के साथ बेहतर हो जाएगा। 3 डी सामान बनाने के लिए उपरोक्त इंजन जैसे कि इम्पैक्टजेएस या थ्री.जेएस जैसे कई इंजन हैं।


यह जोड़ना चाहते हैं कि एकता 3 भाषाओं का समर्थन करती है: सी #, जावास्क्रिप्ट और बू जो कि सिंटैक्स में पायथन के समान है
जॉर्ज प्रोफेंजा

3

PyGame यह उनके बारे में पेज में कहते हैं :

सच में पोर्टेबल। लिनक्स का समर्थन करता है (pygame सबसे मुख्य स्ट्रीम लिनक्स वितरण के साथ आता है), विंडोज (95, 98, ME, 2000, XP, विस्टा, 64-बिट विंडोज आदि), विंडोज सीई, बीओएस, मैकओएस, मैक ओएस एक्स, फ्रीबीएसडी, नेटबीएसडी, OpenBSD, BSD / OS, Solaris, IRIX, और QNX। कोड में AmigaOS, Dreamcast, Atari, AIX, OSF / Tru64, RISC OS, सिम्बियनओएस और OS / 2 का समर्थन है, लेकिन ये आधिकारिक तौर पर समर्थित नहीं हैं। आप इसे हाथ से पकड़े हुए डिवाइस, गेम कंसोल और वन लैपटॉप प्रति बच्चा (ओएलपीसी) कंप्यूटर पर उपयोग कर सकते हैं।

पायथन अपने आप में बेहद पोर्टेबल है, और नए प्लेटफॉर्म पर पोर्ट करने के लिए काफी आसान है (यह मानते हुए कि कोई आपके लिए पहले से नहीं किया है)। जब भी आपको कुछ प्लेटफ़ॉर्म-विशिष्ट बिट्स का उपयोग करने की आवश्यकता होती है, तो चीजें "दिलचस्प" हो जाएंगी, जहां PyGame आपकी मदद कर सकता है, यदि यह उन प्लेटफार्मों का समर्थन करता है जो आप देख रहे हैं, या आप इसे पोर्ट कर सकते हैं।

एक अर्ध-संबंधित मुद्दा यह है कि कुछ वितरण विधियां (ऐप स्टोर) उन अनुप्रयोगों को अनुमति नहीं दे सकती हैं जो अज्ञात तृतीय पक्ष कोड चला सकते हैं। आपको अपने पायथन और इसकी स्क्रिप्ट को लॉक करना होगा ताकि वे एप्लिकेशन के बाहर कुछ भी एक्सेस न कर सकें, और संभवतः इसे उन स्क्रिप्ट को चलाने से रोक सकें जो आपने गेम के भाग के रूप में प्रदान नहीं की थीं।


1

मुझे Android पर यकीन नहीं है, लेकिन अजगर iPhone पर नहीं चल सकता। वर्तमान में विंडोज, मैक, एंड्रॉइड और आईफोन पर गेम को तैनात करने के लिए सबसे अच्छा उपकरण एचटीएमएल 5 या यूनिटी 3 डी का उपयोग करना होगा। अन्य उपकरणों का एक समूह है जो कम ज्ञात हैं और इस प्रकार आइडियावर्क्स गैमेस्टडियो की तरह कम वाउचर हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.