विषयसूची:

अपना पहला रेसिंग गेम बनाएं: 10 कदम
अपना पहला रेसिंग गेम बनाएं: 10 कदम

वीडियो: अपना पहला रेसिंग गेम बनाएं: 10 कदम

वीडियो: अपना पहला रेसिंग गेम बनाएं: 10 कदम
वीडियो: dream11 me नंबर 1 रैंक वाली टीम कैसे बनाएं,dream11 me team banane ka sahi तरीका 2024, नवंबर
Anonim
Image
Image
छवि
छवि

यदि आपने कुछ पायथन कोडिंग की है और एक गेम लिखना चाहते हैं तो आपके पास पायगम ज़ीरो हो सकता है।

इस ट्यूटोरियल में हम एक साधारण रेसिंग गेम लिखेंगे।

चरण 1: व्यापक अवलोकन

Pygame मॉड्यूल कई फ़ंक्शन जोड़ता है जो आपको Python में गेम लिखने में मदद करता है।

Pygame Zero एक कदम और आगे जाता है ताकि आप उन सभी गेम लूप्स को बनाने और अपने प्रोग्राम स्ट्रक्चर को सेट करने की बोझिल प्रक्रिया को छोड़ सकें।

जो कोई भी रास्पबेरी पाई या किसी भी लिनक्स मशीन पर कंप्यूटर गेम लिखना शुरू करना चाहता है, उसके लिए Pygame Zero एक बढ़िया विकल्प है।

आपको ज़रूरत होगी:

  • मशीन जो Linux OS चलाती है
  • अजगर कार्यक्रम लिखने के लिए संपादक
  • कीबोर्ड
  • कुछ कल्पना

फ़ाइलें:

github.com/AhmNouira/-Racing-Game

चरण 2: पूर्वापेक्षाएँ

सबसे पहले मैं अपने लैपटॉप का उपयोग उबंटू 18.04 ओएस के साथ करूंगा। फिर हम चरण 8 में रास्पबेरी पाई पर गेम चलाएंगे।

इस ट्यूटोरियल को जारी रखने से पहले, सुनिश्चित करें कि आप sudo विशेषाधिकार वाले उपयोगकर्ता के रूप में लॉग इन हैं।

पायथन 3 के लिए पाइप स्थापित करना

निम्न आदेश का उपयोग करके पैकेज सूची को अद्यतन करके प्रारंभ करें:

सुडो उपयुक्त अद्यतन

पायथन 3 के लिए पाइप स्थापित करने के लिए निम्नलिखित कमांड का उपयोग करें:

sudo apt स्थापित python3-pip

पाइप संस्करण की जाँच करके स्थापना को सत्यापित करें:

pip3 --संस्करण

पायगम ज़ीरो स्थापित करना

pip3 स्थापित करें pgzero --user

यह Pygame भी स्थापित करेगा। पहले से संकलित पायगेम पैकेज

तो आपकी यात्रा में पहला कदम पायथन 3 आईडीएलई या अपने पसंदीदा पायथन संपादक को खोलना होगा।

चरण 3: पायगम ज़ीरो में "हैलो वर्ल्ड"

डिफ़ॉल्ट रूप से, पायगम ज़ीरो विंडो 800 पिक्सेल चौड़ी और 600 पिक्सेल ऊँची के आकार में खुलती है। आप अनुकूलित कर सकते हैं

यदि आप WIDTH = 700 High = 800 को शामिल करते हैं, तो आपकी विंडो का आकार, दो पूर्वनिर्धारित चर हैं जिन्हें आप सेट कर सकते हैं।

Pygame शून्य सामान्य रूप से प्रदर्शन करने वाले गेम लूप को संभालने के लिए पूर्वनिर्धारित कार्य प्रदान करता है:

ड्रा () फ़ंक्शन

हम इस फ़ंक्शन को अपने प्रोग्राम में उसी तरह लिख सकते हैं जैसे हम आमतौर पर पायथन में एक फ़ंक्शन को परिभाषित करते हैं।

