अपना पहला बेसिक एंड्रॉइड गेम सिर्फ 7 मिनट में (एकता के साथ) बनाएं

लेखक: Lewis Jackson
निर्माण की तारीख: 11 मई 2021
डेट अपडेट करें: 1 जुलाई 2024
Anonim
Unity Android 2020 - Build 7 Games with Unity (New Course)
वीडियो: Unity Android 2020 - Build 7 Games with Unity (New Course)

विषय


एंड्रॉइड के लिए पूरी तरह से काम करने वाला गेम बनाना जितना आसान है, जितना आप सोच सकते हैं। सफल Android विकास की कुंजी- या किसी भी प्रकार का विकास- यह जानना है कि आप क्या करना चाहते हैं और इसे करने के लिए आवश्यक उपकरण और कौशल प्राप्त करना चाहते हैं। कम से कम प्रतिरोध का रास्ता अपनाएं और मन में स्पष्ट लक्ष्य रखें।

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

एकता एक उच्च पेशेवर उपकरण है जो प्ले स्टोर पर सबसे अधिक बिकने वाले शीर्षकों के विशाल बहुमत को शक्ति प्रदान करता है।

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


उसी समय, एकता एक उच्च पेशेवर उपकरण है जो प्ले स्टोर पर सबसे अधिक बिकने वाले शीर्षकों के विशाल बहुमत को शक्ति प्रदान करता है। यहाँ कोई सीमाएँ नहीं हैं और जीवन को अपने लिए कठिन बनाने का कोई अच्छा कारण नहीं है। यह मुफ़्त है, भी!

यह दिखाने के लिए कि एकता के साथ खेल का विकास कितना आसान है, मैं आपको केवल 7 मिनट में अपना पहला एंड्रॉइड गेम बनाने का तरीका दिखाने जा रहा हूं।

नहीं - मैं नहीं जा रहा हूँ समझाना 7 मिनट में कैसे करें। मैं जा रहा हूँ कर दो 7 मिनट में। यदि आप भी साथ चलते हैं, तो आप सटीक कार्य कर पाएंगे!

अस्वीकरण: इससे पहले कि हम शुरुआत करें, मैं केवल यह बताना चाहता हूं कि मैं थोड़ा धोखा दे रहा हूं। जबकि गेम बनाने की प्रक्रिया में 7 मिनट का समय लगेगा, यह मानते हुए कि आप पहले से ही एकता स्थापित कर चुके हैं और सब कुछ सेट हो गया है। लेकिन मैंने आपको फांसी पर नहीं छोड़ा: आप एक पूर्ण ट्यूटोरियल पा सकते हैं कि यह कैसे करना है।


स्प्राइट और भौतिकी को जोड़ना

इसे शुरू करने के लिए एकता पर डबल क्लिक करके शुरुआत करें। यहां तक ​​कि सबसे लंबी यात्रा एक कदम के साथ शुरू होती है।

अब एक नया प्रोजेक्ट बनाएं और सुनिश्चित करें कि आप '2D' चुनते हैं। एक बार जब आप अंदर आ जाते हैं, तो आपको कुछ अलग खिड़कियों से अभिवादन किया जाएगा। ये सामान करते हैं। हमारे पास व्याख्या करने का समय नहीं है, इसलिए मेरे निर्देशों का पालन करें और जैसे ही हम जाते हैं, आप इसे चुन लेंगे।

पहली चीज जो आप करना चाहते हैं, वह है आपका चरित्र बनने के लिए स्प्राइट बनाना। सबसे आसान तरीका है कि एक वर्ग आकर्षित करना है। हम इसे एक दो आँखें देने जा रहे हैं। यदि आप अभी और भी तेज होना चाहते हैं, तो आप बस एक प्रेत को कहीं से भी पकड़ सकते हैं।

इस स्प्राइट को सहेजें और फिर इसे खींचकर अपने सबसे बड़े विंडो में रखकर अपने 'दृश्य' में छोड़ दें। आप देखेंगे कि यह 'पदानुक्रम' में बाईं ओर पॉप अप करता है। '

