疯键盘
发表于 2006-6-22 18:56:00
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?快速注册
x
虚拟现实”(Virtual Reality)快要成为现在科技行业里最火的词汇。自从Facebook 以 20 亿美元的价格收购了 Oculus,大家都认为虚拟现实将是未来的电子消费产业的浪潮。这个行业目前的状况,有点像 2005年 的智能移动产业:基本技术都已经齐备,但是大家并不知道未来会是什么样子,直到苹果 2007年 发布 iPhone 一锤定音。当然很多人希望投身于虚拟现实产业。在 VR 产业工作,有可能在 5年 之后你就会成为热门行业中的大牛,拿到极高的工资水平;但是行业中有些事情你必须得知道。 + D# O& x! y& h4 B, |1 F$ z. P1 L) ~
6 d( T* ]8 ]* y/ c
如果你是硬件工程师
" h! ]' n4 g/ c4 s# ?; F$ j8 P
. _4 c$ U) H! z4 e' \& t u2 n. a+ f# ^) }
在虚拟现实浪潮之前,我们面对的是智能硬件和物联网的 hype;似乎只要将生活中的任何一个物件加上一个显示屏和一个安卓系统,它就瞬间变得智能起来。当然,我们知道事情并不是这样的,所以智能硬件的创业现在已经进入了一个低潮期。我们在认真的思考我们到底需要怎样的智能硬件的同时,很多厂商看到了虚拟现实的机会,并一拥而上开始做虚拟现实头显——毕竟从硬件上来看,VR 头显的技术含量并没有智能手机高。$ H* c6 e2 h1 A1 K( A& A0 B
9 L! V* x e' V! M# E& c. x
但是事情并不是这样:虚拟现实头显涉及到的是人的视觉认知系统,所需要的体验的门槛是极高的。消费者或许会买一个智能音响而只是觉得它” 不太好用 “罢了;但是 VR 头显如果不能满足一些硬性的标准(比如低于 20ms 的延迟,60Hz 以上刷新率,2K 低余晖(Low Persistence)屏幕,高精度的定位跟踪系统等等),那么它给予消费者的体验是非常糟糕的。所以如果你之前在硬件领域,现在有心开发 VR 头显,VR 头显的体验门槛可能要比你想象得要高的多。
, S7 V9 x8 v: `- Z- m" i& S8 W
$ d7 q6 L7 H$ B3 E0 K! a; M. V0 a5 i. n" W2 f0 b
3 H; U7 @4 f( ^4 f! F所以作为一个硬件工程师,无论是论是传统的电子电路设计还是传感器设计还是光学设计都在 VR 行业中有涉及。所以也需要你有比方说嵌入式电路设计的相关背景和经验,掌握 C/C++ 语言,熟悉 ARM 等嵌入式系统开发流程,有电路设计,PCB 设计能力。VR 也包括结构设计,光学和传感器设计,如果你有相关的背景,同样也可以加入 VR 硬件设计的行列中来。
1 I* q; F( l& {( Q E
+ W+ b$ s2 X" \如果你是软件工程师的话" W# T; o4 `8 i. N) ~4 o
, [+ l% B' g1 I0 B5 }9 {% u1 T
9 @$ C+ T5 T& c" y; {* q
+ o# C% u8 K8 k/ c# X5 w" FVR 作为一个新兴产业,它的很多部分还没有定型。比方说 VR 交互如何设计,图形界面如何设计,如何将 2D 的界面设计扩展到 3D,这都是需要解决的问题。所以,作为一个 VR 软件开发者和界面设计师,你需要知道你现在的工作范围已经从一个平面的系统扩展到了一个三维的系统,所以整个 UI 的设计思路需要完全改变。而作为软件开发者,同样要适应这样的改变。
% p8 | r, g* ^8 X# P6 f- q- {& U8 I" D2 Z5 |3 W9 a6 n% p5 u$ O% _; W
( K3 u. N& m( I' b% {& ~ E2 c0 Z2 T5 u6 s- o, d# O4 |# i
VR 对于软件开发的要求是深入底层的,所以掌握 C/C++ 语言是很基本的,而且需要有比较强的数理背景,对算法实现,Matlab 都比较熟悉,根据领域的不同,有一些需要对图形图像领域,比方说 SLAM 和 OpenCV 比较熟悉,有一些需要对传感器,IMU 等算法比较熟悉,有一些则需要对 DSP/Bluetooth/WiFi 开发比较熟悉,在移动 VR 领域则需要对 Android 开发有了解。 7 q5 A# q6 `. C
2 x. X1 i" O! T6 v) w
如果你是游戏开发者的话% [1 J7 o1 L# H: q
2 {3 ?& A3 F' T2 g1 {! }9 {
% n* S6 r" @4 y: m7 \" b4 j你是一个游戏设计师,觉得 VR 将会是未来的游戏的浪潮,于是打算开发 VR 游戏。但是,必须说明的是,VR 游戏并不是仅仅将传统的游戏加上双目分屏和可以自由转动的视角就可以的——VR 游戏将会是一种完全不同的东西。这其中有两个层面。9 L3 z \" F3 E4 Y
g' ^$ J& z6 ^9 T' x
3 L& ^/ n( J7 y6 d
在技术上,开发 VR 游戏与传统游戏有很多的不同之处。比方说由于晕动症(Motion Sickness)的原因,在 VR 中,如果用户的身体运动与视野运动不匹配,就会导致强烈的晕眩,所以传统的主视角游戏不再适用于 VR。
# p- H/ D; W# U }0 {: m% O4 X" G* v) @) t
8 g' i: b$ }7 G% d+ w9 V H在一些具体的技术细节上,VR 游戏也与传统的平面游戏相差很大——比方说 VR 游戏注重于帧数的稳定性更胜于画面华丽,双眼视差也让很多传统的 3D 图形手段不再实用,等等,这些都是一个 VR 游戏开发者所需要知道的细节。
; @5 t) Z+ M9 C) n- H0 q3 P( H k! o: ~ }2 X( o G
: I2 Q- T0 y* [9 q( H; K. Y$ h
而更重要的恐怕是中国特色的游戏产业——长久以来这个产业都与欧美主流游戏产业距离甚远。中国的游戏产业更加注重于移动端游戏,从玩家角度来讲,中国游戏产业更加注重于多人、F2P、休闲和 pay-to-win 模式,而欧美游戏产业更加注重于主机,强调画面技术和重度体验。而 VR 游戏天然的是强调体验依赖于技术水平的游戏——虽然在技术上,VR 游戏需要新的手段和技术,但是欧美大厂有足够多的技术和设计沉淀让他们能够很快的转换到 VR 游戏里来,而中国的游戏从业者就没有这样的积累。
1 K I. Y, E1 u7 ~+ Q7 H8 M" t3 S. M* `2 a+ d3 [% B: T4 z) v2 k6 }. x
1 K- z+ [. U) \; I) n+ K; i所以,如果开发者要开发 VR 游戏,VR 游戏是不能照搬传统游戏的。作为 VR 游戏开发者,需要能够开发 3D 游戏的能力,还需要对目前主流的 3D 引擎比方说 Unity/Unreal 比较了解。如果对 3D 美术工具,比方说 3Ds Max、Maya、Zbrush 等有了解,并且熟悉脚本语言比如 MaxScript、UnrealScript 等都会大大加强你的竞争力。! O9 Q6 g. x; y3 x8 Q
灵镜 VR HRM 岳艳茹这么说:大家最近应该都听到 2016年 将是虚拟现实元年,可能成为替代智能手机的下一个计算平台,资本市场也在这一领域大力布局。所以,对于每个求职者来说,也是一个很大的机会。
, X# `( n$ |" R2 B( i% `
) _: T9 E k1 q: ?! L c; S- Q0 J3 |+ d/ U0 d) b
那么问题来了,VR 领域到底需要什么样的人?
! u0 z5 g; r; z$ f q, z
2 K- h+ ^) J0 I+ [8 C% m I& P; t- `) W# P8 r
M# R2 ~! [2 V! h6 ?9 A
在 VR 行业的这段时间里,我看到了所有在这个行业的人有一个共性,那就是极客!但是,在这个领域你只有精神那是不行的,必须具备扎实的技术做依托才能实现,就像 07年 的时候能断定互联网是未来,程序猿们都会提前去研究开发 Android 和 iOS。
" c$ \% V7 ]" m" H' }: O% X, ]! K* T
5 P2 w' c2 W6 z* e+ f0 z4 e, G2 ]1 v所以,如果你是一个技术类型的人才,而且想要加入一家做 VR 头显设备的厂商,那么你可能需要这样的核心技能:' R% r7 w3 {/ @6 Y" i
- B& X7 D% O2 J. y0 ~2 q
6 G1 r9 T' E3 y z' `" Z; [: H
1动作感应$ i6 A" d$ r& G
0 k& s( M5 M1 \5 {
人们常说戴上 VR 眼镜的时候有眩晕感,其实这种眩晕感来源于不同步,比如:脑袋转了半圈,那么虚拟世界中画面也要转相应的角度,如果不同步就产生眩晕感。要做到虚拟世界和现实世界的同步我们就需要九轴动作感应器和相应的算法来解决。而能做这个技术的人就要具备:熟悉数字信号处理,并能运用 matlab、C 语言进行滤波算法设计; 还要了解加速度传感器、陀螺仪、磁力计等传感器的工作原理,并有一定的数学建模能力,能够利用数学建模进行传感器在移动设备中的应用算法开发; 还要熟悉卡尔曼滤波等姿态融合算法。
2 {/ ]; T* f7 y J) ~2 U+ g. R
0 w# m. P- {- r# \" Z: @ - @9 j2 W: ]3 J$ E7 C
3 x. L0 I$ ~2 m& M% N9 {# ^
5 r2 `" P5 X$ |- S; h* D2反畸变、反色差5 g. {$ E s5 J) [: \ H3 \
6 M7 K+ x# m$ J. y2 z) k7 X由于 VR 眼镜的光学镜片结构有限,通过镜片放大后去看都会存在图像畸变、色差、边角模糊的情况,由于物理光学进步比较缓慢,所以只能通过光学软件来弥补,而光学工程师则要具备:了解人眼光学系统特点,熟悉使用 ZEMAX、CODE V、LightTool、MATLAB 等光学设计软件中的一种,有丰富的光学设计、光路分析和误差分析经验。
, `+ q T! y! ~ n9 s8 T# z. R3 b) S; [' D# ]# R
% n1 i+ X/ E+ v( E, Z# x5 c2 A3 `6 s4 e. Y! e
& B. w. Z5 |+ ^6 c' c5 j9 q
3多线程渲染
) U! }( I7 V8 j0 \3 Q& g2 O- _4 B1 b9 I' k4 x V* r: g9 B/ t
由于 VR 强调的是完全沉浸,因此对图像渲染还是叙事手法都有很高要求。而目前市场上这类人又极其稀缺。记得刚来 VR 公司的时候,技术负责人找我,说目前最重要的岗位就是需要一个 3D 引擎开发工程师,都招了 3 个月了还没找到合适的。问其原由,市场上整体这个类型的人都比较少,因为这个职位需要具备线性代数基础扎实,熟悉 3D 图形学及主要算法,要熟练使用 C/C++,掌握 OpenGL,而且基本都是硕士学历的人。再者:C/C++ 跟 Java 相比,同是大学毕业或者培训机构出来,C/C++ 起薪 4000,java 起薪 6000,而且 java 相对来说又比较容易,出现 BUG 能随时发现并改正,久而久之大家都肯定选择从事 JAVA。但是从长远来考虑,C/C++ 薪资:4000-无上限,而 JAVA 薪资:6000-30000(薪资只是大概数据),所以就看你是追求长期利益还是短期效益了。
1 @% {% R" _2 `7 p
b: o" {! w: T" `0 C( [: w- V: U$ T! R2 N6 O% m9 w
! D) M- T" x! S' o( M( M+ n
VR 技术核心职位不管是对学历还是专业都有严格的要求,但是想进入这个行业也还是有很多其他机会。
! H5 Y6 Z) d# j8 s5 h' Y: J( O4 Z# ]" Q& H4 E
' u. Y' B& x% v预计到 2020年,全球头戴 VR 设备年销量将达 4000 万台左右,2016年 在 1000 万台左右,目前硬件领域已经相当火热了,VR 眼镜应是这两年比较热门的,所以如果你是学机械设计或者工业设计专业,对 DFM、塑胶、五金模具结构、材料加工工艺有较深的了解,拥有一定三维造型软件使用经验,如 Rhinoceros ,Pro-E,Solidworks 等,可以设计出打动人的方案,并根据外观设计图完成产品的结构设计,制定产品相关技术文档(BOM/ 装配图 / 爆炸图 /2D 图),也有机会加入 VR 创业公司。
4 f' y/ a; `; K* F5 o
& R$ D9 I9 C Y$ g% `2 G) \& O
! e0 J& s3 j: ?1 O我们认为,VR 一体机可能是行业的未来发展方向,它无需借助手机,内置处理器与显示设备,可以单独使用。所以技术要求会更高,就相当于在 VR 眼镜里做了一个 “手机”,所以在这方面,如果你精通数字电子,模拟电子以及计算机原理等专业理论,了解单片机、ARM RISC 架构处理器。能够熟练使用 POWERPCB、Orcad、allegro 等 EDA 工具进行原理图和 PCB 的设计, 熟悉 IIC、SPI、UART 等接口协议,了解 DDR SDRAM、LCD、蓝牙等接口的协议标准,熟练使用 C 语言完成固件程序和相关底层驱动的开发, 熟练使用万用表、示波器等设备,可以完成简单焊接,独立完成产品调试,那就很适合了。其实,简单来说就是在手机、平板电脑领域做硬件研发的工程师会很适合这个位置。
: ^2 [, |( p! r0 Z9 [ x |
|
|
|
|