खेल वास्तुकला के बारे में सीखने के लिए अच्छे संसाधन? [बन्द है]


104

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

एक बोनस के रूप में, खेल का प्रकार इसे कैसे प्रभावित करता है? उदाहरण के लिए, एक platformer और एक MMO में अंतर होगा।

जवाबों:


64

जेसन ग्रेगरी द्वारा गेम इंजन आर्किटेक्चर इस विषय में एक अच्छी किताब है। इसे खरीदने से पहले आप इसे Google Books में पढ़ सकते हैं ।


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

अछा लगता है। किताबें खरीदने के लिए मेरी सूची में जोड़ा गया।
कॉलिन गिस्लासन

1
यह मेरी पसंदीदा पुस्तकों में से एक है। एकमात्र समस्या जो मुझे लगी (जिसे लेखक ने पहचाना) ऑडियो पर बहुत विरल विवरण था।
स्लर्प्स मैड रिप्स

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

वाह, वह किताब बिल्कुल शानदार लग रही है।
NM01

39

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


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

2
यह एक जानबूझकर विकल्प है, लेकिन शायद यह आपकी बहुत मदद नहीं करता है। समस्या यह है कि हर खेल अलग है, विशेष रूप से शैलियों में, इसलिए जब तक आप वास्तव में सिर्फ कुछ मौजूदा खेल का क्लोन बनाने की कोशिश नहीं कर रहे हैं, तब तक कोई "यहाँ पूरी वास्तुकला नहीं बननी चाहिए"। मुझे लगता है कि आप जो सबसे अच्छा कर सकते हैं वह यह है कि "यहां बड़े टुकड़ों का एक गुच्छा है, जो आपको चाहिए उन्हें उठाएं और उन्हें हुक दें"। ग्राफिक्स, एआई आदि पर गेम प्रोग्रामिंग किताबें आपको बड़े टुकड़े देनी चाहिए। मेरी किताब का लक्ष्य आपको यह बताना है कि उन्हें कैसे हुक करना है।
उदार

1
हां, मैं यह जरूर समझता हूं। ज्यादातर सॉफ्टवेयर ऐसे ही होते हैं। मुझे लगता है कि मैं जिस चीज की तलाश कर रहा हूं उसका उदाहरण है कि यह कैसे किया गया है इसलिए मैं उन खेलों के लिए अधिक सूचित निर्णय ले सकता हूं जिन पर मैं काम करता हूं। पुस्तक / साइट पर शानदार काम, बी.टी.वी.
कॉलिन गिस्लासन

4
कृपया इस पुस्तक को समाप्त करें, यह अब तक अविश्वसनीय रूप से अच्छा है। मैं निश्चित रूप से एक पूर्ण संस्करण के लिए दान करने को तैयार रहूंगा :)
काइल सी

4
आपकी पुस्तक वास्तव में अच्छी लग रही है, इसे साझा करने के लिए धन्यवाद। मुझे आशा है कि आप इसे पूरा करेंगे!
GvS

15

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

बस परिचय के माध्यम से पढ़ें और बंद करें जब यह आपके स्वाद के लिए बहुत विस्तृत हो जाए;)


1
मैं इस का एक अच्छा हिस्सा के माध्यम से पढ़ा। बहुत सी जानकारी थी जो उपयोगी थी, भले ही यह बिल्कुल वैसा न हो जैसा मैंने पूछा था। लिंक के लिए धन्यवाद।
कॉलिन गिस्लासन

1
देखा कि लिंक टूट गया है और एक लिंक काम नहीं कर पा रहा है। अगर किसी को एक मिलता है, तो कृपया अपडेट करें, thx।
डेव ओ।

मैंने खोज के माध्यम से पृष्ठ चलाया और मुझे यह पता चला: gamedev.net/page/resources/_/reference/programming/…
DMan

14

गेम प्रोग्रामिंग: सीखने के लिए एक्सप्रेस लाइन एक बुनियादी गेम इंजन संरचना को एक अच्छा, शुरुआती स्तर का परिचय प्रदान करती है, जिसे लेखक "आईडिया / अलर्ट" कहता है:

  • मैं - आयात और प्रारंभ
  • डी - प्रदर्शन विन्यास
  • ई - संस्थाओं
  • ए - एक्शन (ALTER चरणों में टूट गया)
    • A - कुंजी चर के लिए मान निर्दिष्ट करें
    • एल - लूप (सेटअप मुख्य लूप)
    • टी - फ्रेम दर निर्धारित करने के लिए टाइमर
    • ई - इवेंट हैंडलिंग
    • आर - प्रदर्शन को ताज़ा करें

पुस्तक पायथन / Pygame में कार्यान्वित एक पूर्ण उदाहरण गेम के माध्यम से चलती है।


7

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


4

मेरे अच्छे दोस्त जोएल ने एक बात को पोस्ट किया जिसमें उन्होंने एक सम्मेलन में आर्किटेक्चर से संबंधित कुछ पीएस 1 गेम का उपयोग करके समाप्त किया। हालांकि बात विशिष्ट है, वह एक अच्छी वास्तुकला में देखने के लिए सामान्य सलाह के लिए यह सब वापस ला रहा है।

यहां बात करें: http://jdinolt.tumblr.com/post/756062883/hrraaah-ego-trippin-my-first-talk-at-the-igad


4

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


2

जेफ प्लमर "इलेक्ट्रॉनिक गेम्स के लिए एक लचीला और विस्तार योग्य वास्तुकला":

http://members.cox.net/jplummer/Writings/Writings.htm

विभिन्न गेम आर्किटेक्चर का अच्छा अवलोकन और तुलना।


1
यह साइट डाउन है, लेकिन पेज ने 380 पेज की थीसिस के साथ, जिसे प्लमर ने लिखा था, आर्काइव.ऑर्ग के माध्यम से उपलब्ध है। यह पढ़ना आसान है और एक शुरुआत के लिए बहुत जानकारीपूर्ण है!
फिलिप

1

मुझे लगता है कि समग्र वास्तु ज्ञान के लिए, अनुभव / परीक्षण / त्रुटि मुख्य संसाधन हैं।

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

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


0

दृश्य रेखांकन ftw। इनका उपयोग गेम लॉजिक के साथ-साथ रेंडरिंग के लिए भी किया जा सकता है और ये आपको अपनी पाइपलाइन को वास्तव में अनुकूलित करने देते हैं। यदि आप उनका उपयोग करने जा रहे हैं, तो आप इसे शुरू से करना चाहते हैं।


यदि आप उन "पहले व्यक्ति निशानेबाजों में से एक" बनाना चाहते हैं, तो दृश्य ग्राफ के लिए जाएं। यदि आप गेम बनाना चाहते हैं, तो अपने दिमाग का उपयोग करें। (मैं शिक्षण के लिए दृश्य ग्राफ़ का उपयोग करता हूं, लेकिन उत्पादन कोड के लिए कभी नहीं।)
एंड्रियास

1
उस पर विस्तार या एक लिंक प्रदान करने के लिए देखभाल?
दस

2
दृश्य ग्राफ़ - बस कोई कहना home.comcast.net/~tom_forsyth/...
NocturnDragon

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

0

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


मुझे नहीं लगता कि वे वास्तव में खेल वास्तुकला में जाते हैं।
काइलोटन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.