目录
一、使用UE4建立TCP客户端
二、使用网络调试助手建立服务端
三、基于网络调试助手的服务端与UE客户端通信
四、基于python的TCP服务端与UE客户端通信
一、使用UE4建立TCP客户端
1.在虚幻商城中搜索socket来下载TCP Socket Plugin插件
2.安装到引擎,目前支持的版本是4.22-4.27和5.0
点击安装
大约30M
3.随便打开一个工程,找到编辑-》插件
4.点击已启用,然后重启虚幻编辑器
5.新建蓝图,选择继承自TCPSocketConnection类
我命名该蓝图为TCPTest_BP
6.双击打开TCPTest_BP
在事件图表中建立如下节点。当事件开始运行时与TCP服务端建立连接,这里自己设置服务端ip和port
7.添加三个自定义事件
8.分别命名为断开连接、建立连接和接收信息
9.建立连接时打印“建立连接”,断开连接时打印“断开连接”,接收到信息时,将其转为string类型然后打印
二、使用网络调试助手建立服务端
网络调试助手下载地址:
NetAssist.exe
下载后打开,协议类型选择TCP Server,ip使用本机地址,端口号与客户端一致,然后点击打开
三、基于网络调试助手的服务端与UE客户端通信
1.首先运行服务端
2.将TCPTest_BP拖入视口中
3.播放游戏,可以看到右上角打印了建立连接,说明UE与网络调试助手建立了TCP通信
4.使用网络调试助手发送信息,可以看到UE4接收到了发送的信息
5.点击关闭
可以看到UE打印了断开连接
四、基于python的TCP服务端与UE客户端通信
如下代码实现了UE4一旦与python服务端建立连接,服务端就主动发送一条测试信息然后断开通信。
import socket
def main():
# 创建套接字
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定端口和ip
tcp_server_socket.bind(("", 6666))
# 设置套接字为被动监听模式,不能主动发送数据,128为允许接收的最大连接数
tcp_server_socket.listen(128)
# 接收客户端连接
new_client_socket, client_ip_port = tcp_server_socket.accept()
new_client_socket.send("test".encode())
tcp_server_socket.close()
if __name__ == '__main__':
main()
效果:可以看到当运行游戏后,接收到了服务端发送的信息
其他相关文章链接:文章来源:https://www.toymoban.com/news/detail-792164.html
解析Json:UE5_官方Json插件来了! - 知乎文章来源地址https://www.toymoban.com/news/detail-792164.html
到了这里,关于UE4 TCP通信 (UE客户端与网络调试助手服务端、python服务端通信)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!