实时渲染流程操作复杂吗,如何实现?

简介: 像素流技术需要自己来完成这个过程的搭建,还需要在实际应用中的多并发、负载均衡、在不同设备浏览器等下的兼容性、画面的多清晰度展示等等其他问题。点量云实时渲染4步操作,小白也可轻松实现3D应用的实时渲染流化传输。

实时渲染在不同的场景和语境中具体指向有所不同,本文所描述的实时渲染流程是类似UE4像素流技术的,大型软件流送传输技术。即将UE\Unity、CAD\3Dmax等3D程序,放在服务器上,在接收到用户端的指令后借助服务器的算力,完成计算并将结果重新编码以画面流的方式传回终端用户侧设备。
其实UE和unity针对这种场景都提出了理论上的技术方案,但这个方案需要对UE比较熟悉,而且需要自己来完成这个过程的搭建,还需要在实际应用中的多并发、负载均衡、在不同设备浏览器等下的兼容性、画面的多清晰度展示等等其他问题。参考UE官方的资料,实现实时渲染过程步骤如下:
UE4.jpg

1、确定电脑或者服务器软硬件符合像素流技术的要求
1)像素流送插件只能在运行Windows操作系统的电脑上编码视频,对电脑的GPU硬件还有一定要求。
2)安装node.js - 如果电脑上尚未安装 node.js,则需要下载并安装。
3)打开网络端口- 必须打开本地网络上的以下端口进行通信:80、888。如需修改默认端口,则需要查看参考文件
4)停止其他web服务器 - 如果电脑正在运行其他Web服务器,则将其停止。
5)IP地址- 需要知悉电脑的IP地址。
2、准备虚幻引擎应用程序
1)在这个步骤中将为项目创建一个standalone可执行文件。
只有将项目作为打包应用程序运行时或使用 Standalone Game 选项在虚幻引擎中启动时才能使用像素流送插件。
在虚幻编辑器中打开项目——》在虚幻编辑器的主菜单中选择 编辑(Edit) > 插件(Plugins)——》在 图像(Graphics) 下找到 像素流送(Pixel Streaming) 插件并勾选 启用(Enabled) 框——》点击 是(Yes) 确认——》点击 立即重启(Restart Now) 重启项目并应用修改——》返回虚幻编辑器,从主菜单中选择 编辑(Edit) > 项目设置(Project Settings)——》在主菜单中选择 编辑(Edit) > 编辑器偏好(Editor Preferences...)——》在 关卡编辑器(Level Editor) > 播放(Play) 中找到 额外启动参数(Additional Launch Parameters) 设置,并将其值设为 -AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8888——》打包Windows项目。从虚幻编辑器的主菜单中选择 文件(Files) > 打包项目(Package Project) > Windows > Windows (64-bit)——》在项目找打开虚幻引擎放置项目打包版本的文件夹,点击 选择文件夹(Select Folder)——》虚幻编辑器将开始打包进程——》打包进程完毕后,前往上方第6步中选择的文件夹。将找到一个名为 WindowsNoEditor 的文件夹——》每次启动打包应用程序时,均需要传递与第9步中一样的命令行标签(也可以设置快捷方式)——》在打包的standalone虚幻引擎应用程序中启用像素流送插件后,即可开始流送渲染帧和音频

3、 启动服务器
在这个步骤中将开启网络服务,在虚幻引擎应用程序和客户端浏览器间建立点对点的连接。在虚幻引擎安装文件夹中,在 Engine/Source/Programs/PixelStreaming/WebServers/SignallingWebServer 中找到信令服务器的路径。
运行 run.bat 文件开启信令服务器。首次运行服务器时其将下载需要的所有依赖性。服务器启动,能够接收连接后,控制台窗口中将出现以下命令行:
现在用上一段中创建的快捷方式来启动虚幻引擎应用程序。
为便于使用,打包虚幻引擎应用程序时这些服务器也会被复制到包含打包可执行文件的文件夹中。他们位于上述路径下的 Engine 子文件夹中。可从该处启动服务器,而非从虚幻引擎安装文件夹中启动。
须注意:如要修改这些文件夹中的任意文件(尤其是信令和Web服务器的播放器页面或配置文件),需要在原始位置中进行修改,如果在打包文件夹中进行修改,下次打包应用程序时修改可能会被覆盖。
当虚幻应用程序运行连接到信令服务器和Web服务器时,应该可以在信令和Web服务器打开的控制台窗口中看到以下输出行:
Streamer connected: ::1
这说明虚幻引擎应用程序已经启用了像素流送插件,前端信令和Web服务器也已准备好将客户端连接到虚幻引擎应用程序。
如有必要,你可以分别中断并重启虚幻引擎应用程序及信令和Web服务器。只要它们同时运行,就能够自动重连。
此时必要的设置均已在电脑上完成。现在只需连接到浏览器。
4、连接!
在该步骤中将把多个不同设备上运行的网络浏览器连接到像素流送播放。
在运行虚幻引擎应用程序的电脑上按下Alt+Tab组合键,将聚焦从虚幻引擎应用程序上移开,然后启动一个支持的Web浏览器(Google Chrome和Mozilla Firefox是不错的选择)。
在地址栏中导航至 http://127.0.0.1。这是本地机的IP地址,因此请求应由信令服务器进行处理:
点击页面进行连接,然后再次点击"播放(Play)"按钮开始流送。 
现在便会连接到应用程序,渲染输出将流入播放器Web页面中:
 默认的播放器页面已进行设置,将把键盘、鼠标和触控屏输入发送到虚幻引擎,以便控制应用程序并前往各处,就像直接在应用程序进行控制一样。 
