虚幻引擎像素流送(Pixel Streaming)允许你从任何有屏幕的联网设备(例如计算机,手机,平板电脑等)播放虚幻项目。在这个教程里,我们将学习如何激活虚幻引擎的像素流送并从任何Web浏览器控制PC游戏。

使用像素流的好处是,输出设备不需要处理所有的场景、物理仿真和交互,只需要有一个屏幕和互联网连接。

我们将一步步介绍如何使用免费服务器设置最多支持40个用户的像素流。如果要将其推向庞大的市场,则需要购买静态IP并支付托管服务的费用。

1、前置条件

要继续学习本教程,你需要具备Visual Studio Community 2019和虚幻引擎4.26的入门知识。

首先需要安装Visual Studio和虚幻引擎(我使用的是4.26)。值得一提的是,Visual Studio提供免费的学生许可证,虚幻引擎以及我们将要使用的Ngrok版本是免费的。

然后将需要创建一个不包含初学者内容的第三人称项目。

2、启用像素流送插件

执行以下操作来启用UE4的像素流送插件:

  1. 打开虚幻引擎项目。
  2. 选择 Edit > Plugins
  3. "Graphics"类别下,找到Pixel Streaming插件并选中"Enable"框。
  4. 单击"Yes"接受使用 beta 版插件。
  5. 单击"Restart Now"以在激活像素流送的情况下重新启动项目。

3、项目和首选项设置

执行如下操作进行项目和首选项的参数设置:

  1. 选择"Edit >Project Settings"。
  2. 在"Engine"的"Input"类别下,找到"Always Show Touch Interface“”并选中"Enable"框。这是为了显示触摸操纵杆,以便在只有屏幕的设备(如手机或平板电脑)上操控项目。
  3. 选择Edit >Editor Preferences。
  4. 在"Level Editor"的"Play"类别下,找到"Additional Launch Parameters"设置,并将其值设置为:"-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8888"。

4、下载依赖库

执行如下操作来下载Visual Studio和Nodejs所需的库:

  1. Windows键并键入:添加或删除程序,按回车键。
  2. 在搜索列表中查找 Visual Studio Community 2019,左键单击并修改
  3. 点击"Yes"允许 Visual Studio 在设备中进行更改。
  4. 在"Workload"选项卡下,查找"Game Development with C++"并激活该复选框。
  5. 在"Individual Components"选项卡下查找最新的.NET Framework SDK,在我的机器里它是.NET Framework 4.8 SDK。
  6. 现在点击修改开始下载这些组件.
  7. 必须重新启动PC才能完成此安装。
  8. 前往: https://nodejs.org/en/download/
  9. 下载并安装Nodejs。

5、打包为可执行文件

执行如下操作将项目打包为Windows可执行文件:

  1. 选择"Files > Package Project > Windows > Windows(64 位)",将项目打包为 Windows 可执行文件。
  2. 创建或查找打包项目的目标文件夹。

6、编辑可执行文件的属性

执行如下操作设置可执行文件的启动属性:

  1. 前往打包项目的目标文件夹,在WindowsNoEditor中,可以找到一个以".exe"结尾的文件,右键单击它并创建快捷方式
  2. 右键单击快捷方式,在"快捷方式"选项卡的"目标"字段添加" -AudioMixer - PixelStreamingIP=localhost -PixelStreamingPort=888 -RenderOfScreen"。这将允许我们流式传输音频,并且在后台运行可执行文件时,可以使用计算机执行其他操作。

7、配置像素流送服务器

执行如下操作配置像素流送服务器:

  1. 前往安装引擎版本的文件夹。UE_4.26 >Engine >Source>Programs,然后复制PixelStreaming文件夹。
  2. 转到我们打包可执行文件的文件夹,然后将该文件夹粘贴到WindowsNoEditor中。
  3. 打开文件夹 PixelStreaming> WebServers > SignalingWebServer,复制一份Start_AWB_WithTURN_SignallingServer,这只是一个备份,以防我们搞砸了原始代码。
  4. 此处获取免费的 STUN 服务器
  5. 打开原始的Start_AWB_WithTURN_SignallingServer文件,并将第一个" + $PublicIp + ":19302替换为列表中的一个 Stun 服务器,例如stun4.1.google.com:19302
此图像没有替代文本

6.  按Windows键,键入cmd并按回车键,然后输入命令ipconfig并按回车键,你的IP将显示在IPv4 Address复制下来。

此图像没有替代文本

7. 现在将第二个" + $PublicIp + "替换为你的IP地址

此图像没有替代文本

8. 将该文件另存为Start_AWB_WithTURN_SignallingServer.ps1

9. 打开runAWS_WithTURN文件,然后等待连接

此图像没有替代文本

8、本地网络测试像素流送

执行如下步骤在本地网络上测试像素流送是否正常:

  1. 打开我们在步骤 6 中配置的打包项目的快捷方式。
  2. 现在可以使用连接到同一网络的任何设备转到浏览器,然后输入你的IP地址来测试游戏。

9、设置像素流送到互联网

执行如下步骤将像素流送到整个互联网范围:

  1. 在 Web 浏览器中,请转到: https://ngrok.com
  2. 创建一个免费帐户。
  3. 下载适用于 Windows 的ngrok
  4. 剪切压缩文件夹,然后转到我们打包可执行文件的文件夹,将该文件夹粘贴到WindowsNoEditor中。
  5. 提取 ngrok 可执行文件
  6. 打开ngrok
  7. 从 第2步的 ngrok 仪表盘复制你的token并粘贴到 ngrok 控制台以验证帐户

8. 现在输入命令:ngrok http 80,这将向世界公开你的80端口,这正是我们在全球范围内共享项目所需要的。

9. Forwarding部分显示了用于访问游戏的链接

此图像没有替代文本

10、结论

本教程介绍如何将像素流送添加到任何项目,并使其可供世界各地的任何人免费使用,最多支持 40 个用户。

为了拥有一个可以通过Web浏览器从手机、计算机和VR耳机访问的多平台虚拟世界,Pixel Streaming是托管你的在线世界的绝佳工具,它消除了拥有强大PC来渲染游戏场景的需要。

我希望这个教程对你有所帮助,每个人都可以开始流式传输自己的虚拟世界。


原文链接:Pixel Streaming Set-up

BimAnt翻译整理,转载请标明出处