अब हम कुछ प्लेटफार्म बनाना चाहते हैं। फिर, हम एक साधारण वर्ग के साथ काम करने जा रहे हैं और हम इस फ्रीहैंड को दीवारों, प्लेटफार्मों और आपके पास क्या बनाने के लिए आकार बदलने में सक्षम होंगे।

वहां हम जाते हैं, सुंदर। इसे उसी तरह से गिराएं जैसे आपने अभी किया था।

हमारे पास पहले से ही कुछ ऐसा है जो 'गेम' की तरह दिखता है। प्ले पर क्लिक करें और आपको अभी के लिए एक स्थिर दृश्य देखना चाहिए।

हम बदल सकते हैं कि हमारे खिलाड़ी को क्लिक करें और 'इंस्पेक्टर' नामक खिड़की के दाईं ओर देखें। यह वह जगह है जहाँ हम अपने GameObjects के लिए गुण बदलते हैं।

‘Add Component’ चुनें और फिर ig Physics 2D> RigidBody2D ’चुनें। आपने अपने खिलाड़ी के लिए अभी भौतिक विज्ञान जोड़ा है! यह हमारे लिए अपने आप पर करने के लिए अविश्वसनीय रूप से कठिन होगा और वास्तव में एकता की उपयोगिता पर प्रकाश डालता है।

हम चरित्र को घूमने और चारों ओर फ़्रीव्हीलिंग को रोकने के लिए अपनी अभिविन्यास को भी ठीक करना चाहते हैं। खिलाड़ी के साथ इंस्पेक्टर में ts बाधाओं का चयन करें और रोटेशन को फ्रीज करने के लिए बॉक्स पर टिक करें। अब फिर से प्ले पर क्लिक करें और आपको अपने खिलाड़ी को अब आसमान से अपने अनंत कयामत तक गिरना चाहिए।

एक पल के लिए यह देखना कितना आसान है: बस ‘RigidBody2D’ नामक इस स्क्रिप्ट को लागू करने से हमारे पास कार्यात्मक भौतिकी है। क्या हम एक ही स्क्रिप्ट को गोल आकार में लागू करते हैं, यह रोल भी करेगा और उछाल भी। कल्पना कीजिए कि अपने आप को और कैसे शामिल किया जाएगा कि कोडिंग!

फर्श के माध्यम से गिरने वाले हमारे चरित्र को रोकने के लिए, आपको एक कोलाइडर जोड़ना होगा। यह मूल रूप से किसी आकृति की ठोस रूपरेखा है। इसे लागू करने के लिए, अपना खिलाड़ी चुनें, 'घटक जोड़ें' पर क्लिक करें और इस बार 'भौतिकी 2D> BoxCollider2D' का चयन करें।

एक पल के लिए यह देखना कितना आसान है: बस ‘RigidBody2D’ नामक इस स्क्रिप्ट को लागू करने से हमारे पास कार्यात्मक भौतिकी है।

प्लेटफ़ॉर्म के साथ सटीक कार्य करें, प्ले पर क्लिक करें और फिर अपने चरित्र को ठोस आधार पर छोड़ देना चाहिए। आसान!

एक और बात: यह सुनिश्चित करने के लिए कि कैमरा हमारे खिलाड़ी का अनुसरण करता है, चाहे वे गिर रहे हों या आगे बढ़ रहे हों, हम उस खिलाड़ी के दृश्य में कैमरा ऑब्जेक्ट को खींचना चाहते हैं (यह तब बनाया गया था जब आपने खिलाड़ी के ऊपर नया प्रोजेक्ट शुरू किया था)। अब पदानुक्रम में (बाईं ओर GameObjects की सूची) आप कैमरे को खींचने जा रहे हैं ताकि यह खिलाड़ी के नीचे आसीन हो। कैमरा अब प्लेयर गेम ऑबजेक्ट का एक ’बच्चा’ है, जिसका अर्थ है कि जब खिलाड़ी चलता है, तो यह भी कैमरा होगा।

आपकी पहली स्क्रिप्ट