Pygame Zero, Python के समान स्वरूपण नियमों का पालन करता है, इसलिए आपको अपने कोड को सही ढंग से इंडेंट करने के लिए ध्यान रखना होगा।

#!/usr/bin/python3 # दुभाषिया सेट करें

आयात pgzrun # आयात pgzero मॉड्यूल WIDTH = 700 # विंडो की चौड़ाई HEIGHT = 800 # विंडो डीफ़ ड्रा की ऊँचाई (): # pygame शून्य ड्रा फ़ंक्शन स्क्रीन। भरण ((128, 128, 128)) # RGB के साथ स्क्रीन भरें color Screen.draw.text("Hello World!", (270, 320), # Draw "Hello World!" color = (255, 255, 255), fontsize = 40) pgzrun.go()

सबसे पहले आपको अपनी प्रोग्राम फाइल को सेव करना होगा और उसे एक नाम देना होगा।

फिर एक टर्मिनल विंडो खोलें, अपने फ़ाइल स्थान पर जाएँ और टाइप करें:

./.py

चरण 4: अपने अभिनेता को आकर्षित करना

अपने अभिनेता को आकर्षित करना
अपने अभिनेता को आकर्षित करना

अब जब हमारे पास अपना स्टेज सेट है, तो हम अपने अभिनेता बना सकते हैं, वे Pygame Zero में गतिशील वस्तुएं हैं।

हम प्रोग्राम के शीर्ष पर टाइप करके एक अभिनेता को लोड कर सकते हैं:

कार = अभिनेता ("रेसकार")

पायगेम ज़ीरो में हमारी छवियों को हमारी प्रोग्राम फ़ाइल के बगल में छवियों नामक निर्देशिका में संग्रहीत करने की आवश्यकता होती है। इसलिए हमारा अभिनेता रेसकार नामक छवियों फ़ोल्डर में एक छवि फ़ाइल की तलाश करेगा। यह एक GIF या-j.webp

आप टाइप करके स्क्रीन पर इसकी स्थिति निर्धारित कर सकते हैं:

car.pos = ३५०, ५६०

उसके बाद हमारे ड्रा () फंक्शन में हम टाइप कर सकते हैं

car.draw() # हमारी रेस कार को उसके निर्धारित स्थान पर ड्रा करें

इस प्रकार होगा पूरा कार्यक्रम:

#!/usr/bin/python3

आयात pgzrun चौड़ाई = ७०० # खिड़की की चौड़ाई ऊंचाई = ८०० # खिड़की कार की ऊंचाई = अभिनेता ("रेसकार") car.pos = ३५०, ५६० डीईएफ़ ड्रा (): # pygame शून्य ड्रा फ़ंक्शन स्क्रीन। भरण ((१२८, 128, 128)) # स्क्रीन को कार से भरें। ड्रा () pgzrun.go ()

यह सुनिश्चित करने के लिए अपने कार्यक्रम का परीक्षण करें कि यह काम कर रहा है।

चरण 5: अभिनेता को नियंत्रित करें

अभिनेता को नियंत्रित करें
अभिनेता को नियंत्रित करें

एक बार जब हम स्क्रीन पर अपनी कार की ड्राइंग बनाते हैं, तो अगला चरण खिलाड़ी को इसे स्थानांतरित करने में सक्षम बनाना है।

हम इसे कुंजी प्रेस के साथ कर सकते हैं। हम इन चाबियों की स्थिति को एक अन्य पूर्वनिर्धारित फ़ंक्शन के अंदर पढ़ सकते हैं जिसे अपडेट () कहा जाता है।

अद्यतन () फ़ंक्शन

खेल के चलने के दौरान इस फ़ंक्शन की लगातार जाँच की जाती है।

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

तो हम इस फंक्शन को अपने प्रोग्राम में जोड़ेंगे

डीईएफ़ अपडेट ():