点击窗口右侧的 + 按钮,展开流送控制的一些内置选项:

xiagnsuliu.jpg

如果以上4步都顺利进行下来就可以实现单路实时渲染效果,但这个过程可能存在很多问题,而且这个只是实现了实时渲染的效果。从产品角度来说其实还有很多需要完善的,只是个技术雏形。而且对于UE等不熟悉或者不懂技术的人员来说还是有很的难度。那有没有什么便捷的方式,让小白也可以快速上手实现各类3D应用软件程序的实时渲染呢?
点量云实时渲染系统以可视化的界面,简单几步即使小白也可以实现对想要流化的程序进行渲染的目的。
1、准备能正常运行3D程序的服务器,
2、在服务器上安装想要实时渲染的程序和点量云系统(可按照教程自己快速安装,也可我方远程提供协助)
3、将3D程序的存储位置添加到点量云系统中,点击按钮生成终端可访问的
URL地址。
4、将该URL地址发给用户,用户在普通电脑、手机、平板等设备中通过浏览器直接打开就可以实时交互。而且体验和本地安装程序效果一样,而且不仅仅是UE4程序,Windows下的大部分程序都可以实现流化处理。
yunaliuhuatedian.png

相关文章
|
域名解析 监控 算法
阿里云拨测:主动探测Web应用质量,助力提升用户体验
阿里云拨测是一种针对互联网应用(Web页面、网络链路等)进行应用性能和用户体验监测的服务,无需嵌码即可为云上用户提供开箱即用的企业级主动拨测式应用监测解决方案。
8323 105
阿里云拨测:主动探测Web应用质量,助力提升用户体验
|
网络安全 数据库 数据可视化
HeidiSQL使用SSH Tunnel连接数据库
HeidiSQL SSH Tunnel登录远程数据库服务
4822 0
|
12月前
|
前端开发 JavaScript Android开发
移动端点击事件:原理、问题与解决方案
前端技术在移动端点击事件上的应用,涉及触屏交互、响应速度优化及用户体验提升,确保网页或应用在手机等移动设备上流畅运行。
|
Web App开发 负载均衡 安全
UE像素流送服务器规格网页云推流
本文详细解答了像素流送技术及其与实时云渲染的区别,并探讨了像素流送所需的服务器规格。像素流送技术使虚幻引擎应用能在云端运行并通过WebRTC将音视频流传输至终端设备,用户可通过键盘、鼠标等与应用互动。尽管两者在功能上相似,实时云渲染在视频流稳定性、长时间运行稳定性、端口安全、便捷性和兼容性等方面具有显著优势。文章还分析了影响服务器配置的因素,如并发数和显卡数量,最后介绍了实时云渲染网页推流的使用方法,强调其简便性和广泛适用性。
625 4
UE像素流送服务器规格网页云推流
UE建模模式编辑器工具的快速入门教程
在UE虚幻引擎中,想要进行创建网格体、制作新关卡几何原型、编辑现有静态网格体资产等模型编辑动作,都需要借助建模模式的编辑器完成。因此,充分掌握编辑器能力是每个UE开发人员必备的基础技能,尽管UE建模模式中的许多工具与其他建模软件工具操作类似,但在如何构建网格体编辑方面存在着重要区别。 下面就带大家一起了解「UE建模模式编辑器」的不同之处🤔。
|
前端开发 Java
SpringSecurity6从入门到实战之默认登录页面的生成
本文介绍了SpringSecurity在SpringBoot项目中如何自动生成默认登录页面的过程。当访问如`/hello`的受保护路由时,请求会经过多个过滤器。在AuthorizationFilter中,未认证的请求会被拦截并抛出AccessDeniedException。接着,ExceptionTranslationFilter捕获此异常并启动身份验证,调用LoginUrlAuthenticationEntryPoint的commence方法,重定向到/login。DefaultLoginPageGeneratingFilter拦截/login请求,生成并返回默认的登录页面。
|
安全 开发工具 Android开发
3种方式自动化控制APP
自动化控制APP不管是在工作还是生活方面,都可以帮助我们高效地完成任务,节省时间和精力。本文主要介绍自动化控制APP的3种常用方式。
3种方式自动化控制APP
|
Linux API 计算机视觉
DeepFace【部署 03】轻量级人脸识别和面部属性分析框架deepface在Linux环境下服务部署(conda虚拟环境+docker)
DeepFace【部署 03】轻量级人脸识别和面部属性分析框架deepface在Linux环境下服务部署(conda虚拟环境+docker)
756 0
|
Linux 数据安全/隐私保护 存储
Linux 下zip包的压缩与解压
范例:   zip命令可以用来将文件压缩成为常用的zip格式。unzip命令则用来解压缩zip文件。   1. 我想把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip:   # zip -r yasuo.
8069 0
|
存储 缓存 JavaScript
前端(八)——深入探索前端框架中的Diff算法:优化视图更新与性能提升
前端(八)——深入探索前端框架中的Diff算法:优化视图更新与性能提升
569 0