LAN या इंटरनेट पर डेटा ट्रांसफर
जब आप XNA गेम स्टूडियो के साथ नेटवर्क गेम बनाते हैं तो दो प्रकार के ऑनलाइन मल्टीप्लेयर गेम उपलब्ध हैं:
- सिस्टम लिंक गेम सत्र (LAN)
- लाइव सत्र। (इंटरनेट)
उपलब्ध सत्र प्रकार :
- लोकल एरिया नेटवर्क गेमप्ले के लिए सिस्टम लिंक का उपयोग करें
- Xbox LIVE और Windows के लिए खेलों में साइन इन करें - LIVE सर्वर
- खेल के विकास के दौरान इंटरनेट पर अन्य मशीनों से कनेक्ट करने के लिए LIVE का उपयोग करें
कनेक्ट किए गए Xbox और PC इकाइयों के बीच डेटा ट्रांसफर को LocalNetworkGamer वर्ग (Xbox 360 पर समर्थित) का उपयोग करके कार्यान्वित किया जाता है और डेटा एक PacketWriter का उपयोग करके लिखा जाता है:
foreach (LocalNetworkGamer gamer in session.LocalGamers)
{
// Get the tank associated with this player.
Tank myTank = gamer.Tag as Tank;
// Write the data.
packetWriter.Write(myTank.Position);
packetWriter.Write(myTank.TankRotation);
packetWriter.Write(myTank.TurretRotation);
packetWriter.Write(myTank.IsFiring);
packetWriter.Write(myTank.Health);
// Send it to everyone.
gamer.SendData(packetWriter, SendDataOptions.None);
}
नेटवर्क टोपोलॉजी
सिस्टम लिंक गेम के लिए, आप नेटवर्क गेम का परीक्षण करने के लिए निम्न हार्डवेयर कॉन्फ़िगरेशन में से किसी एक का उपयोग कर सकते हैं :
एक विकास कंप्यूटर और एक Xbox 360
(विकास कंप्यूटर पर खेल का एक उदाहरण और Xbox 360 पर चल रहा है)। निर्माता को Xbox 360 पर कोड चलाने के लिए एक Xbox LIVE रजत और एक निर्माता क्लब सदस्यता की आवश्यकता होती है।
एक विकास कंप्यूटर और एक क्लाइंट कंप्यूटर
(प्रत्येक कंप्यूटर पर गेम का एक उदाहरण चलाना)। निर्माता एक ही समय पर एक ही कंप्यूटर पर दो नेटवर्क वाले XNA फ्रेमवर्क गेम नहीं चला सकते हैं। परीक्षण उद्देश्यों के लिए दूसरा गेम इंस्टेंस चलाने के लिए रचनाकारों को दूसरी मशीन की आवश्यकता होती है। इस परिदृश्य के लिए कोई Xbox LIVE सदस्यता या निर्माता क्लब सदस्यता आवश्यक नहीं है।
एक विकास कंप्यूटर और दो Xbox 360 कंसोल
(प्रत्येक Xbox 360 पर गेम का एक उदाहरण चल रहा है)। यहाँ एक निर्माता ने दो Xbox 360s पर गेम को डिप्लॉय और डिबग किया। इस परिदृश्य के लिए निर्माता को कम से कम दो Xbox LIVE सिल्वर सदस्यता और दो निर्माता क्लब सदस्यता (प्रत्येक Xbox 360 के लिए एक जोड़ी) की आवश्यकता होती है।
नेटवर्क पर वॉइस ट्रांसफर
वॉयस डेटा स्वचालित रूप से प्रसारित किया जाता है और किसी भी शीर्षक प्रयास के बिना दोहराया जाता है। टीम चैट या निकटता की आवाज़ को लागू करने के लिए टाइटल इसका उपयोग कर सकते हैं।
XNA फ्रेमवर्क वॉयस डेटा स्ट्रीम में सीधे प्रोग्राम एक्सेस को उजागर नहीं करता है।
- क्या उनके पास वॉयस एक्सेस है? - NetworkGamer.HasVoice
- क्या वे वर्तमान में बात कर रहे हैं? - NetworkGamer.IsTalking
- क्या वे मौन हैं? - NetworkGamer.IsMutedByLocalUser