我希望能够从一个C#应用程序每秒传输大约30次的大量数据到我的Unity应用程序。由于Unity不支持映射内存和管道,所以我考虑使用TCP套接字。如果通信仅限于一台机器,这样做是否足够快?
我希望能够从一个C#应用程序每秒传输大约30次的大量数据到我的Unity应用程序。由于Unity不支持映射内存和管道,所以我考虑使用TCP套接字。如果通信仅限于一台机器,这样做是否足够快?
可能从2017年开始,Unity还支持托管插件。
Unity3D也支持c++。
本地插件是特定于平台的本机代码库。它们可以访问诸如操作系统调用和第三方代码库等功能,这些功能在其他情况下对Unity不可用。但是,这些库无法像托管库那样通过Unity的工具进行访问。例如,如果您忘记将托管插件文件添加到项目中,则会收到标准的编译器错误消息。如果您使用本地插件做同样的事情,只有在尝试运行项目时才会看到错误报告。 更多...
...并且:
Unity对本地插件提供了广泛的支持,它们是用C、C++、Objective-C等编写的本机代码库。插件允许您的游戏代码(使用Javascript或C#编写)调用这些库中的函数。此功能允许Unity与中间件库或现有的C/C++游戏代码集成。 更多...
使用c++代码,您可以自由地做任何想做的事情,包括编写本机命名管道服务器,通过该服务器,您的c#应用程序可以发送数据。
本地命名管道非常快,因为它们在内核模式下运行,并且不像TCP那样经过网络层。
如果通信仅用于本地计算机,则建议使用命名管道而不是TCP。
命名管道的替代方案包括: