Unity и UDP MulticastGroup - PullRequest
       9

Unity и UDP MulticastGroup

0 голосов
/ 24 мая 2018

Я пытаюсь прослушать хост, который отправляет по UDP, используя MultiCastGroup.В Unity клиент запускается, но сообщение никогда не принимается, но если я беру точно такой же код и помещаю его в консольное приложение, оно работает, и я вижу сообщения хоста.

Вот что у меня получилось:

public class UDPListener : MonoBehaviour
{
   IPEndPoint ip;
   private int port = 20000;
   private IPAddress group_address = IPAddress.Parse("233.255.255.255");
   private UdpClient client;
   string data;

   private void Start()
   {
       StartClient();
   }

   void StartClient()
   {
       Debug.Log("Starting Client");

       ip = new IPEndPoint(IPAddress.Any, port);
       client = new UdpClient(ip);
       client.JoinMulticastGroup(group_address);

       client.BeginReceive(new AsyncCallback(ReceiveServerInfo), null);
   }

   void ReceiveServerInfo(IAsyncResult result)
   {
       byte[] receivedBytes = client.EndReceive(result, ref ip);
       data = Encoding.ASCII.GetString(receivedBytes);

       if (String.IsNullOrEmpty(data))
       {
          Debug.Log("No data received");
       }
       else
       {
          Debug.Log(data);
       }

       client.BeginReceive(new AsyncCallback(ReceiveServerInfo), null);
   }
 }

У меня также был тот же результат при использовании client.Receive (работает в консольном приложении, но не в Unity), поэтому мне интересно,может быть, мне не хватает какой-то настройки Unity?

1 Ответ

0 голосов
/ 24 мая 2018

Не важно, обновление Windows вернуло мой брандмауэр, который блокировал Unity:]

...