实时云渲染技术详解-——原理应用和优势

实时云渲染 | 2021-09-29 17:12:00 | 阅读 156 次 | 评论(0)

像素流送(也叫实时云渲染)技术是UE4近期推出的,在很多领域有广泛应用,本文从像素流送技术的原理、解决的问题、应用的优势以及可应用的行业等领域进行详细阐述,希望帮助更多用户了解该技术

一、像素流(实时云渲染)是什么?

看到这个名字,对于不熟悉该领域的人员来说,第一反应可能是像素+流。一般人对于像素的了解最初来自手机摄像头拍摄照片的清晰度,像素越高拍摄出来的照片清晰度越好。而“流”一般是指流动,像素流是二者的结合,只不过这里的像素不仅仅局限于图片的像素,还包括音视频等多种文件,是一种内容最终传输的载体形式。像素流就是将服务器的执行结果处理成视频流的方式,在终端显示出来。近年来该技术在虚拟仿真、UE4unityGIS、数字孪生等三维可视化领域中应用广泛,其主要解决了轻终端使用问题。其关键就在于指令和执行结果之前的延迟性。

其原理是将指令的渲染处理放在云端服务器,而终端只需要通过网页连接到服务器去操作应用程序输入指令,同时将云渲染处理的结果以像素流的形式返回给终端展示。其实该技术很早就有但之前受限于很多硬件条件不太好实现,尤其是网络因素,而近年来随着5G的发展,网络问题得到了很好的解决,现在将该技术商用可以很好的解决用户体验的问题。那么像素流送的原理是怎样的呢?

二、像素流送原理详解

像素流送名称最初是由UE4官方提出的,该技术的框架包含两部分:像素流送插件Pixel Streaming、信令和web服务器,其作用分别是:

像素流送插件 - 此插件在虚幻引擎中运行。其使用H.264视频压缩对每个渲染帧的最终结果进行编码,将这些视频帧随游戏音频一同打包到媒体流送中,并通过直接点对点连接将该流送发送到一个或多个连线的浏览器上。

信令和Web服务器- 信令和Web服务器负责交涉浏览器和像素流送插件之间的连接,将播放媒体流送的HTMLJavaScript环境提供给浏览器。


二者连接过程如下:

1、启动所有像素流送组件时,在虚幻引擎中运行的像素流送插件首先将建立到信令和Web服务器的链接。

2、客户端会连接到信令服务器,服务器将对客户端提供一个HTML页面,其中包含播放器控件和以JavaScript编写的控制代码。

3、用户开始流送时,信令服务器将进行交涉,在客户端浏览器和虚幻引擎之间建立直接连接。

4、客户端和虚幻引擎之间的连接建立后,像素流送插件便会直接开始将媒体流送到浏览器。来自客户端的输入由播放器页面的JavaScript环境直接发送回虚幻引擎中。

5、即使媒体流送已经开始播放,信令和Web服务器仍会维持其与浏览器和虚幻引擎的连接,以便在必要时将用户从流送中移除,并处理浏览器造成的连接断开。



从这个过程可以看出,该技术简单来说就是将本来只能依赖本地机器性能完成的指令处理和渲染工作,放在了云端,而针对这个过程要解决的是指令如何接收以及尽可能短时间返回终端。那这种技术解决了目前行业的哪些问题呢?

三、像素流解决了哪些问题?

任何技术的发展都不是凭空出现的,是基于现状做的改善,主要是效率提升、体验提升和更符合需求。而像素流技术的出现也是如此,它究竟解决了哪些问题呢?首先我们来看下在没有像素流技术出现之前,在使用UE4unityBIM等做的程序,是如何应用在实际的,这里点量云以虚拟仿真行业为例来做说明。目前的虚拟仿真程序的开发大多是基于UnityUE4等游戏引擎进行建模。传统的部署方式是直接将程序安装在本地电脑中,用户通过专门的电脑打开后使用。如果是培训和教学类的则需要专门教室购买专门的硬件设备进行。而对于智慧城市数字孪生类的因为展示数据的多维,对于电脑的GPU和运行计算能力要求更高。这种方式,限定用户只能在特定场合中使用,而且因为电脑的兼容性问题,安装和升级都可能存着很多意向不到的潜在问题。而目前使用互联网内容,除了通过客户端还可以通过网页,那像这种虚拟仿真程序是否可以用网页来访问呢?答案是肯定的,可选的方案有webgl和像素流(实时云渲染)技术两种。一起来看下二者的特点和区别。