हम एक बुनियादी अनंत धावक बनाने जा रहे हैं और इसका मतलब है कि हमारे चरित्र को स्क्रीन पर सही तरीके से चलना चाहिए जब तक कि वे एक बाधा नहीं मारते। उसके लिए हमें एक स्क्रिप्ट की जरूरत है। इसलिए नीचे दिए गए एसेट्स फ़ोल्डर में राइट क्लिक करें और एक नया फ़ोल्डर बनाएँ, जिसे 'स्क्रिप्ट्स' कहा जाता है। अब फिर से राइट क्लिक करें और> Create> C # Script ’चुनें। इसे 'प्लेयरकंट्रोल' कहें।

अधिकांश भाग के लिए हम जो स्क्रिप्ट बनाते हैं वह हमारे गेम ऑबजेक्ट के लिए विशिष्ट व्यवहार को परिभाषित करेगा।

अब अपनी नई स्क्रिप्ट पर डबल क्लिक करें और यदि आप सब कुछ सही तरीके से सेट करते हैं तो यह विजुअल स्टूडियो में खुल जाएगा।

यहाँ पहले से ही कुछ कोड है, जो 'बॉयलर प्लेट कोड' है। इसका मतलब है कि यह कोड जिसे आपको लगभग हर स्क्रिप्ट में उपयोग करना होगा, इसलिए इसकी तैयार-आबादी आपके लिए समय बचाने के लिए। अब हम शून्य प्रारंभ () के ऊपर इस पंक्ति के साथ एक नई वस्तु जोड़ेंगे:

सार्वजनिक Rigidbody2D आरबी;

फिर कठोरता को खोजने के लिए प्रारंभ () विधि के भीतर कोड की इस अगली पंक्ति को रखें। यह मूल रूप से एकता को गेमऑबजेक्ट से जुड़ी भौतिकी का पता लगाने के लिए कहता है कि यह स्क्रिप्ट हमारे (निश्चित रूप से खिलाड़ी) के साथ जुड़ी होगी। प्रारंभ () एक ऐसी विधि है जिसे एक नई वस्तु या स्क्रिप्ट के निर्माण के बाद निष्पादित किया जाता है। भौतिकी वस्तु का पता लगाएँ:

rb = GetComponent();

इसे अपडेट के अंदर जोड़ें ():

rb.velocity = नया वेक्टर 2 (3, rb.velocity.y);

अद्यतन () बार-बार ताज़ा होता है और इसलिए यहां कोई भी कोड ऑब्जेक्ट के नष्ट होने तक बार-बार चलेगा। यह सब कहता है कि हम चाहते हैं कि हमारी कठोरता का y अक्ष (rb.velocity.y) पर समान गति के साथ एक नया वेक्टर हो लेकिन क्षैतिज अक्ष पर ’3 'की गति के साथ। जैसे ही आप आगे बढ़ते हैं, आप शायद भविष्य में progress फिक्स्डअपडेट () ’का उपयोग करेंगे।

उसे बचाओ और एकता में वापस जाओ। अपने खिलाड़ी चरित्र पर क्लिक करें और फिर निरीक्षक में घटक जोड़ें> लिपियाँ और फिर अपनी नई स्क्रिप्ट चुनें। खेलने पर क्लिक करें, और उछाल! आपका चरित्र अब लेमिंग की तरह कगार के किनारे की ओर बढ़ना चाहिए।

नोट: यदि इनमें से कोई भी भ्रामक लगता है, तो बस यह देखने के लिए वीडियो देखें कि यह सब किया जा रहा है - यह मदद करेगा!

बहुत बुनियादी खिलाड़ी इनपुट

यदि हम एक कूदने की सुविधा जोड़ना चाहते हैं, तो हम इसे केवल एक अतिरिक्त बिट कोड के साथ कर सकते हैं:

if (Input.GetMouseButtonDown (0)) {rb.velocity = new Vector2 (rb.velocity.x, 5); }

यह अपडेट विधि के अंदर चला जाता है और यह कहता है कि inside यदि खिलाड़ी क्लिक करता है तो y अक्ष पर वेलोसिटी जोड़ें (मान 5 के साथ)। जब हम उपयोग करते हैं तो, कोष्ठक के अंदर आने वाली किसी भी चीज़ का उपयोग एक प्रकार की सही या झूठी परीक्षा के रूप में किया जाता है। यदि कहा गया कि कोष्ठक के अंदर का तर्क सत्य है, तो निम्नलिखित घुंघराले कोष्ठक में कोड चलेगा। इस स्थिति में, यदि खिलाड़ी माउस को क्लिक करता है, तो वेग जोड़ा जाता है।

