ห้องสมุดนี้ถูกสร้างขึ้นเนื่องจากความไม่ลงรอยกันระหว่างความสามัคคีกับ. NET 2.0, UWP กับ. NET Core และ. NET 4.6 ซ็อกเก็ตไลบรารี
คุณสามารถใช้ไลบรารีนี้เพื่อตั้งค่าการสื่อสารพื้นฐานระหว่างไคลเอนต์ Unity และไคลเอนต์ UWP เรากำลังใช้ห้องสมุดนี้ระหว่าง Unity และ HoloLens สำหรับการสื่อสารเครือข่าย มันช่วยให้คุณมีอิสระในการเปลี่ยนแปลงและใช้โปรโตคอลของคุณเอง
เมื่อคุณทำสิ่งนี้คุณสามารถเริ่มใช้เนมสเปซ MixedRealityNetworking ในโครงการ Unity ของคุณ .DLL ควรทำงานทั้งบนเดสก์ท็อปพีซีและบนอุปกรณ์ UWP เช่น HoloLens ตรวจสอบให้แน่ใจว่าหากคุณใช้วิธีการของคุณเองในห้องสมุดว่าวิธีการนั้นเหมือนกันใน DLL ทั้งสอง
เราได้ลองใช้โซลูชั่นเครือข่ายทุกชนิดสำหรับโครงการของเราด้วย Unity และ HoloLens เครือข่ายมาตรฐานของ Unity "UNET" มีค่าใช้จ่ายมากมายและไม่ใช่เรื่องง่ายที่จะรวมเข้ากับโครงการของเรา Microsoft เปิดตัว Holotoolkit สำหรับ HoloLens ร่วมกับ Unity อย่างไรก็ตามไลบรารีนี้ไม่ได้เปิดตัวอย่างสมบูรณ์และทำงานบน Windows เท่านั้น เนื่องจากโปรโตคอลไม่ได้เป็น opensource คุณจึงไม่สามารถนำไปใช้กับเซิร์ฟเวอร์ Linux เฉพาะได้ การใช้ซ็อกเก็ต C# ธรรมดาใช้ไม่ได้เนื่องจากระบบ NAT.Sockets Namespace ไม่สามารถใช้งานได้ใน UWP และห้องสมุดที่ออกแบบมาสำหรับ UWP เพื่อให้เนมสเปซไม่สามารถติดตั้งได้เนื่องจาก Unity ทำงานบน. NET 2.0 ดังนั้นเราจึงสร้างของเราเอง
ไลบรารีนี้ช่วยให้คุณมีเลเยอร์เล็ก ๆ ที่ด้านบนของโปรโตคอล UDP ซึ่งหมายความว่าคุณสามารถส่งข้อมูลทุกอย่างที่คุณต้องการได้ ใช้งานง่ายมากและใช้งานได้ง่ายสำหรับใช้ในโครงการของคุณเอง คุณสามารถใช้มัน Peer2Peer ได้ แต่คุณสามารถใช้เซิร์ฟเวอร์เฉพาะเช่น
UDP ไม่รู้จักลูกค้าโดยอัตโนมัติเช่นซ็อกเก็ต TCP ก่อนที่ลูกค้าจะรู้ควรส่งข้อความก่อน หากคุณมีปัญหาเกี่ยวกับการเชื่อมต่อลูกค้า 2 รายโปรดตรวจสอบให้แน่ใจว่าไฟร์วอลล์ของคุณอนุญาตให้ใช้ทราฟฟิก UDP และที่อยู่ IP และพอร์ตถูกต้อง คุณสามารถแก้ไขปัญหา P2P ได้โดยใช้เซิร์ฟเวอร์เฉพาะซึ่งกำหนดเส้นทางการรับส่งข้อมูล UDP ไปยังไคลเอนต์ที่เหมาะสม แต่ถึงอย่างนั้น; ไคลเอนต์ทั้งหมดควรส่งข้อความไปยังเซิร์ฟเวอร์ก่อนที่จะทราบไคลเอนต์ เซิร์ฟเวอร์ควรจัดเก็บที่อยู่ IP และพอร์ต