2010-05-13 12 views
5

आप Dizzy-like साहसिक गेम के लिए गेम स्तर कैसे स्टोर करेंगे? आप चलने योग्य क्षेत्रों और ग्राफिक्स को कैसे निर्दिष्ट करेंगे? क्या यह टाइल-आधारित, पिक्सेल-आधारित या चलने योग्य सतहों को वैक्टर द्वारा वर्णित किया जा सकता है?चक्करदार खेल स्तर का प्रतिनिधित्व (प्रारूप)

उत्तर

4

बहुत पुराने साहसिक गेम (जैसे 80 के दशक से सिएरा की खोजों) वास्तव में पूरी स्क्रीन का एक अलग बिटमैप बनाए रखने के लिए उपयोग किया जाता था जो कि यह निर्धारित करने के लिए जेड-गहराई और सामग्री का प्रतिनिधित्व करता था कि आपका चरित्र कहां जा सकता है और यह कहां छिपा होगा। वे पिक्सेल नमूनाकरण का उपयोग यह जांचने के लिए करेंगे कि उनके छोटे sprites कहाँ जाना होगा।

हालांकि मौजूदा मशीनें तेज हैं, लंबी तरफ स्क्रॉलिंग स्तर इस प्रकार के दृष्टिकोण को अव्यवहारिक, IMHO बनाते हैं। आपको अधिक स्पैस प्रस्तुतिकरणों के साथ जाना होगा।

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

एक दूसरा विकल्प कुछ वेक्टर प्रतिनिधित्व के माध्यम से गेम की दुनिया का प्रतिनिधित्व करना और कुछ टकराव का पता लगाने के लिए है। मैं व्यक्तिगत रूप से दूसरे समाधान के साथ जाऊंगा, विशेष रूप से यदि आप स्मार्ट डेटा को एक्सेस करने के लिए अपने डेटा संरचनाओं को व्यवस्थित करने के तरीके के बारे में समझदार हो सकते हैं (उदाहरण के लिए, अपने पात्रों की वर्तमान स्थिति के नजदीक विश्व तत्वों के सबसेट में तेजी से पहुंच हो)।

मुझे आश्चर्य नहीं होगा अगर 2 डी गेम इंजन उपलब्ध हैं जो इस तरह की क्षमता प्रदान करते हैं, क्योंकि निश्चित रूप से 3 डी इंजन ऐसा करते हैं। वास्तव में, आपको मौजूदा 3 डी गेम इंजन का उपयोग करना आसान हो सकता है और 2 डी प्रस्तुत करने के लिए इसका उपयोग करना आसान हो सकता है।

3

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

colour |  z map   | collision 
-------|--------------------|--------------- 
black | draw dizzy infront | collide 
white | draw dizzy behind | don't collide 

भंडारण इन मोनोक्रोम छवियों भी राम का एक बहुत बचाने के लिए कर रहे हैं।

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

+0

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

1

वह विशिष्ट गेम एक टाइल-आधारित गेम है, जिसमें पिक्सेल सही टकराव है। टक्कर टाइल (चमक) के रंग बाइट में एक बिट द्वारा नियंत्रित किया गया था और आप रंग के चमकते बिट को सेट करके टाइल को भी दर्पण कर सकते थे।

टाइल्स, तथापि, केवल पर भी एक्स रखा जा सकता है, वाई निर्देशांक (मुझे लगता है इस टक्कर प्रणाली एक सा मदद करने के लिए किया गया था।)

टक्कर प्रणाली नायक के चारों ओर एक लगातार जांच शामिल किया गया। नियम मोटे तौर पर थे: - यदि यह नायक के नीचे एक गैर-टक्कर पिक्सेल पंक्ति पाता है, तो उसने नायक को 1 पिक्सेल से गिरा दिया। - यदि नायक के साथ टक्कर छेड़छाड़ है, तो उसने नायक को 1 पिक्सेल से उठाया। - बाएं या दाएं स्थानांतरित होने पर, यह उस दिशा में जांचता है और यदि: - अगर दीवार (टकराव की ऊंचाई 4 पिक्सेल से अधिक) पाती है, तो उस दिशा में आंदोलन को नकारें; - यदि यह एक चढ़ाई योग्य बॉक्स (टक्कर ऊंचाई 4 पिक्सेल तक) पाता है, तो उस दिशा में आंदोलन की अनुमति दें। - यदि पर्याप्त हेडरूम कूदने की अनुमति देता है, तो, आखिरी संभव खाली स्थिति पर रुकें।

इन सरल नियमों को संयोजित करते समय, आपने अतिरिक्त कर लगाने के बिना मनमाने ढंग से ढलानों तक चलने में सक्षम एक बहुत चिकनी टकराव बातचीत प्राप्त की।

इस तरह के एक गेम बनाने में, मैं व्यक्तिगत टाइल्स का उपयोग करता हूं, मैं उन्हें परतों (पृष्ठभूमि, अग्रभूमि आदि ...) पर इकट्ठा करता हूं और उन्हें प्रस्तुत करता हूं। मैं टाईल्स विशेषताओं से एक अलग टकराव मानचित्र इकट्ठा करूंगा जो टकराव टाइल इंगित करता है, और मैं नायक की टकराव और आंदोलन पर बातचीत करने के लिए उस अलग मानचित्र का उपयोग करूंगा।

इस डेमो के समान: http://games.catevaclickuri.ro/

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