एक साधारण यूडीपी गेम के लिए क्या शामिल है?


17

मैंने एक बार एक हफ्ते में यूडीपी के साथ एक सरल खेल लिखने की कोशिश की थी। यह बुरी तरह से चला गया।

मैंने उसे जल्दी से फेंक दिया। मेरे पास मुख्य समस्या सभी खिलाड़ियों / दुश्मनों / वस्तुओं के खेल राज्य को एक पुरानी स्थिति में बहाल करना था और खेल को उस समय तक तेजी से आगे बढ़ाएं जब खिलाड़ी खेल रहा हो (यानी कूदने से पहले आधा सेकंड। थोड़ा जल्दी या देर से। खिलाड़ी को कूदने से चूकें)

शायद यह तरीका सबसे आसान तरीका नहीं है? मुझे संदेह है कि यह हो सकता है लेकिन मैंने शुरुआत से ही इसे गलत तरीके से डिजाइन किया और 2 वें दिन के अंत में महसूस किया। (इसलिए मैंने बहुत ज्यादा नहीं सीखा या उस समय को बर्बाद किया)

अपने और दूसरों के लिए, एक साधारण यूडीपी गेम के लिए क्या शामिल है और मैं एक कैसे लिख सकता हूं? या कैसे मैं ठीक से राज्य करने के लिए बहाल भविष्यवाणी समस्या को हल करते हैं।

मैं इसे सीडब्ल्यू बीसी के रूप में चिह्नित करूंगा, मुझे पता है कि बहुत सारे उपयोगी उत्तर होंगे।

जवाबों:


9

ग्लेन फिडलर ने इस पर लेखों का एक उत्कृष्ट सेट लिखा है , जो मूल अवधारणाओं के सभी को कवर करता है।


फ़्लोटिंग पॉइंट डिटरिनिज़्म आर्टिकल ने मेरा सिर उड़ा दिया। इसका बहुत बुरा Synchronizing State isn’t किया गया है, क्योंकि वह वही है जिसे मैं पढ़ना चाहता था। हालाँकि फ़्लोटिंग पॉइंट निर्धारकवाद बहुत सारे सवालों के जवाब देता है।

उन लेखों में से कोई भी राज्य-तुल्यकालन के बारे में गहराई से नहीं जाता है, जो वह पूछ रहा है
ब्लूराजा - डैनी पफ्लुगुफ्ट

3

अपना खुद का रोल करना शैक्षिक हो सकता है, लेकिन अगर आप मौजूदा कार्यान्वयन का लाभ उठा सकते हैं (या कम से कम वहां से शुरू करते हैं) तो आप अक्सर अधिक हो जाते हैं।

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

enet:

  • कनेक्शन प्रबंधन
  • अनुक्रमण
  • चैनल
  • विश्वसनीयता
  • विखंडन और जोखिम
  • एकत्रीकरण
  • अनुकूलन क्षमता
  • पोर्टेबिलिटी
  • आजादी

Raknet:

  • वस्तु प्रतिकृति
  • Autopatcher
  • सुरक्षित कनेक्शन
  • मजबूत संचार परत (मूल रूप से सभी एनेट की विशेषताएं एक आइटम में लुढ़की हुई हैं)
  • दूरस्थ प्रक्रिया कॉल
  • आवाज संचार
  • नट पंचर

एनेट के लिए +1, मैं क्लाइंट्स के लिए कुछ समय से इसका इस्तेमाल कर रहा हूं और उन्हें यह पसंद है।
लेन होल्गेट

वह राज्य तुल्यकालन के बारे में पूछ रहा है - इस जवाब का उस से कोई लेना-देना नहीं है
BlueRaja - Danny Pflughoeft

-1, ब्लूराजा के समान कारण
जोनाथन डिकिंसन

2

यदि आपके पास समय और ऊर्जा है, तो आप क्वेक 3 स्रोत को डाउनलोड कर सकते हैं और उसका अध्ययन कर सकते हैं। यदि आप सी के साथ सहज हैं, और साथ ही छेड़छाड़ करना आसान है, तो यह समझना काफी आसान है।

कौन से अन्य मल्टीप्लेयर गेम में स्रोत उपलब्ध है और यूडीपी का उपयोग करें?


1
एक लेख है जो कोड का भी वर्णन करता है। trabookbookhhook.com/bookofhook/trac.cgi/wiki/Quake3Networking
zuropa

0

यदि आप होमब्रे (जैसा कि मैंने किया था) जाते हैं, तो आप टन सीखना चाहते हैं - उस सामान के बारे में भी जिसे आप जानना नहीं चाहते थे। जैसे नेट नटवर। कैसपिन के अनुसार, एनट की याद आ रही है, लेकिन आप हमेशा कुछ ओपन सोर्स STUN कोड पा सकते हैं जो ज्यादातर स्थितियों में काम करता है।

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