ฉันไม่เคยเห็นเกม MMO ใด ๆ ที่มีรถถังที่มีฟิสิกส์สมจริงและสามารถบรรลุความเร็วสูงได้ทำไม? เป็นเพราะข้อ จำกัด แบนด์วิดท์เครือข่ายหรือไม่
Second Life มียานพาหนะ แต่ฟิสิกส์นั้นแย่และความเร็วสูงสุดนั้นน่าสมเพช
ฉันไม่เคยเห็นเกม MMO ใด ๆ ที่มีรถถังที่มีฟิสิกส์สมจริงและสามารถบรรลุความเร็วสูงได้ทำไม? เป็นเพราะข้อ จำกัด แบนด์วิดท์เครือข่ายหรือไม่
Second Life มียานพาหนะ แต่ฟิสิกส์นั้นแย่และความเร็วสูงสุดนั้นน่าสมเพช
คำตอบ:
ใช่และไม่ใช่ (แต่ส่วนใหญ่ไม่ใช่)
เกม MMO ใด ๆ มีข้อ จำกัด หลายประการที่ส่งผลกระทบต่อฟิสิกส์ ที่สำคัญที่สุดของเหล่านี้คือความล่าช้า เวลาในการตอบสนองคือเวลาที่ไคลเอนต์ส่งคำขอไปยังเซิร์ฟเวอร์และรับคำตอบกลับ แม้ในสถานการณ์ที่ดีที่สุดเวลานี้อยู่ที่ประมาณ 50-100 มิลลิวินาที ในโลกแห่งความเป็นจริงมันอาจสูงถึง 500 ms ซึ่งหมายความว่าเมื่อใดก็ตามที่ผู้เล่นทำอะไรบางอย่างเช่นหมุนล้อรถเขาจะเห็นว่าเกมตอบสนองต่อมันเพียง 100-500 มิลลิวินาที
100 ms นั้นค่อนข้างมากจริงๆ เกมใดก็ตามที่มีเวลาแฝงมากจะรู้สึกไม่ตอบสนองและ 500 ms จะไม่สามารถเล่นได้อย่างจริงจัง นั่นเป็นสาเหตุที่ลูกค้าเกมใช้ลูกเล่นมากมายเพื่อปกปิดความหน่วงแฝงนี้ ตัวอย่างเช่นรถของผู้เล่นสามารถเริ่มเปลี่ยนเวลาที่เขาหมุนวงล้อโดยไม่ต้องรอเซิร์ฟเวอร์ อย่างไรก็ตามเทคนิคเหล่านี้ปิดบังความล่าช้าเท่านั้นและไม่สามารถลดได้จริง
ตัวอย่างเช่นสมมติว่าเรามีผู้เล่นสองคนในการขับขี่รถยนต์พร้อมกัน ลูกค้าแต่ละรายจะเริ่มเปลี่ยนรถของตัวเองทันที แต่รถของผู้เล่นคนอื่นจะไม่เลี้ยว - เพราะข้อมูลที่เปลี่ยนไปนั้นยังไม่ถึงลูกค้าเพราะความล่าช้า ผู้เล่นทั้งสองขับรถของพวกเขาอย่างมีความสุขแล้วแบม! - เซิร์ฟเวอร์สังเกตว่าพวกเขาชนกันจริง ๆ
สถานการณ์เช่นนี้ไม่สามารถป้องกันได้ ไม่ว่าเราจะใช้แผนการทำนายที่ฉลาดแค่ไหนที่มีผู้เล่นคนอื่น ๆ ก็มีโอกาสที่จะเกิดความผิดพลาดได้เสมอ ในเกม MMO ใด ๆ ประมาณครึ่งวินาทีที่คุณเพิ่งเห็นยังไม่ได้เกิดขึ้นจริงและสามารถเปลี่ยนแปลงได้ในทุกเวลา ตอนนี้ในเกมที่ช้าลงอย่าง MMORPG ดั้งเดิมแล้วครึ่งวินาทีนั้นไม่นานนัก ตัวละครอาจเคลื่อนไหวเพียงหนึ่งหรือสองเมตรในช่วงเวลานี้ อย่างไรก็ตามหากเรากำลังพูดถึงการแข่งรถเร็วครึ่งวินาทีนั้นเป็นเวลาที่ยาวนานจริงๆ! คุณสามารถพังได้เช่นเดียวกับสามครั้งในครึ่งวินาที (-8
ที่จริงแล้วเกมที่รวดเร็วสามารถทำงานได้แม้มีข้อ จำกัด เหล่านี้ มันจะมีช่วงเวลาที่ไม่เป็นที่พอใจ แต่ตราบใดที่ผู้เล่นทุกคนมีการเชื่อมต่อที่ดีมันจะสามารถเล่นได้ นั่นเป็นวิธีที่เกมแข่งรถแบบผู้เล่นหลายคนทำงาน อย่างไรก็ตามมีข้อ จำกัด MMO อื่น: จำนวนการอัพเดต N-squared
ลองนึกภาพผู้เล่น 10 คนเล่นพร้อมกัน เพื่อให้พวกเขาเห็นกันเซิร์ฟเวอร์ต้องส่งข้อมูลผู้เล่นทุกคนเกี่ยวกับผู้เล่นอื่น ในตัวอย่างของเรา 10x10 = ข้อมูล 100 ชิ้นเพื่อเตรียมและส่ง นั่นคือจำนวนผู้เล่นยกกำลังสองดังนั้น "N-squared" จำนวนนี้เติบโตค่อนข้างเร็วและแม้แต่ MMORPG ดั้งเดิมก็เริ่มต่อสู้เมื่อมีผู้เล่นจำนวนมากในพื้นที่เดียวกัน สำหรับเกมที่มีจินตนาการอย่างรวดเร็วของเราที่มีรถยนต์ข้อมูลเหล่านี้จะต้องส่งเร็วกว่าในเกมที่ช้ากว่ามาก และพวกเขาอาจจะใหญ่กว่า - คุณได้ส่งตำแหน่งไม่เพียง แต่ความเร็วความเร็วการเร่งความเร็วเชิงมุมเป็นต้นซึ่งหมายความว่าเกมที่มีผู้เล่นหลายคนที่รวดเร็วจะมีผู้เล่นจำนวน จำกัด
โดยหลักการแล้วปัญหาทั้งสองข้างต้นไม่สามารถแก้ไขได้โดยซอฟต์แวร์ แต่ใช้เพียงบางส่วนเท่านั้น พวกเขาสามารถลดลงได้เล็กน้อยโดย จำกัด จำนวนผู้เล่น - ตัวอย่างเช่นเกมที่มีการใช้รถเร็วในกรณีที่มีจำนวนผู้เล่น จำกัด อาจทำได้ ฉันเชื่อว่านั่นคือสิ่งที่ APB ทำ แต่เกม MMO แบบโอเพ่นเวิร์ลที่เต็มไปด้วยรถยนต์ที่รวดเร็วนั้นจะไม่เกิดขึ้น ไม่ได้จนกว่าเราจะมีส่วนต่อประสานเครือข่ายควอนตัมหรืออะไรบางอย่าง
ใช่.
คุณต้องจัดการกับเวลาแฝงของเครือข่ายและซิงค์สถานะเกมผ่านเครือข่าย ยิ่งรถเคลื่อนที่เร็วเท่าไหร่เครือข่ายก็จะยิ่งแฝงมากขึ้นเท่านั้น ผู้เล่นอาจชนเข้ากับกำแพงเนื่องจากไคลเอ็นต์เกมไม่สามารถอัปเดตสถานะเกมบนเซิร์ฟเวอร์เนื่องจากปัญหาเครือข่าย ซึ่งไม่เป็นปัญหาเมื่อผู้เล่นเคลื่อนที่ด้วยความเร็วในการเดิน ;-)
เซิร์ฟเวอร์ MMO มีภาระมากขึ้น เกมแข่งรถแบบผู้เล่นหลายคนอาจทำงานได้ดีกับผู้เล่น 10 คนที่เชื่อมต่อกัน แต่จะล้มเหลวและเบิร์นหากเซิร์ฟเวอร์ไม่ตอบสนองภายใต้ภาระหนักจากผู้ใช้หลายร้อยคน
ฟิสิกส์ยานพาหนะของ Second Life นั้นมีการใช้งานไม่ดี (สิ่งนี้ยังมีชีวิตอยู่หรือไม่)
Garry's Mod นั้นค่อนข้างฟิสิกส์ทั้งหมด ฉันไม่คิดว่ามันจะนับเป็น MMO เช่นนี้ - แม้ว่ามันจะรองรับผู้เล่น 32 คนต่อเซิร์ฟเวอร์ - และนั่นเป็นฟิสิกส์ที่สมจริงที่สุดที่ฉันเคยเห็น (ไม่ใช่แค่ยานพาหนะ)
ฉันเดาว่าไม่ได้มี MMO ที่ออกแบบมาโดยคำนึงถึงฟิสิกส์เป็นหลัก
พวกเขาพยายามทำสิ่งนี้ให้สำเร็จในการล้มเหลวครั้งใหญ่ของเกมที่เรียกว่ากระดานข่าวทุกจุด แนวคิดก็ดีการประหารชีวิตก็ไม่มาก รถสุ่มจะปรากฏออกมาจากที่ไหนเลย คุณจะขับรถและชนกำแพงซึ่งจะเปลี่ยนเป็นรถยนต์ ฉันสามารถเห็นมันถูกทำอย่างใดในห้าปีถัดไปแม้ว่า cpu เพิ่มเติมน้อยกว่า gpu
ลองดูที่การอ้างอิงของคุณก่อน
GTA เองมีปัญหาเล็กน้อยกับผู้เล่นหลายคน แต่คาดว่าจะเป็นเช่นนี้ ตัวอย่างคือเมื่อเวลาแฝงเปลี่ยนรถของคุณให้เป็นฝันร้าย บางครั้งผู้เล่นฆ่ากันเองเพราะความล่าช้า
แต่ความหน่วงแฝงไม่ใช่ปัญหาเพียงอย่างเดียวคุณไม่สามารถเรียกใช้ MMO กับลูกค้าได้เท่านั้นคุณต้องใช้เซิร์ฟเวอร์และเซิร์ฟเวอร์เหล่านี้ต้องจัดการส่วนใหญ่ถ้าไม่ใช่ทุกวิชาเพื่อหลีกเลี่ยงการโกง
ลองนึกภาพว่าต้องทำงานกับผู้เล่นหลายพันคน ลองจินตนาการถึงความเครียดของซีพียูในระหว่างการทำกิจกรรมต่าง ๆ คุณสามารถชดเชยความเครียดที่เกิดขึ้นกับGPU เฉพาะได้ Bullet Physicsมีการนำไปใช้งานบน CPU
แต่เพื่อหลีกเลี่ยงการโอเวอร์โหลดในเซิร์ฟเวอร์คุณจะต้องใช้กลไกในการจัดการการกำหนดพื้นที่แบบไดนามิกขึ้นอยู่กับความหนาแน่นของผู้เล่น ในกรณีนี้มีความสำคัญมากกว่า MMO อื่น ๆ
มันเป็นไปได้ ปัญหาที่นี่คือความต้องการในการปรับขนาดเกมเพื่อรองรับผู้เล่นมากขึ้นและเพื่อใช้งานอินสแตนซ์หลักของเกมที่แจกจ่ายข้ามเซิร์ฟเวอร์
หากคุณจัดการเพื่อเพิ่มประสิทธิภาพฟิสิกส์ของคุณถ่ายโอนวัตถุได้อย่างรวดเร็วและมีประสิทธิภาพในเซิร์ฟเวอร์และหาวิธีหลีกเลี่ยงฝูงชนขนาดใหญ่ (ตัวอย่างเช่น) จากนั้นคุณสามารถทำได้โดยมีข้อ จำกัด ที่คล้ายกันเช่นการอ้างอิงของคุณและอื่น ๆ ของเกม
โปรดจำไว้ว่าคุณไม่จำเป็นต้องส่งการอัพเดทสถานะเกมทั้งหมดให้ผู้เล่นทุกคนตลอดเวลาเพียงแค่การเปลี่ยนแปลงที่เกี่ยวข้องกับผู้เล่นทันทีควรส่งอย่างต่อเนื่องส่วนที่เหลือสามารถส่งในอัตราที่ต่ำกว่า
ตรวจสอบโหมด gta 5 rage mp อายุรัสเซียแดงหรือบทบาทสมมุติ FiveStar มีผู้เล่นสูงสุดถึง 1200 ผู้เล่นสูงสุด 1600 คนที่เซิร์ฟเวอร์เดียวน่าประทับใจ แต่พวกเขาก็พยายามเพิ่มการรับส่งข้อมูล AI ด้วยรุ่น 0.4