UNITY如何动态加载R素材?-创新互联
Daydream/Unity技術:
成都创新互联公司是专业的旺苍网站建设公司,旺苍接单;提供网站建设、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行旺苍网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!Unity动态加载R素材-- 使用ScriptableObject和AssetBoudle
by 高煥堂
一、背景说明:
如果您还不熟悉R素材与A素材,请您参阅:Real素材的有机次序。
大约半年前,我为了想参与与HTC 的Vive X加速器计划而设计了
这项平台技术方案也公布于HTC Vive官方论坛上。请参阅HTC Vive开发者论坛文章:" 如何在Vive上开发
--- https://www.vive.com/cn/forum/chat.php?type=developer
或者 --- https://www.vive.com/tw/forum/chat.php?type=general
二、
记得半年前,我把素材区分为两种:A素材与R素材。一开始,我并不是基于客户的方便性(Artificial)与需要性(Real)而区分的。而是从系统(产品)角度来区分的。因为平台最关键在于强势型API的制定权在谁手上,例如Android平台的SDK/API制定权在Google的OHA联盟手上,即使HTC把手机终端产品和UI做得再好,都会因API受制于人。
基于强势型API的制定权,就把素材分为两种,然后透过我定义的API在我的平台上自由组合成为VR App,也就俗称的VR内容(content)了。这就如同日光<灯座>与<灯管>之间的关系了。
从系统(产品)面来看,两者的区分在于:A素材是”Early-binding at development-time”就是在开发阶段就绑进去App(如房屋)里一起编译、连结,并和一起上传下载。而R素材是”Late-binding at run-time”,就是在App运行(房屋入住)阶段才透过API到平台上取得R素材来与装配上去。
把它对应到
所以我特别强调<行业>。帮行业的创作(R素材),找更多呈现,找更多客户群。也就是旧R素材(搭配A素材成新产品)、卖新客户。而不是传统上,在老掉牙的客户群,帮他找更多东东给他们(新产品卖旧客户)。因为VR的2C不行,C不会给更多$,我们却花更多成本,就赔$了,富贵远去了!
反之,我则鼓励大家寻求更多C群,分担精致R素材的高成本,给予C中价位,高质量VRAR内容。创业者从单一行业(R素材)出发,逐渐复制技术(及A素材)到不同行业,也分担了技术及A素材的成本。一方面,透过更多C群,分担R素材成本。另一方面,透过更多行业,分担技术及A素材成本。因而A、R素材和技术都高质量,成本因分担而下降,创造了物美价廉。若因物美占有市场,若因物美而价高,富贵相随矣!
三、实践技术:使用Unity的ScriptableObject和AssetBundle方法
其中,大家比较常问的是:R素材必须动态加载,而不能再开发段就绑入App里,如下:
其中,基本需求是:不要将红绿灯的构型绑入App,而直到用户运行VR App时才到伺服端实时取得红绿灯素材。那么,在实际的Daydream或HTC Vive体验平台上,又如何实现这项实实取得呢?
其实践方法有许多种,如果您使用Unity编辑器,最简单的途径就是使用Unity的ScriptableObject技术。我们可以使用 ScriptableObject 在 Project view 建立专用的 Asset 来做设定,并将它存放在Resources文件夹中。当VR App运行中,需要用到时,才调用 Resources.Load()函数来取到设定值,若有任何修改的话,只要打开 Project view 内的 Resources文件夹修改一下即可。
通常,一个行业的R素材资源是相当多的,而且会时常更新的,这些庞大资源全部绑入App里,本身就不合理。于是,就可以进一步将ScriptableObject打包成为AssetBundle。我们的VR App可以掌管主要逻辑或线程,当有需要某些资源(如R素材),才从外部的 AssetBundle 加载资源,这样我们常常只需要重新打包资源(R素材)的部份就能完成更新,而不需要重新编译App。
如果不是使用Unity编辑器,也可采用其他技术,例如运用Android/Linux平台上的*.SO,或者Windows平台上的DLL来实践动态加载。其技术细节,之后再来帮您解释了。
高煥堂 教您架构思维,富贵藏在...
==>请看内容
~ end ~
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章名称:UNITY如何动态加载R素材?-创新互联
URL链接:http://hbruida.cn/article/hpgpc.html