2013-01-21 34 views
7

में विंडोज 8 आरटी गेम्स कोड कर सकता हूं क्या सी # का उपयोग कर विंडोज 8 आरटी और/या विंडोज 8 फोन गेम को कोड करना संभव है?क्या मैं सी #

उत्तर

13

मैं "सी # में खेल" बात पर शोध भी पर्याप्त मात्रा में किया है, इसलिए मैं मैं दूसरों के लिए इसे पोस्ट होगा सोचा:

XNA एक सी # खेल बनाने के लिए एक आसान तरीका है। आप विंडोज स्टोर पर एक नया एक्सएनए गेम पोस्ट कर सकते हैं और यह ठीक काम करेगा।

हालांकि, अगर आप एक Windows Phone 8 या Windows 8 खेल XNA का उपयोग कर नहीं कर सकता। (आप केवल विंडोज फोन के संस्करण 7.1 को लक्षित कर सकते हैं।) इन ऑपरेटिंग सिस्टम के लिए नए एपीआई एक्सएनए में समर्थित नहीं हैं।

हालांकि, दोनों विंडोज फोन 8 और विंडोज 8 XNA क्षुधा चलेंगे। वे ऐप्स केवल विंडोज 8 या विंडोज 8 फोन के लिए विशिष्ट सुविधाओं को लक्षित नहीं कर सकते हैं।

तो समेट करने के लिए। एक्सएनए (4.0) का वर्तमान संस्करण विंडोज और विंडोज फोन से बात करने के लिए पुराने एपीआई का समर्थन करता है। वे अभी भी विंडोज 8 पर चल सकते हैं, लेकिन आप नई सामग्री का उपयोग नहीं कर सकते हैं।

माइक्रोसॉफ्ट नए विंडोज 8 और विंडोज फोन 8 के लिए एपीआई सी # में खेल बनाने के लिए एक भेंट भी नहीं है।

हालांकि, अगर आप ओपन सोर्स प्रोजेक्ट वहाँ कुछ चीजें आप सी # में एक खेल है कि नए Windows 8 और Windows Phone 8 एपीआई का उपयोग कर सकते हैं लिखने के लिए कर सकते हैं का उपयोग कर कोई आपत्ति नहीं है, तो:

MONOGAME

यदि आप नए विंडोज 8 एपीआई के लिए गेम बनाने के लिए एक्सएनए की एपीआई का उपयोग करना चाहते हैं तो आप मोनोगेम का उपयोग कर सकते हैं (यही वह है जो मैं उपयोग करता हूं)। यह एक ओपन सोर्स एपीआई है जो एक्सएनए एपीआई लागू करता है लेकिन आईओएस, एंड्रॉइड और विंडोज 8 के लिए प्लगइन है। यह वास्तव में एक अच्छा क्रॉस प्लेटफ़ॉर्म विकल्प है। 3 डी ग्राफिक्स हाल ही में मोनोमेम द्वारा समर्थित हो गया (यानी Infinite Flight, Armed)। (नोट:। मैं किसी भी तरह से MonoGame के साथ संबद्ध नहीं कर रहा हूँ)

SHARP DX (डायरेक्ट)

आप एक खेल है जो Windows 8 एपीआई को लक्षित करता है बनाने के लिए एक Microsoft समर्थित रास्ता चाहते हैं आपका सर्वश्रेष्ठ दांव है DirectX। लेकिन डायरेक्ट एक्स एक सी ++ एपीआई है। यह वास्तव में भी वास्तव में कठिन है।

आप तो डायरेक्ट एक्स overkill है (पौधों लाश बनाम या एंग्री बर्ड्स) की तरह एक 2D खेल बनाने की चाह रहे हैं। आप मोनोगेम मार्ग पर जाने से कहीं बेहतर हैं। मैंने कई दिनों ट्यूटोरियल्स के माध्यम से खुदाई की और डायरेक्ट एक्स को समझने के लिए बहुत मेहनत की। उस समय के अंत तक मुझे स्क्रीन पर एक त्रिकोण खींचने की क्षमता के साथ पुरस्कृत किया गया। (उसी समय की मात्रा में मेरा गेम लूप चल रहा था और मोनोगेम में घूम रहा था।)