WebGL是Web Graphics Library的缩写,它是一种3D绘图协议,这种绘图技术标准允许把JavaScriptOpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样就可以借助电脑系统显卡来在浏览器里更流畅地展示3D场景和模型了。 WebGL技术标准免去了开发网页专用渲染插件的麻烦,可被用于创建具有复杂3D结构的网站页面,甚至可以用来设计3D网页游戏等等。简单来说webgl是网页上的3D绘图标准。这也使得webgl方案在使用中,在部分场景下其渲染工作是通过电脑本地的显卡硬件来完成的,因此在使用webgl技术的时候,尤其是刚打开的网页的时候,是需要加载数据到本地的。而根据内容的不同,加载的时间长短也有所不同,虽然和本地安装相比,对于硬件的依赖性有所降低,但比一般的工作电脑也要更高一些,而且终端类型也只支持电脑。此外对于内容提供者来说,webgl需要把内容下载到用户本地,内容被盗用、破解、非法传输的风险会增加。这里点量云将三者的区别做个对比如下:

技术方案

云流化

WebGL

本地安装

本地安装EXE

打开方式

网页

网页

客户端打开

加载时间

和电脑性能有关

内容下载

存储在本地

支持终端

电脑+手机+电视大屏等

电脑和部分手机

电脑

内容安全性

硬件参数要求

能看视频即可

兼容性问题


四、云渲染技术有哪些优势?

像素流(实时云渲染)创新技术带来的优势是很明显的,总结来说有以下几个方面:

A、扩大终端类型范围,解决了兼容性问题

不仅仅是电脑端网页可直接观看高质量画面,手机、平板等移动端也可直接操作和观看到云端的渲染效果。比如只打包Windows平台下的应用程序,但AndroidiOS平台下均可使用。

B、无需安装插件

除了将官方的像素流送插件Pixel Streaming集成到程序中,无需安装任何插件,使用更方便,对硬件性能要求也更低。因为指令的渲染和执行均在云端完成了,终端只要能正常播放视频即可。

C、延迟低

像素流送使用WebRTC点对点通信框架,使用者和虚幻引擎应用程序之间的延迟很低。点量软件像素流产品可以做到5-30ms的延迟,和本地安装的效果几乎一样。

对于很多数字孪生、智慧园区或者虚拟仿真行业的企业,使用像素流技术给用户更好的体验,是获取项目的优势点。但在现在行业细分的今天,专业的人做专业的事效率会更高。

不过在实际中点量云发现UE4像素流虽然给出来资料,但实际使用中存在以下问题:

1、部分浏览器的兼容性问题,比如iOS下的微信、部分chrome版本,会出现莫名其妙打不开的情况;

2、没有产品化功能和服务,比如负载均衡、测速调度、自动更新、发布、后台统计报表、用户状态显示、报警等机制均没有,不利于了解程序运行和使用情况;

3、没有客户端模式,只支持网页版;但部分情况下,客户端可以有更极速的体验(不依赖于webRTC),还有就是部分大屏等系统下,如果用客户端模式,不用输入网址,通过一些图标的点击,体验更好。

对于一些在这方面不是很擅长的公司或者人员,可能需要花费大量的时间和精力也不一定能解决这些问题,而现代社会分工合作可以大大提高效率,所谓“专业的人做专业的事”。像素流只支持UE4的内容,点量云是支持所有的内容,不止UE4Unity,还包括各种软件,比如3DMaxBIMFlash等。而且为了使用方面,对于负载均衡、测速调度、自动跟新发布、统计等也都产品化处理,拿过来就可以用。无需自己花费时间精力从零开始,而且也有专业人员来做技术解答,可以将专注力放在擅长的领域做出更多的成果。至于客户端模式下,可以实现WindowsAndroid系统基于私有协议,实现云端程序渲染结果流送到客户端。客户端很小,只有几兆。客户端的UI界面还可以在后台自由编辑,多变、个性、品牌宣传、常用常新保持新鲜感。所以对于UE4像素流使用中浏览器兼容性等问题合作也许是个不错的选择。

解决了什么问题.png (上传于2021-09-29 17:12:00)
解决了什么问题.png


五、使用实时云渲染技术,服务器并发能达到多少

说了这么多,可能又有新的疑问,既然使用像素流技术是将程序放在云端服务器,那么一台服务器同时可以支持多少并发量呢?这个问题其实和程序的大小、服务器的性能有很大关系。评估标准是,如果不使用像素流技术,以现有服务器的性能参数,可以支持同时运行多少个程序,则使用了像素流技术这台服务器,也可以同时支持这么多用户并发。不过为了支持这么多用户同时使用,需要在服务器上运行多份同样数量的程序。如果不是UE4这种像素流模式,其他应用,则还需要提供云渲染技术的软件,能支持容器化、多开等技术。


六、像素流技术可应用哪些领域?

目前来说可利用实时云渲染技术的领域比较多,例如:各种虚拟仿真教学程序和实训系统(医学、建筑、生物物理化学、制作业、军工培训)、数字孪生、制造业系统孪生(汽车模型、制造等环节)、智慧城市校园和园区、大型设计软件、云游戏、炫酷汽车换装展示、健康医疗、工业仿真等等。

云流化3.png (上传于2021-09-29 17:12:00)
云流化3.png
文章评论,共0条
游客请输入验证码
文章归档
最新评论