अगर कीबोर्ड.बाएं: कार.एक्स -=2 अगर कीबोर्ड.दाएं: कार.एक्स +=2 अगर कीबोर्ड.अप: कार.वाई -=2 अगर कीबोर्ड.डाउन: car.y +=2

कोड की ये पंक्तियाँ कार अभिनेता को बाएँ, दाएँ, आगे और पीछे ले जाएँगी।

चरण 6: ट्रैक का निर्माण

ट्रैक का निर्माण
ट्रैक का निर्माण

अब जबकि हमारे पास एक कार है जिसे हम चला सकते हैं, हमें इसे चलाने के लिए एक ट्रैक की आवश्यकता है।

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

हमें ट्रैक के लिए कुछ और वैरिएबल भी सेट करने होंगे।

फिर चलिए मेकट्रैक () नामक एक नया फ़ंक्शन बनाते हैं, फ़ंक्शन हमारे इमेज फोल्डर में नंगे.पीएनजी छवि का उपयोग करके बाईं ओर एक ट्रैक अभिनेता और एक दाईं ओर जोड़ देगा।

trackLeft = # लेफ्ट बैरीज़ को स्टोर करने के लिए लिस्ट

trackRight = # राइट बैरीज़ को स्टोर करने के लिए लिस्ट ट्रैककाउंट = 0 # बैरीज़ की संख्या गिनें ट्रैकपोजिशन = 350 ट्रैकविड्थ = 150 # लेफ्ट और राइट बैरीज़ के बीच की चौड़ाई मेकट्रैक (): # फंक्शन बायें और राइट ग्लोबल ट्रैककाउंट पर एक बैरी बनाने के लिए, ट्रैक लेफ्ट, ट्रैकराइट, ट्रैकपोजिशन, ट्रैकविड्थ ट्रैकलेफ्ट। एपेंड (अभिनेता ("बेयर", पॉस = (ट्रैकपोजिशन-ट्रैकविड्थ, 0))) ट्रैक राइट। एपेंड (अभिनेता ("बेयर", पॉस = (ट्रैकपोजिशन + ट्रैकविड्थ, 0))) ट्रैककाउंट +1

अगली चीज़ जो हमें करने की ज़रूरत है वह है ट्रैक के अनुभागों को स्क्रीन के नीचे कार की ओर ले जाना।

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

ट्रैकड्रिक्शन = गलत

स्पीड = 4 # रैंडम इंपोर्ट रैंडिंट से गेम की गति सेट करता है # रैंडिंट क्लास को रैंडम मॉड्यूल से आयात करें डीईएफ़ अपडेटट्रैक (): ग्लोबल ट्रैककाउंट, ट्रैकपोजिशन, ट्रैकडायरेक्शन, ट्रैकविड्थ, स्पीड बी = 0 जबकि बी 32: अगर ट्रैकडायरेक्शन == गलत: ट्रैकपोजिशन + = 16 अगर ट्रैकडायरेक्शन == सच: ट्रैकपोजिशन - = 16 अगर रैंडिंट (0, 4) == 1: ट्रैकडायरेक्शन = ट्रैक डायरेक्शन नहीं तो ट्रैकपोजिशन> 700 - ट्रैकविड्थ: ट्रैकडायरेक्शन = सही अगर ट्रैकपोजिशन < ट्रैकविड्थ: ट्रैकडायरेक्शन = गलत मेकट्रैक () # स्क्रीन के शीर्ष पर एक नया ट्रैक बनाएं

कृपया नीचे "रेसगेमडेमो" नाम की ज़िप फ़ाइल देखें।

यदि हम इस समय अपना कोड चलाते हैं, तो हमें एक ट्रैक को कार की ओर गिरते हुए देखना चाहिए। एकमात्र समस्या यह है कि हम कार को ट्रैक बैरियर पर ले जा सकते हैं और हम कुछ टक्कर का पता लगाने के साथ कार को उनके अंदर रखना चाहते हैं।

चरण 7: कार दुर्घटना

कार दुर्घटना
कार दुर्घटना
कार दुर्घटना
कार दुर्घटना
कार दुर्घटना
कार दुर्घटना