एंड्रॉइड पढ़ता है बाईं माउस क्लिक स्क्रीन पर कहीं भी टैप करने के लिए! तो अब आपके गेम में बेसिक टैप कंट्रोल्स हैं।

अपना पाँव पसारना

यह मूल रूप से एक Flappy Birds क्लोन बनाने के लिए पर्याप्त है। कुछ बाधाओं में फेंकें और खिलाड़ी को नष्ट करने का तरीका जानें, जब यह उन्हें छूता है। उस के ऊपर एक अंक जोड़ें।

यदि आप इसे कम कर देते हैं, तो भविष्य में कोई चुनौती बहुत बड़ी नहीं होगी

लेकिन हमारे पास थोड़ा और समय है इसलिए हम अधिक महत्वाकांक्षी हो सकते हैं और इसके बजाय एक अनंत धावक प्रकार का खेल बना सकते हैं। हमारे पास इस समय जो कुछ भी गलत है, वह यह है कि टैपिंग जंप तब भी उछलेगा जब खिलाड़ी फर्श से नहीं छू रहा होगा, इसलिए यह अनिवार्य रूप से उड़ान भर सकता है।

इसे हटाने से थोड़ा और जटिल हो जाता है लेकिन यह लगभग उतना ही कठिन है जितना कि एकता को मिलता है। यदि आप इसे कम कर देते हैं, तो भविष्य में कोई चुनौती बहुत बड़ी नहीं होगी।

अद्यतन () विधि के ऊपर अपनी स्क्रिप्ट में निम्न कोड जोड़ें:

सार्वजनिक ट्रांसफ़ॉर्म ग्राउंडचेक; सार्वजनिक रूपांतरण शुरू सार्वजनिक फ्लोट ग्राउंडचेकराडियस; सार्वजनिक लेयरमास्क whatIsGround; प्राइवेट बूल ऑनगैंग;

यदि इस कथन के ऊपर अद्यतन विधि में यह पंक्ति जोड़ें:

onGround = Physics2D.OverlapCircle (ग्राउंडचेक.पोजिशन, ग्राउंडचेकराडियस, whatIsGround);

अंत में, निम्न पंक्ति को बदल दें ताकि इसमें && शामिल हों:

