HTML / जावास्क्रिप्ट-आधारित खेल बनाने के लिए आवश्यक ज्ञान [बंद]


17

मैं सोच रहा था कि क्या कोई विशेषज्ञ वहां के ज्ञान और संसाधनों को साझा कर सकता है जो नवीनतम HTML मानकों और जावास्क्रिप्ट (या कुछ को HTML 5 को कॉल करना पसंद करता है) के साथ गेम बनाना शुरू करना आवश्यक है। क्या जावास्क्रिप्ट पुस्तकालय हैं जो प्रक्रिया के लिए आवश्यक हैं? <canvas>टैग के अलावा , HTML के अन्य टुकड़ों के बारे में हमें क्या पता होना चाहिए?

जवाबों:


9

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

पहले से ही कुछ जावास्क्रिप्ट एचटीएमएल 5 गेम फ्रेमवर्क हैं, अकिहबारा बल्कि लोकप्रिय है।

जहां तक ​​अन्य पुस्तकालयों के रूप में, जेकरी और फंक्शनल जावास्क्रिप्ट मेरे पसंदीदा में से 2 हैं।


प्रत्येक चौखटे की ताकत क्या है? कौन सा सबसे सरल और सबसे मजबूत कोड है? कार्यात्मक जावास्क्रिप्ट में "कार्यात्मक" शब्द दिलचस्प लगता है, यह वास्तव में क्या है? पाइथोनिस्ट को आप किस रूपरेखा का सुझाव देंगे?

वेब संग्रहण क्या प्रदान करता है कि एक db नहीं कर सकता है?
एक्सपर्टिनजा

@expiredninja एक डेटाबेस वास्तव में बेहतर होगा लेकिन वेब स्टोरेज उपयोगकर्ता की मशीन के लिए स्थानीय है। अजाक्स कॉल करने की तुलना में कोई होस्टिंग और तेज़ नहीं है। यह उत्तर आधुनिक ब्राउज़र आधारित खेलों के लिए उपयोग की जाने वाली तकनीकों के साथ (थोड़ा) पुराना है।
जदेसनो

6

कुछ फ्रेमवर्क पहले से ही हैं: GameQuery और Akihabara , जो कि jQuery के लिए कुछ गेम-संबंधित गतिविधियों को करने के लिए एक प्लगइन है, जैसे कि एनिमेशन, ग्रुपिंग स्प्राइट, टकराव का पता लगाना और प्लेयर इनपुट पढ़ना।


4

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

कुल मिलाकर, मैं <canvas>सीधे डीओएम हेरफेर पर टैग <div>लगाने की सलाह दूंगा (उदाहरण के लिए प्रत्येक को हिट-परीक्षण को आश्चर्यजनक रूप से सरल बनाने के लिए अपने स्वयं के स्प्राइट बनाने के लिए)। DOM मैनिप्युलेशन को गलत और बुरी तरह से परफॉर्म करना आसान है, जबकि पारंपरिक 2d डेवलपमेंट स्ट्रैटेजी एक HTML कैनवास पर अच्छी तरह से काम करती है।


3

कुछ गेम बनाने वाली रूपरेखाओं के अलावा, जो आपको वहाँ हैं, आपको बर्स्ट इंजन के बारे में पता होना चाहिए, जो एक HTML5 कैनवस में SVG- आधारित एनिमेशन प्रदर्शित करने के लिए JS फ्रेमवर्क है:

http://burst.bocoup.com/

अब तक मैंने लोगों को टैग्स और टैग्स का उल्लेख करते देखा है, लेकिन अन्य डोम चीजें हैं जो जेएस / एचटीएमएल गेम के विकास के लिए महत्वपूर्ण हैं, जिसमें 'मूसमोव' और 'मूसडाउन' जैसी चीजों के लिए तत्व में EventListener कॉलबैक को जोड़ना जैसे सामान शामिल हैं। उदाहरण के लिए, यह पहला कैनवास तत्व लेता है जो इसे ढूंढ सकता है और इसे सेट कर सकता है ताकि जब आप कैनवास पर क्लिक करें, तो यह एक फ़ंक्शन को कॉल करता है जिसे आपने "shootAtClick" कहा है:

document.getElementsByTagName ("CANVAS") [0] .addventventListener ('mousedown', shootAtClick, false);

आप इसे इस उदाहरण में एक्शन में देख सकते हैं जहां मैंने बुनियादी माउस नियंत्रण को स्वीकार करने के लिए अकिहबारा इंजन को बढ़ाया है। (शुरू करने के लिए Z दबाएं, स्थानांतरित करने के लिए तीर कुंजियों का उपयोग करें, कर्सर की दिशा में शूट करने के लिए माउस पर क्लिक करें।)