हमें यह सुनिश्चित करने की आवश्यकता है कि हमारी कार ट्रैक अभिनेताओं को नहीं छूती है।

हम अपने अपडेटट्रैक () फ़ंक्शन में कोलाइडरेक्ट () विधि का उपयोग करके टकराव के लिए भी परीक्षण कर सकते हैं।

इस खेल में हमारे पास हमारे चर gameStatus में संग्रहीत खेल के लिए तीन अलग-अलग राज्य होंगे:

  • गेमस्टैटस == 0 # गेम चल रहा है
  • गेमस्टैटस == 1 # कार दुर्घटना
  • gameStatus == 2 # खेल समाप्त

गेमस्टैटस वेरिएबल का जवाब देने के लिए हमें अपने ड्रा () फ़ंक्शन और हमारे अपडेट () फ़ंक्शन को बदलना होगा।

अंतिम समापन कार्य

यदि गेमस्टैटस 1 या 2 पर सेट है, तो हमें अब केवल कुछ प्रदर्शित करना है, उदाहरण के लिए हमें एक लाल रंग प्रदर्शित करना चाहिए

झंडा, अगर कार दुर्घटनाग्रस्त हो गई। हम नीचे दिए गए कोड के साथ ऐसा कर सकते हैं:

स्क्रीन.ब्लिट ("रेडफ्लैग", (230, 230))

यह देखने के लिए कि क्या कार खत्म हो गई है, हमें गिनना चाहिए कि कितने ट्रैक सेक्शन बनाए गए हैं और फिर शायद जब हम 200 पर पहुंचें, तो गेमस्टैटस को 2 पर सेट करें। फिर चेकर फ्लैग प्रदर्शित करें:

स्क्रीन.ब्लिट ("फिनिशफ्लैग", (230, 230))

हम स्क्रीन में कुछ टेक्स्ट भी प्रदर्शित करेंगे जैसे कि गेम का वर्तमान स्कोर।

यह सब एक साथ कैसे फिट बैठता है यह देखने के लिए पूर्ण कोड सूची पर एक नज़र डालें।

चरण 8: रास्पबेरी पाई पर गेम चलाएं

रास्पबेरी पाई पर गेम चलाएं
रास्पबेरी पाई पर गेम चलाएं
रास्पबेरी पाई पर गेम चलाएं
रास्पबेरी पाई पर गेम चलाएं

रास्पबेरी पाई पर pgzero को सितंबर 2015 में रास्पियन जेसी की रिलीज़ के बाद से डिफ़ॉल्ट रूप से स्थापित किया गया है।

बस कमांड का उपयोग करके अपने रास्पबेरी पाई को अपडेट करें:

सुडो एपीटी-अपडेट प्राप्त करें

अपने फ़ाइल स्थान पर जाएं और टर्मिनल में टाइप करें।

pgzrun.py

चरण 9: क्या आप जीत गए?

क्या तुम जीते?
क्या तुम जीते?

ट्रैक को एक अलग चौड़ाई बनाने के लिए आप ट्रैकविड्थ वैरिएबल को बदलकर गेम को आसान या कठिन बना सकते हैं। ट्रैक को तेज या धीमा करने के लिए आप स्पीड के मान को बदल सकते हैं।

चरण 10: निष्कर्ष

जो कोई भी कंप्यूटर गेम लिखना शुरू करना चाहता है, उसके लिए Pygame Zero एक बढ़िया विकल्प है।

यदि आपके पास कोई प्रश्न है तो आप एक टिप्पणी छोड़ सकते हैं। मेरे कार्यों के बारे में अधिक देखने के लिए कृपया मेरे चैनल पर जाएं:

माययूट्यूब

मेरा ट्विटर

Linkedin

इस निर्देशयोग्य ^^ को पढ़ने के लिए धन्यवाद और आपका दिन शुभ हो। फिर मिलेंगे। अहमद नूइरा।

सिफारिश की: