Unity Render Streaming是Unity开源的一个高质量、高复杂的3D模型在云端渲染,手机端侧、浏览器显示的解决方案。此解决方案的流技术利用了WebRTC,开发人员甚至可以使用WebRTC包创建自己独特的解决方案。
前面的安装使用我们在此前的博客中说过了
好,现在我们开始搭建一个Unity Render Streaming来看看demo的运行。
一、Unity Render Streaming安装部署以及案例的运行
1、首先创建一个工程,在Package Manager 的Advanced中首选勾选上Show preview packages,否则你查询不到Unity Render Streaming。
2、安装Unity Render Streaming,我们安装最新版本3.0.1-preview.1。
3、安装完成之后,我们导入Examples,还是在Unity Render Streaming的安装界面,在右下角点击Import into Project,就可以把Example导入Assets中了。我们就可以跑案例了。
4、接下来我们都知道webrtc client之间需要有个signal server,才能进行连接通信。Unity Render Streaming自己提供了一个web app的服务,能够作为signal server。首先我们可以在github上下载代码。地址: https://github.com/Unity-Technologies/UnityRenderStreaming
注意下载加下后的文件是UnityRenderStreaming-release-3.0.1 ,文件夹名字不能带-,需要删除,否则run.bat运行会提示tsc不是内部指令
5、下载完成之后,运行webapp需要安装nodejs,参照nodejs安装参照连接(只需要node -v nmp -v 正确就行 改仓库映射不需要)
。我们进入WebApp目录,我们点击run.bat进行运行。Webserver默认的监听端口为80,如果你想修改端口,可以打开package.json,修改"start": "node ./build/index.js", 为"start": "node ./build/index.js --port 9000 -w"。点击run.bat就可以运行了
运行结果如下:
6、webapp运行之后,我们可以继续运行Unity Render Streaming的例子了。点击WebBrowserInput场景,点击Render Streaming组件,修改Signaling URL: ws://127.0.0.1:9000,并运行之。
7、我们在浏览器中输入在webapp设置的IP 与端口,比如127.0.0.1:9000。
8、点击VideoPlayer Sample,然后运行就可以查看到Unity中渲染的场景了。
当前已经完成了Unity Render Streaming案例的运行,大家就可以行动起来,搭建自己的3D远程渲染服务了。
EPC附着及IMS PDN建立过程 最近在看VOLTE信令分析手册,其流程图中写的较为简略,其中一些细节并未明确列出。在流程图基础上找到了一些文字描述,可以补充流程中缺失的一些细节。对照看下,可以进一步加深理解。 文字描述中写了MME如何找到HLR,MME如何选择SGW/PGW,IMS注册过程中终端如何获得PCSCF地址。EPC附着流程【基本流程】...
onCreate:负责创建Activity和相关配置,还有布局的初始化 onStart:这个时候我们可以看到Activity的界面,但还不能与用户交互 onResume:现在可以与用户交互 onPause:Activity被部分遮挡,Activity不能与用户交互,与onResume相对 onStop:完全Activity不可见,但是Activity还存活,与onStart相对 onDe...
orcale数据库的DDL和DML操作。第一部分:数据表级别操作DDL(database defination language),主要包括创建建表,删除表,表更名,表字段新增,删除,修改,更名等等1、新建一张数据表(关键字:create table... ) create table student( id number, name var
在这之前试着接入过Firebase,但是当时因为接入了一些广告聚合平台,导致安卓的依赖库特别混乱,在处理了很多SDK的依赖冲突之后,又试着接了接Firebase,那次试了一两天,然后就放弃了,因为连续的接入一堆SDK导致依赖已经很乱了。。。这次因为去除了一些臃肿的SDK所有接入的还算顺利,以下是遇到的问题1.在UnityEditor中初始化正常,打包Android后提示错误: 缺少 Fir...
我们来学习下WebRTC中对音视频数据的采集。音视频采集API这里我们可以看到MediaStreamConstratints的两个参数的类型有两种:当时用boolean时,标识是否对音频、视频进行采集,如果使用MediaTrackContraints就可以分别对音视频的具体参数进行设置,比如视频的分辨率、帧率等,同样的音频也可以设置延迟性、音量、声道等等,后边的学习会详细研述。如下图一...
springboot模型中Long转String 注解实现@JsonSerialize(using = ToStringSerializer.class)@JsonSerialize(using = ToStringSerializer.class)
目录一、anaconda的下载与安装1.环境变量的设置二、spyder的设置1.spyder的汉化2.设置spyder的布局、DPI缩放与弹出窗口显示图片一、anaconda的下载与安装作为一个用惯matlab的研狗来说,在当初选择python编译器时毫不犹豫选择了spyder,于是在大佬的推荐下安装了anaconda这一集成环境(真香)。anaconda是一款免费开源的软件,直接在官网选择对...
[原创]关于javax.servlet.ServletException: File [/loginController/getVerifCode.jsp] not found异常 解决方案
大家都知道IOS的很多菜单都是从底部弹出的,这种展示方式还是很好看的,而丑爆的Android默认弹框一直都是大家一定要摒弃的,那么我们Android如何做出相应效果的弹框。下面我们就介绍这种做法。底部弹出框布局 dialog_goods_sku_layout.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout...
代码如下:#coding:utf-8import ConfigParser cf=ConfigParser.ConfigParser()cf.read("bond.ini")name=cf.get('db','dbcon')print name文件内容如下:[db]dbcon=123报错如下:Traceback (most rec
ZBrush是做什么的?学会ZBrush能干什么工作?做出来的模型是干什么用?想必这些问题一直困扰着初次接触ZBrush的朋友。zbrush是3D行业的直接核心,主要应用于大片电影和视频游戏,同样还适用于设计、珠宝、插画、3D打印、广告和其他很多行业。它诞生代表了一场3D造型的革命。它将三维动画中间最复杂最耗费精力的角色建模和贴图工作,变成了小朋友玩泥巴那样简单有趣。如果我说你熟悉的次时代游戏《战争机器》、《刺客信条》、《使命召唤》、《彩虹六号》和你看过的电影《加勒比海盗》、《指环王》、《阿凡达》、《黑
ZBrush常见问题