3

एचटीएमएल 5 घटकों का ज्ञान किस ब्राउज़र में समर्थित है।

हालांकि क्रॉस ब्राउज़र की संगतता बेहतर और अधिक समान हो रही है, क्योंकि समय के साथ कुछ नए घटक अभी भी पूरी तरह से समान रूप से समर्थित नहीं हैं।

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

वेब सॉकेट के साथ-साथ ब्राउज़र में विशिष्ट अंतर हो सकते हैं, लेकिन सॉकेट.आईओ एक आशाजनक पुस्तकालय जैसा दिखता है जो एक सुविधाजनक अमूर्तता प्रदान करता है।

ऑडियो संगतता एक बहुत बड़ा घटक है जिसके लिए अलग-अलग ब्राउज़रों के लिए अलग-अलग ध्वनि फ़ाइलों की आवश्यकता होती है: http://html5doctor.com/native-audio-in-the-browser/

Chrome में कुछ महत्वपूर्ण ऑडियो बग हैं, जैसे कि लघु ऑडियो फ़ाइलों को चलाने में असमर्थ होना , और कई एक साथ ध्वनियाँ बजाना पूरे ब्राउज़र को क्रैश कर सकता है।

मुख्य बात यह है कि ब्राउज़र मतभेदों को समझना, पुस्तकालयों का उपयोग करना और आवश्यकतानुसार विरासत का समर्थन प्रदान करना है।


1

HTML और जावास्क्रिप्ट गेम के विकास के लिए ईमानदारी से काफी बुरे प्लेटफॉर्म हैं, लेकिन जब तक आप एक तरह के गेम पर निर्णय नहीं लेते हैं, तब तक कोई फर्क नहीं पड़ता। उत्तर पहले व्यक्ति शूटर, एक आरटीएस या एक पहेली गेम के लिए मौलिक रूप से अलग होगा।

ध्यान दें कि आप अस्पष्ट लगने लगे हैं, हाथ से लहराने वाले जवाब बेतरतीब प्रौद्योगिकियों से झुनझुने लगते हैं जो साफ-सुथरे लगते हैं। यह एक चेतावनी संकेत है कि आपने एक विशेष रूप से वैध जवाब के साथ एक सवाल नहीं पूछा है।

आप यह भी पूछ सकते हैं कि आपको एप्लिकेशन लिखने के लिए कौन सी C ++ सामग्री चाहिए। वह निर्भर करता है। हमें परियोजना के बारे में और बताएं, और आपको एक उपयोगी उत्तर मिल सकता है।

कुल मिलाकर, वहाँ एक कारण है कि लगभग सभी वेब गेम अभी भी फ्लैश हैं।


4
मैं सहमत हूँ कि सवाल अस्पष्ट है और सभी जगह जवाब है, लेकिन असहमत हैं कि "HTML और [JS] हैं ... खेल के विकास के लिए बुरे मंच।" Google का पैक-मैन डूडल याद है? सीधे HTML और JS। मुझे लगता है कि एक निश्चित प्रकार का आकस्मिक खेल उस मंच पर बहुत अच्छा काम करता है, और वेब-उपयोग करने वाले मनुष्यों के पास पहले से ही रनटाइम है। (=
२१:०४ पर

1
वाह, पीएसी-मैन। अभूतपूर्व। टेक डेमोस के अलावा कुछ भी गेमिंग में HTML / JS का उपयोग करने का कोई कारण नहीं है।
जॉन हॉगलैंड

1
@ एडमंडिटो: यदि ऐसा है तो आपको लगता है कि इस 'प्रश्न' को जाना चाहिए, इसे सीडब्ल्यू के रूप में चिह्नित किया जाना चाहिए।
जेसी दोर्से

12
-1 बेकार जवाब। यदि आपकी राय है कि वेब गेम एक अच्छा प्लेटफॉर्म नहीं है तो बैठ जाइए। मुझे नहीं पता कि इसे इतने सारे अपवित्र क्यों मिले, हो सकता है कि अन्य लोग आपकी राय साझा करें लेकिन यह इस सवाल का जवाब देने में योगदान नहीं करता है।
R

1
दोस्तों, बाहर उग्रता छोड़ दें। इसका जवाब 2010 में आज की तुलना में बहुत अलग था। 2014 में अभी मेरे पास HTML गेम्स का एक समूह है।
जॉन हौगलैंड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.