如何优化HTC Vive的<VR+行业应用>开发流程?
基於<Real素材>的有机次序(Organic Order)
-- 以<VR+教育>素材平台为例
-- <R素材平台>建置技术&实务
-
阐述如何调整HTC Vive开发流程,来满足<VR+行业应用>的巨大需求。
-
从基于游戏的古典开发思维,更上层楼进入<VR+行业应用>开发思维。
-
在HTC vive平台上,开发者的思维还停留在VR游戏上,但VR行业应用开发潮流已经超越游戏思维的范畴了。
-
开发者必须站在非游戏行业的需求来优化其开发流程,才能正确有效地开发出<Vive+行业应用>。
-
也能加速HTC Vive在游戏之外的广泛行业应用与发展。
-
传统开发流程的误区在于:许多HTC Vive开发者把U3d上的Artificial素材,与行业(专业)的Real素材混在一起。
-
此外,也把Real素材的行为代码,混淆在U3d引擎的script里,绑死了行业ReaI素材的成长与新陈代谢,阻碍了业主的创新和成长。
Part-1、认识 A素材 vs. R素材
-
VR素材可分为两类: 第1类是App开发阶段使用到的美术、动画、灯光、声音等资源,这是做游戏者最关注的素材
-
我们常称上述第1类素材为: 人为素材(Artificial Material)
-
且称第2类素材为:真实素材(Real Material)
-
在VR游戏体验应用上,两类素材区分并不明显。但在VR行业应用(如VR教育)的开发上,明确区分两类素材,就很关键了
-
兹拿家中的水龙头来做比喻:VR App是水龙头
- 而人机介面(UI)是水龙头(App)的手把部分
- 从水龙头的比喻,让我们轻易联想到第2类素材: 从水龙头流出来的ㄑ水〉资源
Part-2、以<VR+教育>为例
-
在〈VR+教育〉行业应用中,从水龙头流出来的〈水〉才是用户真正需要的内容(和素材)
-
例如,VR App在终端头显上执行时,会不断地从云瑞(分发平台)下载最新的教学课件(如肖邦钢琴乐谱、MRl扫描的癌细胞3d影像模型) ,然后从VR头盔屏幕顕示出来
-
这些从云端(水库)取得,并从头盔App(水龙头)显示出来的课件内容(水),就是第2类素材:Real素材
-
若缺乏3D形式的Real素材,而只有Artificial素材,可做VR游戏,但对ㄑVR+教育〉并无意义
- 这些课件都是含有老师专业知识的,属于R素材(即Real素材)
Part-3、以<VR+医疗MRI>为例
-
如何让VR贴进生活呢?
-
人们体验了VR虚拟世界之后
-
总会产生欲望想透过虚拟操作,来改变生活周遭的真实事物
-
例如医生,总是想透过<VR+医疗MRl>提升他手术(改变真实)的精效
-
因此,如果在<Real素材>不能做到极致的RV(Reality Visualization)
-
将大大降低医生、患者的VR体验
-
VR也远离了人们的生活
-
所以,像淘金客一样,用心寻觅探堪那里蕴藏了扎实专业的3D <Real素材>,是VR团队获利策略的重要环节
Part-4、R素材与App之关系
-
R素材与App之关系就是:水与水龙头之关系
-
App是水龙头;R素材是水;R素材平台是水库;Internet是水管
-
例如,MCU(台北銘傳大学)所研发/创造的知识内容(课件),其实就是VR的R素材
-
R素材(课件)是用户在全球各地教室里执行App时,实时从素材平台下传,从App显示出来
-
MCU的R素材随时创新、实时呈现在全球各教室
-
VR App只不过是一种新潮而多样化交互的水龙头
Part-5、R素材与App开发流程
-
上述MCU大学的课件是实时存取的,也就是,不能绑入VR App的
-
这些课件都是含有老师专业知识的,属于R素材(即Real素材)
-
因此,R素材是实时(云端)存取的,不能绑入VR App的
-
所以,正确的VR教育项目开发流程,应该是:
- 反观,许多VR项目开发流程(如下图),并不适合于<VR+教育>的
- 例如,一个不合理的唐诗/宋词的VR教学内容(App),其制作流程是:
-
其将唐诗/宋词等的R素材与美术/音效等A素材(即Artificial素材)混合在一起,统统绑入App里
-
把唐詩綁入App裡,對將是災難的開始!
-
一旦MCU師生對唐詩有創新吟法,R素材新陳代謝了,各硬件平台上的唐詩VR App必須全部重新編輯、上傳、用戶下載、安裝。時間、成本不堪想像!!
-
所以,应该改变唐诗/宋词的VR教学内容(App)的制作流程,如下:
-
其实,MCU课程内容都是R素材,都不宜绑入HTC vive APP、三星APP、FB APP等
-
在学习VR知识体系时,对内容(Content)、应用(App)、款式(Pattern)和素材(Material)等基本概念必须明确分辨
-
内容(Content)是泛称,其分为3个层级:大颗粒的应用(App)、中颗粒款式(Pattern)和小颗粒素材(Material)
-
APP主要是Ul交互的A素材和脚本程序代码
-
APP程序代码会呼叫硬件平台的API,才能驱动手柄、头盔交互,所以App是Platform-dependent
-
一旦把MCU的课程内容(R素材)绑入APP里,MCU课程内容就无法跨平台了
Part-6、R素材库反映了真实自然界的有机次序(Organic Order)
-
完整的R素材是一个阴阳融合的整体,也就是阴仪(行为)和阳仪(构型)整合为一的,表达自然界事物的本质完整性
-
使用的时候,素材设计师或App开发者,从R素材库取出其构型(3D的几何图形)时,也同时带出其行为(专属的软件代码)
-
例如,下图只有阳仪,只有构型部分而没有行为部分,通称为<静态(static)素材>:
-
把这构型专有的阴仪(行为代码)搭配上来,再由计算机运行这代码(Code),就可产生(动态)行为了,通称为<动态(dynamic)素材>:
-
在VR里,每一个原子素材都可以是完整的、动态的。全世界的设计师们可以轻易上网,到R素材库里拉出一个氧原子(O),和两个氢原子(H),不需要U3d编辑器,任何计算机都可以运行其专属的代码,而在VR头显上呈现出氢、氧原子的动态行为
-
然后VR设计师将上述三个原子层级R素材,组合起来成为一个水分子,也就是一个分子层级的新的R素材
-
此时,设计师开始制作水分子的构型(3D的几何图形),也设计水分子的各种行为(如流动、波动、反光等),接着就由码农(Programmer)以计算机语言(如C++)来编程,撰写出这些流动、波动、反光等行为代码
-
最后,水分子的构3D构型与行为代码,组合为一,就是一个完整的、动态的水分子VR动态素材了
-
这样的R素材库就反映了真实自然界的有机次序(Organic Order)
Part-7、Organic Order:以<VR+教育>为例
-
MCU(台北铭传大学)的知识内容(如课件),是VR的R素材(即Real素材)
-
例如,360全景视频或3D模型课件素材,都是3D的R素材。前面已经说明过了,其结构是:
-
例如,在MCU素材平台上有个<课件>,它是由1个mp4视频和2个ppt档案所组成
- 我们很容易建立一个动态的mp4素材结构:
- 再建立一个ppt动态素材结构:
-
接着,就组合出分子层级的<课件>素材了,如下:
-
于是,课件动态素材与MCU素材平台的档案之间的关系是:
-
VR App可以透过课件素材,调用素材的代码函数来间接取得素材平台的视频或档案
- R素材库反映了真实MCU知识领域的有机次序(Organic Order)。
Part-8、深入领悟R素材的本质及有机结构
-
大家都知道,VR的"R"是真实之意,VR常常要反映出真实
-
什么是真实? 例如,一位患者身上癌细胞的现况是真实
-
一个癌细胞R素材,是由一群分子层级R素材,所构成的<更大层级>的R素材
-
在R素材库里,一个癌细胞R素材也含有它的3D构型(阳仪)和行为代码(阴仪)
-
癌细胞的构3D构型与行为代码,组合为一,就是一个完整的、动态的癌细胞R动态素材了
-
本来自然界里的每一项素材模型,都含有它本质性(Essential)、不可分割性的元素。这些元素可分为两种:1)结构性(Structural)元素;2)行为性(Behavioral)元素
-
例如,孙悟空模型本质上,就含有上述两种元素:1)形式(结构)上像猴子;2)动作(行为)上有72变,会腾云驾雾
-
再如,仙劍游戏里的一把剑模型,本质上就含有两种元素:1)剑的形式(结构性)--- 大小、颜色、长相等;2)剑的变化(行为)--- 特殊的形状变化节凑、颜色闪亮的韵律等
-
上述的行为面(行为性)的元素,必须以软件代码表示,用来指示电脑执行才能呈现出来
-
一个素材的结构性要素和其行为面要素,就像太极的阴阳两仪,密切不可分的。可是,VR设计师常常把行为抽离了,设计师也用心<设计>素材的行为,但是不会写软件代码来<表现>素材的行为
-
这编写代码的工作就转交给码农(Programmer)了,码农就把各式各样素材专有的行为代码混杂在一起写成U3d或Browser的脚本(Script)。有些则写成独立的软件工具,然后摆在软件的Lib库里,所以在表达上、储存上,太极的两仪是分离的,非常难以无缝重组回来
-
于是,R素材库失去了素材本质性的有机次序(Organic Order)。R素材库很可能逐渐变成一只难以驾驭的恐龙了
-
自然界里,除了原子级别的素材,还有分子级别的素材,然后才有化合物层级的应用物品。无论是任何原子层级的素材,都有其结构(电子、质子等)和行为(电子、质子相吸和运行)。一样地,分子层级的素材也都有都有其结构(如H2O等)和行为(共价相吸)
-
关键的问题是:VR设计师在原子级别就把行为面(代码)抽离了,表达和储存分离了。VR设计师和工程师,就无法将原子层级素材组合成为分子层级素材了
-
理由是:分子的行为常常是由原子行为所组合的协作性(Collaborative)行为,如果在素材库里只能找得到原子的构形(阳仪),却难以找到它专属的代码(阴仪),就无法建构出分子层级的素材了
-
这种分子层级的素材,在服饰业、和建筑业里,通称为款式或样式(Pattern),而在软件上,则称为模式
-
R素材库只要有由分子层级的R素材(资源)。就能有效表达自然世界、或虚拟世界里阴阳融合的有机次序,在井然有序中无限繁荣了
Part-9、Real素材包装的标准化策略
- Real素材包装,如同〈信封〉的标准化对管理者的获利就很关键
- 换句话说,R素材本身(信纸)百花齐放; 而R素材的包装(信封)力求标准化,才能支撑VR获利商业策略
- 宜采ㄑVR+Docker〉素材标准化和动态化,以强力支撑VR素材共享复用而获利。
- 參考:<<R素材的标准化>>
Part-10、<红绿灯>的范例
-
例如,浙江的义乌是全球著名的小商品城。义乌厂家数以百万计的所有产品的3D模型都是VR App的R素材
-
因为R素材常常就是2B(to B)客户的产品的3D模型,它是客户随时创新、改版、新陈代谢的
-
不宜把它们绑死在U3d里,它们(即R素材)的行为代码也不宜写入U3d脚本里
-
许多人开发HTC Vive内容时,并没有仔细区别这两种素材,VR App反而绑死了客户的产品新陈代谢!
-
例如,义乌VR电商平台,其中有一项产品是:<红绿灯>产品
- 大家都知道,红绿灯产品里的每一颗灯都有其<3D结构>和其专属<行为>,其行为包括 <亮>与<熄>两项行为
- 将3个灯组合起来,成为一个<红绿灯>产品,这整体产品有其<专属的行为>,包括:亮绿灯,之后亮黄灯,再亮红灯
- 过去,不正确的作法是:
- 未来5年内,VR硬件平台仍然会百花齐放,各平台的API都是不一样的。上图里将<红绿灯>行为代码绑入App里,与硬件平台API混杂在一起
- VR App这几年内都不可能跨平台,上图还让红绿灯产品(也是VR的R素材)的代码也不能跨平台
- 素材或产品不能跨平台,也不能跨App,就无法发挥素材的复用性(Reuse)了。所以针对不同硬件平台,都必须重新写一遍素材的行为代码,且绑死在特定平台的App里。
- 由于各平台上的VR App里都有遍素材的行为代码,也就是素材的行为代码被任意散布于各App里
- 一旦义乌的<红绿灯>产品改版了,其行为有一些改进,行为代码也必须修改。此时,灾难就发生了:所有含有原来行为代码的App,统统必须重新改写代码、重新编译、重新发布、和下载安装。其耗费的人力、时间都是难以估计的。所以,宜改为正确的做法:
- 于是大家可遵循美好的法则:1) 红绿灯的构型与行为合而为一,不要分离; 2)只把代码的API绑入VR App,不要绑入代码本身;3) 也不要将红绿灯的构型绑入App,而直到用户运行VR App时才到伺服端实时取得红绿灯素材。这样就一切OK了。
- 關於API,請參閱:VR行業平台的框架API設計。
【博主】
高煥堂/台湾VR产业联盟 主席/misoo.tw@qq.com
高老师教您架构思维,富贵藏在...
==>请看内容
~ end ~如何