《UE5_C++多人TPS完整教程》学习笔记3 ——《P4 测试多人游戏(Testing Mutiplayer)》


本文为B站系列教学视频 《UE5_C++多人TPS完整教程》 —— 《P4 测试多人游戏(Testing Mutiplayer)》 的学习笔记,该系列教学视频为 Udemy 课程 《Unreal Engine 5 C++ Multiplayer Shooter》 的中文字幕翻译版,UP主(也是译者)为 游戏引擎能吃么。


文章目录

  • P4 测试多人游戏
  • 4.1 如何在编辑器中测试游戏
  • 4.2 通过局域网进行测试连接
  • 4.3 Summary


P4 测试多人游戏

本节课将讨论如何采用编辑器中播放模式(PIE,Play in editor)测试多人游戏,以及如何通过局域网(LAN, Local Area Network)连接到游戏。
在这里插入图片描述


4.1 如何在编辑器中测试游戏

下面讲解如何使用虚幻引擎内置的 多人测试功能Multiplayer testing capabilities)。

  1. 新建“第三人称游戏”工程项目 MPTesting,项目默认设置这里选择 C++。
    在这里插入图片描述
  2. 在工具栏上点击 “修改游戏模式”按钮 “”,在下拉菜单栏中可以看到 “多玩家” 选项卡,其中:
  • 玩家数量”(Number of Players) 可以修改成 1 ~ 4 之间的整数值,这里修改为 2,意味着当游戏开始时,两个游戏的实例(Instance)会同时运行。
    在这里插入图片描述
  • 网络模式” (Net Mode)设置虚幻引擎 编辑器播放游戏Play In Editor,PIE)的方式。选择 “Standalone” 将启动一个独立的游戏,不会创建专用服务器,也不会连接到服务器中;选择 “以监听服务器运行”(Play As Listen Server),编辑器将同时用作服务器和客户端,超出的额外实例可能会被打开,这取决于客户端的数量;选择 “以客户端运行”(Play As Client) ,编辑器将用作客户端,虚幻引擎将为我们创建一个专用服务器(Dedicated server),并在其中运行游戏实例。
    在这里插入图片描述
  1. 选择 “网络模式” 为 “以监听服务器运行”,点击工具栏上的 “播放” 游戏按钮 “▶”,可以看到两个游戏实例被打开,其中较小那个窗口的标题栏上提示该窗口运行的实例为 “客户端”,可以点击该窗口对人物进行控制。
    在这里插入图片描述
    在这里插入图片描述

4.2 通过局域网进行测试连接

通过局域网(LAN, Local Area Network)进行连接测试,以确保两台机器连接在一起时多人游戏可以正常运行。

  1. 局域网通常情况下有一个连接了多台机器的路由器(或同一个 Wi-Fi),每个台机器都会分配一个 IP 地址。由于它们都连接到了同一个路由器中,因此它们之间可以通过本地 IP 地址互相访问。
    在这里插入图片描述

  2. 使用蓝图搭建连接测试逻辑。在 “Content/Thirdperson/Blueprints” 目录下双击“BP_ThirdPersonCharacter”,打开完整蓝图编辑器。拖拽界面上方的 “BP_ThirdPersonCharacter” 选项卡到 “ThirdpersonMap” 选项卡的右边,以便于在蓝图编辑窗口和编辑器主界面之间快速切换。
    在这里插入图片描述
    在这里插入图片描述

  3. 在 “BP_ThirdPersonCharacter” 蓝图编辑器面板中添加三个键盘事件 “1”,“2”,“3”。
    在这里插入图片描述

  4. 设计一个按下键盘 “1” 键,就可以切换到等待其他玩家进入多人游戏的事件。在菜单栏(Menu Bar)下拉菜单中选择 “新建关卡” (New Level),选择 “Basic” 关卡(Level),在菜单栏(Menu Bar)下拉菜单中选择 “保存当前关卡” (Save Current Level),保存到 “Content/Thirdperson/Maps” 目录下,命名为 “Lobby”,表示这是其他玩家通过 LAN 连接后前往的关卡。
    在这里插入图片描述
    在这里插入图片描述

  5. 回到“BP_ThirdPersonCharacter” 蓝图编辑器面板。从节点 “1” 的 Pressed 引脚处拖拽出一条线,连接 “打开关卡 (按名字)” (Open Level (by Name))节点,并修改该节点的选项 “Level Name” 为 “Lobby”,修改选项 “Options” 为 “listen”,表示按下“1”就打开 “Lobby” 并指定其为监听服务器。
    在这里插入图片描述

  6. 从节点 “2” 的 Pressed 引脚处拖拽出一条线,连接 “执行控制台命令” (Execute Console Command)节点,然后修改该节点的选项 “Command” 为 “Open 192.168.3.12”,表示当键入 “2” 时,当前的游戏实例将会与本机进行 LAN 连接,然后可以载入本机已经运行的关卡 “Lobby”,其中 “192.168.3.12” 是本机 IPv4 地址,可以通过在命令提示符中键入命令行 ipconfig 查看。最后点击工具栏的 “编译” 和 “保存” 按钮。
    在这里插入图片描述
    在这里插入图片描述

  7. 打包项目。在工具栏中选择 “平台”,接着选择 “Windows”,点击 “打包项目”,在弹出的资源管理器窗口中找到工程 “MPTesting” 目录,新建一个文件夹 “Build” 并选择。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

Notes

  • 如果出现 “SDK未设置” 错误提示 “Windows的SDK未正常安装,而其是生成数据的必需项。请检查主工具栏中“启动”菜单的SDK部分来更新SDK”,解决办法参见《UE5打包SDK未正确安装的问题》。
    在这里插入图片描述
  • 如果打包失败,出现错误提示 “ERROR: No target name was specified on the command-line.”,原因可能是因为 C++ 项目名称不合法,比如项目名称为 Test,或者出现了 “%-!” 等特殊字符以及中文。
  1. 打包完成后可以看到 “Build” 目录下生成了 “Windows” 文件夹,其中包含 “MPTesting” 应用程序。将本机(姑且叫设备1)的这个 “Windows” 文件夹发送到另一台设备(姑且叫设备2)上以准备进行测试,确保两个设备在同一个 LAN 下。
    在这里插入图片描述
    在这里插入图片描述

  2. 在设备1上运行 “MPTesting.exe”,在游戏窗口打开后按下 “1” 键,可以看到成功由默认关卡 “ThirdpersonMap” 跳转到关卡 “Lobby”。
    在这里插入图片描述
    在这里插入图片描述
    在设备2上运行 “MPTesting.exe”,可能会出现 “WARNING…” 对话框,直接点击 “确定” 按钮即可。游戏窗口打开后按下 “2” 键,可以看到成功由默认关卡 “ThirdpersonMap” 跳转到设备1的关卡 “Lobby”,并且关卡中有两个 Character。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


4.3 Summary

本节课主要学习虚幻引擎内置的多人游戏测试功能,接着使用蓝图编写 LAN 连接事件,然后对项目进行打包并在两台设备上进行 LAN 连接测试。

4.2 通过局域网进行测试连接步骤 7 中,如果打包项目时出现 “SDK未设置” 错误提示 “Windows的SDK未正常安装,而其是生成数据的必需项。请检查主工具栏中“启动”菜单的SDK部分来更新SDK”,解决办法参见《UE5打包SDK未正确安装的问题》;如果出现错误提示 “ERROR: No target name was specified on the command-line.”,原因可能是因为 C++ 项目名称不合法,比如项目名称为 Test,或者出现了 “%-!” 等特殊字符以及中文。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/386233.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

三、yolov8训练结果查看和模型预测

训练结果查看 1、在模型训练结束后,如下图所示,找到该文件夹。 2、然后找到weights文件夹中的best.pt文件,这就是该数据训练后的模型。 模型预测 1、在assets文件夹下创建FPC-2文件夹,放入一些同类FPC预测结果。 2、和训练…

中小学信息学奥赛CSP-J认证 CCF非专业级别软件能力认证-入门组初赛模拟题第一套(阅读程序题)

CCF认证CSP-J入门组模拟测试题 二、阅读程序题 (程序输入不超过数组或字符串定义的范围&#xff1b;除特殊说明外&#xff0c;判断题 1.5分&#xff0c;选择题3分&#xff0c;共计40分) 第一题 1 #include<iostream> 2 using namespace std; 3 int a,b,c; 4 int main…

【Linux】学习-进程信号

进程信号 信号入门 生活角度的信号 你在网上买了很多件商品,再等待不同商品快递的到来。但即便快递没有到来,你也知道快递来临时,你该怎么处理快递。也就是你能“识别快递”,也就是你意识里是知道如果这时候快递员送来了你的包裹,你知道该如何处理这些包裹当快递员到了你…

2.13 数组练习

1、选择题 1.1、若有定义语句&#xff1a;int a[3][6]; &#xff0c;按在内存中的存放顺序&#xff0c;a 数组的第10个元素是 B A&#xff09;a[0][4] B) a[1][3] C)a[0][3] D)a[1][4] 解析&#xff1a;二维数组在内存中是以行优先的方式存放的。这意味着首先填充第一行的…

读十堂极简人工智能课笔记01_人工智能简史

1. 2400年前 1.1. 希腊罗德岛 1.1.1. 是个神奇的岛屿&#xff0c;以机械发明著称&#xff0c;包括真人大小的、大理石制成的自动机 1.1.2. 早在罗马帝国诞生之前&#xff0c;公元前400多年的希腊就有这样的机器人技术&#xff0c;似乎不可思议 2. 公元前970到前931年 2.1.…

LeetCode:83和82.删除排序链表中的重复元素I,II

这两题算是链表的基础题&#xff0c;就遍历删除没啥特点&#xff0c; 83甚至不需要考虑第一个结点的特殊情况&#xff0c;属实是名副其实的easy了 LeetCode&#xff1a;21.合并两个有序链表之第一次的特殊情况-CSDN博客 83. 删除排序链表中的重复元素 - 力扣&#xff08;Lee…

controller-manager学习三部曲之三:deployment的controller启动分析

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码)&#xff1a;https://github.com/zq2599/blog_demos 《controller-manager学习三部曲》完整链接 通过脚本文件寻找程序入口源码学习deployment的controller启动分析 本篇概览 本文是《controller-manager学习三…

【C++初阶】第三站:类和对象(中) -- 类的6个默认成员函数

目录 前言 类的6个默认成员函数 构造函数 概念 特性 析构函数 概念 特性 拷贝构造函数 概念 特征 赋值运算符重载 运算符重载 赋值运算符重载 const成员 const修饰类成员函数 取地址及const取地址操作符重载 本章总结&#xff1a; 前言 有时候我们写好了一个栈&#xff0c;头脑…

C#中implicit和explicit

理解: 使用等号代替构造函数调用的效果以类似重载操作符的形式定义用于类型转换的函数前者类型转换时候直接写等号赋值语法,后者要额外加目标类型的强制转换stirng str -> object o -> int a 可以 int a (int)(str as object)转换通过编译,但没有转换逻辑所以运行会报错…

《UE5_C++多人TPS完整教程》学习笔记14 ——《P15 创建我们自己的子系统(Creating Our Own Subsystem)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P15 创建我们自己的子系统&#xff08;Creating Our Own Subsystem&#xff09;》 的学习笔记&#xff0c;该系列教学视频为 Udemy 课程 《Unreal Engine 5 C Multiplayer Shooter》 的中文字幕翻译版&#xff0c;UP主&…

G85银昆高速宝鸡天台山隧道群荣获交通运输部科技示范工程,北京恒星科通隧道无线通信与广播系统应用于该项目

2023年9月12日&#xff0c;全国交通运输科技示范工程现场推进会在河南省平顶山市召开&#xff0c;会上为全国已通过验收的10项科技示范工程进行了授牌&#xff0c;其中由陕西交控集团负责实施的“秦岭天台山超长隧道群安全绿色科技示范工程”名列其中。 【授牌仪式现场】 据了解…

我让ChatGPT帮我钓妹子,它一口气撩了5000人

来自俄罗斯的一名AI开发者、社交平台TenChat的产品经理 AleksandrZhadan于1月30日在推特上发布了自己的婚讯&#xff0c;他将要与自己的女友Karina Imranovna在今年的8月结婚。令人震惊的是Aleksandr Zhadan介绍的认识女友的窍门-ChatGPT 帮他找到了另一半&#xff0c;并且通过…

vue-进阶语法(四)

目录 v-model原理 v-model应用于组件 sync修饰符 ref 和 $refs&#xff08;重点&#xff09; $nextTick v-model原理 原理&#xff1a;v-model本质上是一个语法糖。例如应用在输入框上&#xff0c;就是 value属性 和 input事件 的合写。 作用&#xff1a;提供数据的双向…

测试西门子博途S7-PLCSIM Advanced V5.0的使用

原创 honeytree 西门子博途S7-PLCSIM Advanced V5.0能支持S7-1500&#xff0c;S7-1500R/H&#xff0c;ET200SP&#xff0c;ET200pro的仿真&#xff0c;用此仿真器可以模拟实际的PLC&#xff0c;用于其他软件的连接&#xff0c;比如上位机软件、触摸屏软件,自己用高级语音开发…

VUE学习之路——列表渲染

<p v-for"item in items">{{ item }}</p>使用v-for进行列表的渲染。 这仅仅是一个简单的demo&#xff0c;使用v-for可以用来遍历数组和对象&#xff0c;具体如下&#xff1a; 注意&#xff1a;遍历数组或对象的时候&#xff0c;&#xff08;&#xff09;…

java客运管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java客运管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0&#…

几个好用的 iphone 手机模板贴图样机

整理了几个好用的 iphone 手机模板贴图&#xff0c;分享一下。 关注订阅号「设计师工作日常」&#xff0c;发送关键词 iphone mockup ,获取下载链接。 [1] 原文阅读 我是 Just&#xff0c;这里是「设计师工作日常」&#xff0c;求点赞求关注&#xff01;

问题:3【单选题】实现职业理想的一般步骤是()。 #媒体#媒体

问题&#xff1a;3【单选题】实现职业理想的一般步骤是()。 A、创业-立业-择业 B、择业-创业-立业 C、择业-立业-创业 D、立业-择业-创业 参考答案如图所示

Git分支和迭代流程

Git分支 feature分支&#xff1a;功能分支 dev分支&#xff1a;开发分支 test分支&#xff1a;测试分支 master分支&#xff1a;生产环境分支 hotfix分支&#xff1a;bug修复分支。从master拉取&#xff0c;修复并测试完成merge回master和dev。 某些团队可能还会有 reale…

分享76个行业PPT,总有一款适合您

分享76个行业PPT&#xff0c;总有一款适合您 76个行业PPT下载链接&#xff1a;https://pan.baidu.com/s/17zUV16XOg9uBfDTH7sURxw?pwd8888 提取码&#xff1a;8888 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不易。知…