Unity udpServer
时间: 2024-04-30 21:18:09 浏览: 223
Unity可以使用C#语言编写UDP服务器。以下是一个简单的Unity UDP服务器的示例代码:
```csharp
using UnityEngine;
using System.Net;
using System.Net.Sockets;
public class UDPServer : MonoBehaviour
{
private UdpClient udpClient;
private void Start()
{
udpClient = new UdpClient(5000); //绑定UDP监听端口
udpClient.BeginReceive(ReceiveCallback, null); //开始异步接收数据
}
private void ReceiveCallback(IAsyncResult ar)
{
IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Any, 0);
byte[] data = udpClient.EndReceive(ar, ref ipEndPoint); //结束异步接收数据
//处理接收到的数据
string message = System.Text.Encoding.UTF8.GetString(data);
Debug.Log("Received message: " + message);
udpClient.BeginReceive(ReceiveCallback, null); //继续异步接收数据
}
private void OnDestroy()
{
udpClient.Close(); //关闭UDP连接
}
}
```
此代码将在UDP端口5000上监听传入的数据包。当接收到数据时,它会打印出消息并继续等待下一个数据包。当脚本被销毁时,UDP连接将被关闭。
请注意,这只是一个简单的示例代码。在实际应用程序中,您需要更多的代码来处理数据包,例如解析数据和发送响应。
阅读全文