本文最后更新于
2026-01-01,某些文章具有时效性,若有错误或已失效,请在下方
留言或联系
老夜。
使用Pixel Streaming插件实现虚幻引擎(UE)的像素推送
在我们使用虚幻引擎(Unreal Engine, UE)时,除了在引擎编辑器界面上查看当前的内容之外,还会存在着将引擎的关卡或资产内容映射到设备端口上的需求,用于可视化共享、基于内容的二次开发等等。
为了完整地总结并介绍该需求的解决方案,本篇基于UE自带的Pixel Streaming插件,在UE 5.3中介绍像素流推送的配置过程。
本质上,这是在做一个像素流的端口映射,将UE编辑器界面的内容输入至设备端口 :8888,对应的内容在 :80 端口输出。也就是说,可以通过浏览器访问 :80 端口获取推送的像素流,也可以通过其他程序访问该端口拿到像素流,实现二次开发等目标。
UE是自带Pixel Streaming插件的,使用推流之前需要在UE里面打开该插件。
从主菜单选择编辑(Edit)>插件(Plugins);
进入之后,在图形(Graphics)中找到Pixel Streaming,并勾选该插件,随后会要求你进行UE的重启,点击重启即可。
接下来需要对项目进行打包,打包后再进行像素流推送,不打包的话也可以直接推送,操作很简单,文末会讲。
在主菜单中选择编辑(Edit)>编辑器偏好设置…(Editor Preferences…);
在关卡编辑器(Level Editor)中的播放(Play)栏下找到额外启动参数(Additional Launch Parameters)设置,将其值设为
-PixelStreamingURL=ws://127.0.0.1:8888
接下来进入菜单栏的编辑(Edit)>项目设置(Project Settings);
在项目(Project)中找到地图和模式(Maps & Modes),对默认游戏模式(Default GameMode)、游戏默认地图(Game Default Map)进行修改,选择当前的编辑器游戏模式和当前关卡。
例如在我这里,使用的就是AirSim游戏模式(需要进行无人机仿真)和一个当前正在使用的场景关卡;
在项目(Project)的打包(Packaging)下,可以选择打包的模式,有调试、开发、发行等几种版本可以选择。
设置完成时候就可以进行打包了,在编辑器主界面的平台(Platforms)中找到Windows,文件配置选择“使用项目设置”,直接点击打包项目(Package Project)即可;
随后可以选择打包路径,打包的文件夹会放置在该路径中。打包过程中,可以查看编译输出;
打包完成之后,会在指定的路径下出现一个Windows文件夹,里面有一个exe文件,双击可直接运行打包程序,和编辑器里的运行过程是一样的。在相同的文件夹下为该exe文件创建快捷方式;
右击快捷方式,在属性中的“目标”栏后面添加内容(注意和链接目标之间有空格):
-PixelStreamingURL=ws://127.0.0.1:8888
git clone --branch UEX.Y https://github.com/EpicGamesExt/PixelStreamingInfrastructure.git
其中UEX.Y应当替换成当前所使用的UE版本,如我使用的是UE5.3,则源码下载的命令为:
git clone --branch UE5.3 https://github.com/EpicGamesExt/PixelStreamingInfrastructure.git
在下载的文件夹中,进入SignallingWebServer\platform_scripts\cmd文件夹,以管理员身份运行setup.bat文件,等待安装所有的依赖项;
安装完后运行run_local.bat文件,即可开始像素流推送工具的运行,会有如下输出:
WebSocket listening to Streamer connections on :8888WebSocket listening to Players connections on :80Http listening on *: 80
这意味着推流工具已经建立了发送至本机 :8888端口和监听 :80端口的连接,此时直接点击之前创建的快捷方式,开始关卡运行,在浏览器中输入
如果不进行项目的打包,也是可以实现像素流的推送的,只是由于编辑器占用资源较多,可能会略卡顿一些。
开启Pixel Streaming插件之后,就可以在UE编辑器界面中看到相应的推送设置,在此处还可以修改像素流推送和监听的端口;
需要推流的时候,依次点击“启动信令服务器”和“流送关卡编辑器”,就可以直接在浏览器输入端口地址,然后看到推流结果,这样的方法甚至不需要下载和安装上面所提到的像素流服务器,简化了很多配置步骤,非常方便!
虚幻引擎中的像素流推送入门
https://dev.epicgames.com/documentation/zh-cn/unreal-engine/getting-started-with-pixel-streaming-in-unreal-engine
打包虚幻引擎项目
https://dev.epicgames.com/documentation/zh-cn/unreal-engine/packaging-your-project
UE 像素流Pixel Streaming基本介绍和使用方法
https://zhuanlan.zhihu.com/p/695191023