VR 行业这么热,那要加入这个热门行业到底需要什么技能呢?我们也找了一些过来人分享下他们的经验。
诺亦腾 项目经理 邓思渊这么说
“虚拟现实”(Virtual Reality)快要成为现在科技行业里最火的词汇。自从 Facebook 以 20 亿美元的价格收购了 Oculus,大家都认为虚拟现实将是未来的电子消费产业的浪潮。这个行业目前的状况,有点像 2005年 的智能移动产业:基本技术都已经齐备,但是大家并不知道未来会是什么样子,直到苹果 2007年 发布 iPhone 一锤定音。当然很多人希望投身于虚拟现实产业。在 VR 产业工作,有可能在 5年 之后你就会成为热门行业中的大牛,拿到极高的工资水平;但是行业中有些事情你必须得知道。
如果你是硬件工程师
在虚拟现实浪潮之前,我们面对的是智能硬件和物联网的 hype;似乎只要将生活中的任何一个物件加上一个显示屏和一个安卓系统,它就瞬间变得智能起来。当然,我们知道事情并不是这样的,所以智能硬件的创业现在已经进入了一个低潮期。我们在认真的思考我们到底需要怎样的智能硬件的同时,很多厂商看到了虚拟现实的机会,并一拥而上开始做虚拟现实头显——毕竟从硬件上来看,VR 头显的技术含量并没有智能手机高。但是事情并不是这样:虚拟现实头显涉及到的是人的视觉认知系统,所需要的体验的门槛是极高的。消费者或许会买一个智能音响而只是觉得它” 不太好用 “罢了;但是 VR 头显如果不能满足一些硬性的标准(比如低于 20ms 的延迟,60Hz 以上刷新率,2K 低余晖(Low Persistence)屏幕,高精度的定位跟踪系统等等),那么它给予消费者的体验是非常糟糕的。所以如果你之前在硬件领域vr游戏开发用什么技术,现在有心开发 VR 头显,VR 头显的体验门槛可能要比你想象得要高的多。
所以作为一个硬件工程师,无论是论是传统的电子电路设计还是传感器设计还是光学设计都在 VR 行业中有涉及。所以也需要你有比方说嵌入式电路设计的相关背景和经验,掌握 C/C++ 语言,熟悉 ARM 等嵌入式系统开发流程,有电路设计,PCB 设计能力。VR 也包括结构设计,光学和传感器设计,如果你有相关的背景,同样也可以加入 VR 硬件设计的行列中来。
如果你是软件工程师的话
VR 作为一个新兴产业,它的很多部分还没有定型。比方说 VR 交互如何设计,图形界面如何设计,如何将 2D 的界面设计扩展到 3D,这都是需要解决的问题。所以,作为一个 VR 软件开发者和界面设计师,你需要知道你现在的工作范围已经从一个平面的系统扩展到了一个三维的系统,所以整个 UI 的设计思路需要完全改变。而作为软件开发者硬件设备,同样要适应这样的改变。
VR 对于软件开发的要求是深入底层的,所以掌握 C/C++ 语言是很基本的,而且需要有比较强的数理背景,对算法实现,Matlab 都比较熟悉,根据领域的不同,有一些需要对图形图像领域,比方说 SLAM 和 OpenCV 比较熟悉,有一些需要对传感器,IMU 等算法比较熟悉,有一些则需要对 DSP/Bluetooth/WiFi 开发比较熟悉,在移动 VR 领域则需要对 Android 开发有了解。
如果你是游戏开发者的话
你是一个游戏设计师,觉得 VR 将会是未来的游戏的浪潮,于是打算开发 VR 游戏。但是,必须说明的是,VR 游戏并不是仅仅将传统的游戏加上双目分屏和可以自由转动的视角就可以的——VR 游戏将会是一种完全不同的东西。这其中有两个层面。
在技术上,开发 VR 游戏与传统游戏有很多的不同之处。比方说由于晕动症(Motion Sickness)的原因,在 VR 中,如果用户的身体运动与视野运动不匹配,就会导致强烈的晕眩材质材料,所以传统的主视角游戏不再适用于 VR。
在一些具体的技术细节上,VR 游戏也与传统的平面游戏相差很大——比方说 VR 游戏注重于帧数的稳定性更胜于画面华丽,双眼视差也让很多传统的 3D 图形手段不再实用,等等,这些都是一个 VR 游戏开发者所需要知道的细节。
而更重要的恐怕是中国特色的游戏产业——长久以来这个产业都与欧美主流游戏产业距离甚远。中国的游戏产业更加注重于移动端游戏,从玩家角度来讲,中国游戏产业更加注重于多人、F2P、休闲和 pay-to-win 模式,而欧美游戏产业更加注重于主机,强调画面技术和重度体验。而 VR 游戏天然的是强调体验依赖于技术水平的游戏——虽然在技术上,VR 游戏需要新的手段和技术,但是欧美大厂有足够多的技术和设计沉淀让他们能够很快的转换到 VR 游戏里来,而中国的游戏从业者就没有这样的积累。
所以,如果开发者要开发 VR 游戏,VR 游戏是不能照搬传统游戏的。作为 VR 游戏开发者,需要能够开发 3D 游戏的能力,还需要对目前主流的 3D 引擎比方说 Unity/Unreal 比较了解。如果对 3D 美术工具,比方说 3Ds Max、Maya、Zbrush 等有了解vr游戏开发用什么技术,并且熟悉脚本语言比如 Max、Unreal 等都会大大加强你的竞争力。