अगर (Input.GetMouseButtonDown (0) && onGround) {

पूरी बात इस तरह दिखनी चाहिए:

सार्वजनिक वर्ग के खिलाड़ीकंट्रोल: मोनोबीहोर {सार्वजनिक रिगिडबॉडी 2 डी आरबी; सार्वजनिक ट्रांसफ़ॉर्म ग्राउंडचेक; सार्वजनिक रूपांतरण शुरू सार्वजनिक फ्लोट ग्राउंडचेकराडियस; सार्वजनिक लेयरमास्क whatIsGround; प्राइवेट बूल ऑनगैंग; शून्य प्रारंभ () {rb = GetComponent(); } शून्य अद्यतन () {rb.velocity = नया वेक्टर 2 (3, rb.velocity.y); onGround = Physics2D.OverlapCircle (ग्राउंडचेक.पोजिशन, ग्राउंडचेकराडियस, whatIsGround); if (Input.GetMouseButtonDown (0) && onGround) {rb.velocity = new वेक्टर2 (rb.velocity.x, 5); }}}

हम यहां क्या कर रहे हैं एक नया परिवर्तन पैदा कर रहा है - अंतरिक्ष में एक स्थिति - फिर हम इसकी त्रिज्या सेट कर रहे हैं और पूछ रहे हैं कि क्या यह जमीन नामक एक परत को ओवरलैप कर रहा है। फिर हम बूलियन के मूल्य को बदल रहे हैं (जो कि सही या गलत हो सकता है) इस बात पर निर्भर करता है कि क्या मामला है या नहीं।

तो, onGround सच है अगर ग्राउंडचेक नाम का ट्रांसफॉर्मेशन लेयर ग्राउंड को ओवरलैप कर रहा है।

यदि आप सहेजें पर क्लिक करते हैं और फिर यूनिटी पर वापस जाते हैं, तो आपको अब यह देखना चाहिए कि खिलाड़ी का चयन करते समय आपके पास अपने निरीक्षक के पास अधिक विकल्प उपलब्ध हों। इन सार्वजनिक चरों को एकता के भीतर से ही देखा जा सकता है और इसका मतलब है कि हम उन्हें वैसे सेट कर सकते हैं, जैसा हम चाहते हैं।

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

फिर से खिलाड़ी का चयन करें और इंस्पेक्टर में, नए चेक ग्राउंड ऑब्जेक्ट को उस स्थान पर खींचें जहां वह 'ग्राउंडचेक' कहता है। 'परिवर्तन' (स्थिति) अब नई वस्तु की स्थिति के बराबर होने जा रहा है। जब आप यहां हों, तो 0.1 दर्ज करें जहां यह त्रिज्या कहती है।

अंत में, हमें अपनी ’ग्राउंड’ परत को परिभाषित करने की आवश्यकता है। ऐसा करने के लिए, आपके द्वारा पहले बनाए गए इलाके का चयन करें, फिर इंस्पेक्टर में सबसे ऊपर दाईं ओर, जहां यह। लेयर: डिफॉल्ट ’कहे। इस ड्रॉप डाउन बॉक्स पर क्लिक करें और L Add Layer ’चुनें।

अब वापस क्लिक करें और इस बार अपने प्लेटफ़ॉर्म के लिए परत के रूप में ’ग्राउंड’ चुनें (किसी भी अन्य प्लेटफ़ॉर्म के लिए इसे दोहराएं जो आपके पास तैर रहा हो) अंत में, जहां यह कहता है कि आपके खिलाड़ी पर ‘व्हाट्स ग्राउंड’ है, साथ ही साथ ग्राउंड लेयर का चयन करें।

अब आप अपने खिलाड़ी को स्क्रिप्ट की जाँच करने के लिए कह रहे हैं कि स्क्रीन पर मौजूद छोटे बिंदु उस परत से मेल खाते हुए किसी चीज़ को ओवरलैप कर रहे हैं या नहीं। उस पंक्ति के लिए धन्यवाद, जिसे हमने पहले जोड़ा था, अब चरित्र केवल तभी उछलेगा जब ऐसा हो।

और इसके साथ, यदि आप खेलते हैं, तो आप एक बहुत ही बुनियादी खेल का आनंद ले सकते हैं, जिससे आपको सही समय पर कूदने के लिए क्लिक करने की आवश्यकता होती है।

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

रास्ते में आगे

जाहिर है कि इसे पूरा खेल बनाने के लिए और भी बहुत कुछ जोड़ना है। खिलाड़ी को मरने और प्रतिक्रिया देने में सक्षम होना चाहिए। हम अतिरिक्त स्तर और अधिक जोड़ना चाहते हैं।

यहाँ मेरा उद्देश्य आपको यह दिखाना था कि आप कितनी तेज़ी से कुछ बुनियादी तैयार कर सकते हैं। इन निर्देशों का पालन करते हुए, आपको कुछ ही समय में अपने अनंत धावक का निर्माण करने में सक्षम होना चाहिए, ताकि एकता भौतिकी जैसे कठिन सामान को संभाल सके।

यदि आप जानते हैं कि आप क्या बनाना चाहते हैं और अपना शोध करना चाहते हैं, तो आपको एक अच्छा खेल बनाने के लिए कोडिंग विज़ार्ड बनने की आवश्यकता नहीं है!

अमेज़ॅन और इसकी आगामी प्राइम डे की बिक्री से कुछ ध्यान हटाने के लिए, ईबे ने आज घोषणा की कि यह जुलाई भर में साइट-व्यापी सौदों की पेशकश करेगा।विशेष ईबे सौदों 1 जुलाई को ऑनलाइन रिटेलर के जुलाई 4 बचत के स...

आपने ईसीजी की सुविधा के बारे में सुना होगा - कभी-कभी ईकेजी के रूप में संक्षिप्त किया जाता है - देर से पहनने के तरीके पर अपना रास्ता बनाते हैं। Withing जैसे डिवाइस ECG, Apple Watch erie 4 और जल्द ही Am...

पाठकों की पसंद