UE4联机多人游戏基本设置

UE4自带网络联机功能,但是似乎只有蓝图接口,而真正写功能的时候不能用C++,让人感觉相当诡异

还是作一个简单记录


1.建一个第三人称模板,为什么会用他呢,因为它自带模板的很多组件,直接支持联机功能,相当方便,找到工程目录下的Config/DefaultEngine.ini,在里面添加OnlineSubsystem,开启联机功能(最好重启一下工程,他才会读取这个文件配置)

[OnlineSubsystem]
DefaultPlatformService=<Default Platform Identifier>
2.创建一个简单的UI,三个按钮,创建房间、搜索房间、加入房间,功能嘛,顾名思义


3.点击创建房间按钮后,就执行Create Session,这里就是UE4提供的接口,按着他来说这里应该是创建会话,不过我喜欢用创建房间,感觉更好理解

当我们成功创建房间后,就打开一个新的场景,就是自带的第三人称模板场景


4.点击搜索房间,就是搜索当前已经创建的房间,并将第一个房间存储下来,这就是我们后面需要加入的房间


5.当我们点击搜索房间后,看见我们获取的房间名称后,点击加入房间


6.我们新建一个场景,去掉场景中的所有东西,在关卡蓝图中去创建我们开始的UI


7.更改自带模板的GameMode,ThirdPersonGameMode设置Default Pawn Class为None,并添加一个功能,房间每加入一个人,就回调一个函数OnPostLogin,然后创建一个角色,用的第三人称角色,并获取当前场景中的Player Start(需要在场景中多设置几个),并将位置赋给他们


8.回到开始创建的空白场景,并设置Play,点击运行


9.其中一个点击创建房间,另一个点击搜索房间,等待搜索成功后点击加入房间


10.运行截图,我这里品质调得特别低,不过功能实现了,相当简单对不对,主要也是利用了他自带组件的一些便利性,后面需要看看复制actor,属性同步,RPC函数等等。


posted on   王亮1  阅读(1364)  评论(1编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示