Cette bibliothèque a été construite en raison de l'incompatibilité entre l'unité avec .NET 2.0, UWP avec .NET Core et .NET 4.6 Socket Libraries.
Vous pouvez utiliser cette bibliothèque pour configurer la communication de base entre un client Unity et un client UWP. Nous utilisons cette bibliothèque entre Unity et un HoloLens pour la communication réseau. Il vous donne la liberté de changer et de mettre en œuvre vos propres protocoles.
Lorsque vous avez fait cela, vous pouvez commencer à utiliser l'espace de noms MIXEDREALITYNETWORKING dans votre projet Unity. Le .dll devrait fonctionner à la fois sur les PC de bureau et sur les appareils UWP tels que les HoloLens. Assurez-vous que si vous implémentez vos propres méthodes dans la bibliothèque, les méthodes sont les mêmes dans les deux DLL.
Nous avons essayé d'utiliser toutes sortes de solutions de réseautage pour notre projet avec Unity et A HoloLens. Le "Unet" standard d'Unity "Unet avait beaucoup de frais généraux et n'était pas facile à intégrer dans notre projet. Microsoft a publié un Holotoolkit pour les HoloLens en combinaison avec Unity. Cependant, cette bibliothèque n'est pas entièrement opensource et s'exécute uniquement sur Windows. Étant donné que le protocole n'est pas opensource, vous ne pouvez pas l'implémenter dans un serveur Linux dédié. L'utilisation de sockets c # simples n'a pas fonctionné car l'espace de noms System.net.Sockets n'est pas disponible en UWP, et des bibliothèques conçues pour que UWP rende l'espace de noms disponible, n'a pas pu être installé car Unity s'exécute sur .NET 2.0. Nous avons donc construit le nôtre.
Cette bibliothèque vous donne juste une petite couche au-dessus du protocole UDP, ce qui signifie que vous pouvez envoyer toutes les données que vous souhaitez. Il est très facile à utiliser et facilement consommable pour une utilisation dans votre propre projet. Vous pouvez l'utiliser Peer2peer, mais vous pouvez également implémenter un serveur dédié par exemple.
UDP ne connaît pas automatiquement les clients, comme une prise TCP. Avant qu'un client ne soit connu, il devrait envoyer un message en premier. Si vous rencontrez des problèmes avec la connexion de 2 clients, assurez-vous que votre pare-feu permet le trafic UDP et les adresses IP et les ports sont corrects. Vous pouvez contourner les problèmes P2P en utilisant un serveur dédié qui achemine le trafic UDP vers le bon client. Mais même alors; Tous les clients doivent envoyer un message d'abord au serveur avant que le client ne soit connu. Le serveur doit stocker l'adresse IP et le port.