तो मैं दोहराता हूं, अगर आप पहले ही डायरेक्टएक्स नहीं जानते हैं और आप 2 डी ऐप बना रहे हैं, तो डायरेक्टएक्स नीचे न जाएं/शार्पडीएक्स रोड।

DirectX 2 डी मार्ग आगे Windows Phone 8 Direct2D का समर्थन नहीं द्वारा बाधित है। डायरेक्टएक्स में 2 डी प्रतिपादन के लिए डायरेक्ट 2 डी नामक एक सबसेट है। हालांकि, यह सबसेट विंडोज फोन 8 पर समर्थित नहीं है। "प्रतिस्थापन" (अभी के लिए) डायरेक्ट एक्स टूलकिट है।

आप अभी भी सभी प्रत्यक्ष एक्स सड़क के साथ में हैं, तो आप इसे सी # में SharpDX का उपयोग कर लिख सकते हैं। यह डायरेक्टएक्स के लिए एक सी # रैपर है जो बहुत अच्छी तरह से काम करता है (हालांकि मुझे नहीं पता कि यह डायरेक्ट एक्स टूलकिट का समर्थन करता है)।


सारांश

यह की कमी (मेरे लिए) है कि माइक्रोसॉफ्ट विंडोज 8 और विंडोज फोन में नई सामग्री का समर्थन करने के सी # खेल विकास के लिए उनकी API को अपडेट नहीं किया है 8. लेकिन MonoGame की सुविधा देता है आप बस ऐसा करने के लिए एक्सएनए एपीआई का उपयोग करते हैं। यह आपको क्रॉस प्लेटफ़ॉर्म गेम लिखने की अनुमति देता है, इसलिए यह वैसे भी बेहतर है।

मेरे खेल अच्छी तरह से MonoGame में चल रहा है कोई मुद्दों के साथ अब तक (आप आईओएस और एंड्रॉयड "नि: शुल्क" के लिए करने के लिए पोर्टिंग मिलता है।)!

+0

"हालांकि, आप एक्सएनए का उपयोग कर विंडोज फोन 8 या विंडोज 8 गेम नहीं बना सकते हैं। (आप केवल विंडोज फोन के संस्करण 7.1 को लक्षित कर सकते हैं।) इन ऑपरेटिंग सिस्टम के लिए नए एपीआई एक्सएनए में समर्थित नहीं हैं। हालांकि, दोनों विंडोज फोन 8 और विंडोज 8 XNA पुराने एपीआई के साथ किए गए एप्लिकेशन चलाने जाएगा। " भ्रामक - आप स्पष्ट और/या लिंक है कि अन्य विवरणों में यह समझाने प्रदान कर सकता है? मेरे लिए यह की तरह लिखा है "विंडोज 8/Phone8 XNA नहीं चला लेकिन वे पुराने एपीआई का उपयोग कर XNA चला सकता हूँ" - इस पुराने एपीआई क्या है? एक्सएनए 3.0? 4.0? क्या उन्होंने 4.0 से कुछ नया रिलीज़ किया? – SpartanDonut

+0

@ToddersLegrande - मैंने स्पष्टीकरण के लिए पोस्ट को अपडेट किया। एक्सएनए 4.0 अब "पुराना" है। ऐसा इसलिए है क्योंकि यह माइक्रोसॉफ्ट के मौजूदा ऑपरेटिंग सिस्टम के साथ बातचीत करने के लिए एपीआई का समर्थन नहीं करता है। हालांकि, अभी भी XNA चला सकते हैं, सिर्फ नई सुविधाओं है कि नए ऑपरेटिंग सिस्टम के साथ आने के किसी भी उपयोग नहीं। – Vaccano

+1

मुझे नहीं लगता कि आप Windows RT पर XNA क्षुधा चला सकते हैं जब तक आप वास्तव में XNA के बजाय MonoGame प्रयोग करते हैं। एक और विकल्प यूनिटी 3 डी का उपयोग कर सकता है। –