UE 像素流送是什么?像素流推流原理介绍
游戏开发者通常在运行游戏逻辑时会将游戏渲染到屏幕的同一台设备上来运行虚幻引擎应用,多人联网游戏可能会在应用程序的多个实例之间分发部分游戏逻辑,但每个单独的实例仍然会为自己的玩家在本地渲染游戏。即使是使用 HTML5 部署选项创建可以在 Web 浏览器中运行的项目版本,游戏逻辑和画面呈现仍然在每个用户的 Web 浏览器中本地运行。
然而,使用像素流送,可以在用户看不到的计算机上远程运行 UE 开发的应用。虚幻引擎使用该计算机可用的资源(CPU、GPU、内存等)来运行游戏逻辑并渲染每一帧。它不断地将此渲染输出编码为媒体流,该媒体流通过轻量级 Web 服务堆栈。然后,用户可以在其他计算机和移动设备上运行的标准 Web 浏览器中查看该广播流。
用户的结果就像从 YouTube 或 Netflix 等服务观看视频流一样,但有两点区别
流媒体播放的不是预先录制的视频片段,而是虚幻引擎实时生成的渲染帧和音频。
用户可以从他们的浏览器控制交互,将键盘、鼠标和触摸事件以及从播放器网页发出的自定义事件发送回虚幻引擎。
UE 像素流送的优势
像素流送使移动设备和轻型 Web 浏览器能够显示比其他方式更好的图形质量。它们可以显示高分辨率的复杂场景,通过像素流送,用户可以运行原本只有在具有强大 GPU 的本机桌面应用程序中渲染时才有可能使用的渲染功能。
用户不需要提前下载大型可执行文件或内容文件,也不需要安装任何东西。用户唯一需要下载的是播放的媒体流。
可以支持多个平台,而无需创建和分发多个单独的包。只需为 Windows 或 Linux 打包应用程序一次,人们可以使用任何平台来体验 UE 内容。用户可以在任何支持 WebRTC 连接模型的现代浏览器中查看流,包括桌面、iOS 和 Android 平台上浏览器。
Pixel Streaming 系统包含最少数量的组件,任何人都可以相对容易地在本地网络中进行设置。但是,对于具有部署 Web 服务经验的团队来说,它足够强大,可以用作创建自定义云托管平台的基础。
Pixel Streaming 使用 WebRTC 点对点通信框架来尽可能降低用户和虚幻引擎应用程序之间的延迟。
下图简单总结了像素流送插件
像素流送技术框架
像素流送技术的框架包含两部分:像素流送插件 Pixel Streaming、信令和 web 服务器。
Pixel Streaming Plugin -该插件在虚幻引擎中运行。它使用视频压缩对每个渲染帧的最终结果进行编码,将这些视频帧与游戏音频一起打包成媒体流,并通过直接点对点连接将该流发送到一个或多个连接的浏览器。
信令和 Web 服务器 -信令和 Web 服务器负责协商浏览器和像素流插件之间的连接,并为浏览器提供播放媒体流的 HTML 和 JavaScript 环境。
像素推流连接方法
当启动所有像素流送插件时,在虚幻引擎中运行的像素流送插件首先会建立与信令和网络服务器的连接。
客户端连接到信号服务器,信号服务器为它提供一个 HTML 页面,其中包含播放器小部件和用 JavaScript 编写的控制代码。
当用户启动流时,信令服务器会协商在客户端浏览器和虚幻引擎应用程序之间建立直接连接。为了使此连接正常工作,浏览器和虚幻引擎应用程序需要知道彼此的 IP 地址。如果两者都在同一网络上运行,则它们通常在各自的 IP 地址上直接相互可见。但是,在两个端点之间运行的网络地址转换 (NAT) 服务可能会更改任何一方的外部可见 IP 地址。解决这个问题通常涉及使用 STUN 或 TURN 服务器,它告诉每个组件其外部可见的 IP 地址是什么。 一旦在客户端和虚幻引擎应用程序之间建立连接,像素流式处理插件就会开始将媒体直接流式传输到浏览器。来自客户端的输入由播放器页面的 JavaScript 环境直接发送回虚幻引擎应用程序。
即使在媒体流开始播放后,信令和 Web 服务器仍会保持与浏览器和虚幻引擎应用程序的连接,因此它能够处理浏览器发起的断开连接。
UE 像素推流的局限性
首先像素流官方提供的并不是产品,不能拿来直接使用。其次它只适用于 UE 模型,再者它在实际中对于不同浏览器的兼容性不太好。而 3DCAT 实时云渲染技术,不仅仅是支持 3D 引擎的模型,对于一些非 3D 引擎比如一些大型的家装软件、PS、BIM 等也能支持。而且还有很多针对运营的负载均衡、调度等信息,更加成熟更加产品化,做到拿来即可使用,可支持软件部署,也支持 SDK 对接。
3DCAT 实时云渲染优势
首先,3DCAT 实时云渲染不会限制任何的访问引擎,超过支持 10 多种国内外三维制作引擎输出的标准可执行文件,不挑引擎是最大的优势。其次 3DCAT 已经用于多个商业生产项目中,并不断的壮大与完善功能,提供最稳定的实时云渲染服务。此外,3DCAT 所有模块均支持定制化开发,3DCAT 还有强大的公有云服务,遍布全国的边缘节点,拥有超 3 万台的节点,而不是本地化单机部署能够比拟的。
本文《UE 像素流送是什么?像素流推流原理介绍》内容由 3DCAT实时渲染云解决方案提供商整理发布,如需转载,请注明出处及链接。
版权声明: 本文为 InfoQ 作者【3DCAT实时渲染】的原创文章。
原文链接:【http://xie.infoq.cn/article/c15550b272f60bb31e313cf1d】。
本文遵守【CC BY-NC】协议,转载请保留原文出处及本版权声明。
评论