ฉันจะขอบคุณกาแฟสักแก้วถ้าคุณใช้การขนส่งนี้ในโครงการของคุณและคุณต้องการช่วยเก็บบิลค่าใช้จ่ายของฉันและเปิดไฟ
"อาจเป็นการขนส่งที่เร็วที่สุดสำหรับ Mirror..." - FSE_Vincenzo, 2021 (Mirror Discord)
Ignorance คือการขนส่งบนพื้นฐาน UDP ที่มีประสิทธิภาพสูงซึ่งเสียบเข้ากับ Mirror Networking ด้วยการควบคุมพลังของไลบรารีเนทิฟ ENet ที่ผ่านการทดลองและเป็นจริง ทำให้มีการสื่อสาร UDP ที่เชื่อถือได้และไม่น่าเชื่อถือพร้อมเพียร์ที่เชื่อมต่อสูงสุด 4,096 เครื่อง (ไคลเอนต์) และ 255 ช่องสัญญาณ UDP ที่เชื่อถือได้มีประโยชน์มากมายเหนือ TCP ซึ่งเป็นค่าเริ่มต้นใน Mirror จนกระทั่งมีการใช้ KCP
ประโยชน์ของการไม่รู้คือคุณสามารถใช้ช่องทางที่ช่วยให้คุณสามารถแยกการสื่อสารเครือข่ายได้ สิ่งนี้ช่วยให้คุณมีช่องสำหรับข้อมูลที่มีความสำคัญต่อภารกิจและต้องส่งออกไปนอกประตูโดยเร็วที่สุด เช่นเดียวกับช่องทางที่สามารถส่งข้อมูลที่ไม่จำเป็นได้ช้ากว่า
ขณะนี้ Ignorance 1.4 อยู่ในการสนับสนุนระยะยาว ซึ่งหมายความว่าไม่มีการวางแผนคุณสมบัติใหม่ การแก้ไขข้อบกพร่องจะได้รับการจัดลำดับความสำคัญและจะได้รับการแก้ไขเมื่อฉันมีเวลาว่าง
หากคุณมีรายงานข้อผิดพลาดเร่งด่วน คุณก็ควรพิจารณาการสนับสนุน สิ่งนี้จะช่วยให้ฉันใช้เวลาห่างจากกิจกรรมทางธุรกิจและจัดลำดับความสำคัญของรายงานข้อผิดพลาด
ความไม่รู้ได้รับอนุญาตภายใต้ใบอนุญาต MIT อย่างไรก็ตาม มีกรณีล่าสุดที่นักพัฒนารายอื่นใช้แหล่ง Ignorance เต็มรูปแบบหรือบางส่วน โดยเพิกถอนใบอนุญาต MIT และตบใบอนุญาตของตนเองแทน
สิ่งนี้ถือเป็นการละเมิดใบอนุญาตของ MIT เนื่องจากระบุไว้อย่างชัดเจนว่าประกาศเกี่ยวกับลิขสิทธิ์จะต้องคงอยู่ครบถ้วน กล่าวโดยสรุป อย่าเป็นขโมยรหัสและเคารพใบอนุญาต MIT
Ignorance 1.4 LTS จะไม่ทำงานกับ Mirror เวอร์ชันเก่า คุณสามารถแบ็คพอร์ต 1.4 LTS ไปยังโปรเจ็กต์ Mirror รุ่นเก่าของคุณได้ แต่การสนับสนุนนั้นขึ้นอยู่กับคุณ
ดาวน์โหลด Unity Package จาก Releases ที่เป็นเวอร์ชันล่าสุด เพียงนำเข้า Unity Package แล้ว Unity จะดำเนินการส่วนที่เหลือ ทำตามคำแนะนำด้านล่าง
หรือคุณสามารถใช้โค้ดจากสาขาหลักซึ่งมักจะเป็นข้อมูลล่าสุดเมื่อเทียบกับรุ่นต่างๆ
ฉันได้รวมฉากตัวอย่างที่กำหนดค่าไว้ล่วงหน้าไว้สองฉากเพื่อให้คุณสามารถเริ่มต้นได้อย่างง่ายดาย อันหนึ่งคือ Pong อันหนึ่งคือก็อปปี้เพสต์ซึ่งมีการแก้ไขฉากพื้นฐานของ Mirror บางส่วน หรือเพิ่มสคริปต์ที่เรียกว่า Ignorance ให้กับออบเจ็กต์ NetworkManager ของคุณ โดยลบการขนส่งที่ใช้ TCP หรือ UDP อื่น ๆ (เช่น kcp2k) จากนั้นตั้งค่าสคริปต์ที่จะใช้ในช่อง "การขนส่ง" ของ NetworkManagers
ดูเอกสารประกอบ.md.
สำหรับ Ignorance Standalone ดูที่ STANDALONE.md
สำหรับคำถามที่พบบ่อย (หรือที่เรียกว่า โปรดอ่านข้อมูลนี้ก่อน) โปรดดูที่ FAQ.md
หากคุณกำลังใช้สแต็กเครือข่ายของคุณเองหรือกำลังพยายามลดระดับ Ignorance ไปยังโซลูชันเครือข่ายอื่นที่มีอยู่แล้ว คุณจะดีกว่า มาก หากใช้ ENet-CSharp wrapper เพื่อพูดคุยกับ ENet โดยตรง คุณสามารถลองใช้ Ignorance Standalone ซึ่งกล่าวไว้ข้างต้นได้
หากคุณเป็นเจ้าของสำเนา Population One ขอแสดงความยินดีด้วย เกมนั้นใช้ Ignorance เป็นเลเยอร์การขนส่งเครือข่ายหลัก นอกจากนี้ยังได้รับตำแหน่งในเกมหลักเกมแรกที่ใช้ Ignorance
ความไม่รู้ถูกนำมาใช้ในการสาธิตการจำลองการเดิน "Vinesauce is Hope" ซึ่งมีเซิร์ฟเวอร์หลายอินสแตนซ์ที่ทำงานด้วย CCU มากกว่า 300 ตัวต่อตัว คลิปวิดีโอมีอยู่ที่นี่
สิ่งสำคัญ: ไม่รองรับเป้าหมายเดสก์ท็อป 32 บิต ไม่รองรับ Macintoshes ที่มีชิป M1 (ARM64/AArch64) เช่นกัน Rosetta อาจจะ ได้ผล
แพลตฟอร์มที่รองรับ พร้อมใช้งานทันที:
แพลตฟอร์มเดสก์ท็อป 64 บิต (Windows/Mac/Linux), Android (ARMv7/ARM64) รวมถึงอุปกรณ์ VR และ iOS (ARMv7/ARM64)
หาก ENet Native สามารถรันบนมันได้และได้รับการสนับสนุนจาก Unity คุณก็สามารถเลือกใช้ Ignorance ได้
ผู้ใช้อุปกรณ์ Apple M1 ต้องคอมไพล์ ENet Native ใหม่สำหรับโปรเซสเซอร์ M1 ของตน การใช้ Ignorance ทันทีจะทำให้ไม่สามารถโหลดไลบรารี x86_64 บน Apple Silicon ได้ โรเซตตาอาจได้ผล แต่ไม่มีคำสัญญาใดๆ
แพลตฟอร์มอื่นๆ ที่ต้องมีการทำงานเพิ่มเติม:
สำหรับข้อมูลเพิ่มเติม โปรดดูคำถามที่พบบ่อย
ตรวจสอบรายงานข้อผิดพลาดที่เปิดอยู่ในปัจจุบัน และ/หรือรายงานข้อผิดพลาดใหม่ได้ที่นี่
หากล้มเหลวคุณสามารถติดตามฉันได้เสมอในความไม่ลงรอยกันของ Oiran Studio หรือ Mirror Discord
จุดบกพร่องที่มีรายละเอียดไม่เพียงพอจะถูกปิดหรือจัดลำดับความสำคัญต่ำ รายละเอียดเช่น OS, เวอร์ชัน Unity Editor, ข้อผิดพลาด Ignorance ฯลฯ เป็นสิ่งจำเป็นสำหรับรายงานข้อบกพร่องที่ดี
นี่เป็นไพรเมอร์สั้นๆ นะคะ.. อาจจะล้าสมัยไปบ้างแต่ก็ครอบคลุมพื้นฐานของ Ignorance ค่ะ
ผู้บริจาค : ขอบคุณที่ช่วยเปิดไฟ
FSE_Vincenzo: ปรมาจารย์ประจำ ENet พวกเขาเป็นส่วนหนึ่งของ Flying Squirrel Entertainment ลองเข้าไปดูเกมของพวกเขาสิ
JesusLuvsYooh : โปรเจ็กต์การทดสอบความทนทานของ CCU แนวคิด การแก้ไข และสิ่งที่ยอดเยี่ยมอื่นๆ
Katori: ช่วยเริ่มต้นเวอร์ชันเธรดที่พัฒนาเป็นเวอร์ชัน Ignorance 2.x ที่มีอายุสั้น ซึ่งต่อมากลายเป็น Ignorance Threaded
PhantomGamers: Got Mirror + Ignorance ทำงานเป็นการปรับเปลี่ยนโหลดฝั่งไคลเอ็นต์ของ BepInEx สำหรับเกม อึศักดิ์สิทธิ์ มันเจ๋งมาก
BigBoxVR: ดึงคำขอและพบสภาวะการแข่งขันที่คุกคามเสถียรภาพ ใช้ Ignorance ใน Population One ซึ่งเป็นชื่อ VR ด้วย
Martin: ดึงคำขอ ทดสอบด้วยความไม่สอดคล้องกัน ทรัพย์สิน VoIP ที่ยอดเยี่ยมสำหรับ Unity
c6burns, Petris, shiena, Draknith, nxrighthere, vis2k, พอล
Mirror Discord และคนอื่นๆ ที่ฉันคิดถึง ขอบคุณมาก คุณก็รู้ว่าคุณเป็นใคร
คุณก็สามารถระบุชื่อของคุณได้ที่นี่หากคุณส่ง PR อย่ารอช้า รีบสมัคร PR เลยวันนี้!
มีต่อ...?