Unity版本:2020.1.17f1C1
操作系统:Windows10
IDE:VS2019
Zeromq(clrzmq4): https://github.com/zeromq/clrzmq4
Zeromq(Libmq):https://github.com/zeromq/libzmq
- 安装libmq
由于clrzmq4是对libmq的封装,因此,使用clrzq4依赖于libmq。
Libmq编译成lib和dll的方法:https://blog.csdn.net/cz2011301070/article/details/117914655
以上方法生成的dll名称可能是:libzmq-v142-mt-gd-4_3_5,需要重命名为:libzmq
- unity中新建一个Testzmq.cs脚本,用VS打开,
- 然后在VS中安装clrzmq4
VS2019->Tools->Nuget Package Manager- Package Manager Console窗口中输入并回车:Install-Package ZeroMQ -Version 4.1.0.31
安装成功后,在References下能看到有Zeromq
在unity工程文件夹中找到Packages文件夹,一直点击,直到能看到ZeroMQ.dll
- Unity中配置clrzmq4
Unity->Assets下新建“Plugins”, 把上面的Zeromq.dl和libzmq.dll拖动到Plugins文件夹下,等Unity编译检查结束。
在Testzmq.cs中的Start()函数内拷贝以下客户端代码
using (var requester= new ZSocket(ZSocketType.REQ))
{
requester.Connect("tcp://127.0.0.1:5555");
for(int n=0;n<10;++n)
{
string requestText = "Hello";
print("sending " + requestText);
requester.Send(new ZFrame(requestText));
using (ZFrame reply = requester.ReceiveFrame())
{
print("Received " + requestText + reply.ReadString());
}
}
}
运行Unity,正常。
注意:服务器可以自己用libmq在C++中配置或用clrzmq4在另一个unity工程中配置,但是需要注意两个的地址和端口要一致