VR的英文全称为Virtual Reality,翻译过来即为人们通常所说的虚拟现实技术或称灵境技术,实际上它是一种可创建和体验虚拟世界的计算机系统。时下,随着互联网和科学技术的快速发展,VR虚拟现实应用技术以燎原的气势引爆各个行业,所以现在VR开发工程师可谓是名副其实的高薪职业,而且越来越多的人有意向希望加入VR开发工程师的大军中去,那么作为一名VR开发工程师需要掌握哪些呢?作为湖南VR开发领域的先行者及领军企业一九八网络科技(湖南)有限公司为你做一些专业方面的解答。
关于VR开发语言
VR 作为一个新兴产业,它的很多部分还没有定型。比方说 VR 交互如何设计,图形界面如何设计,如何将 2D 的界面设计扩展到 3D,这都是需要解决的问题。所以,作为一个 VR 软件开发者和界面设计师,你需要知道你现在的工作范围已经从一个平面的系统扩展到了一个三维的系统,所以整个 UI 的设计思路需要完全改变。而作为软件开发者,同样要适应这样的改变。
VR对于软件开发的要求是深入底层的,所以掌握 C/C++ 语言是很基本的,而且需要有比较强的数理背景,对算法实现,Matlab 都比较熟悉,根据领域的不同,有一些需要对图形图像领域,比方说 SLAM 和 OpenCV 比较熟悉,有一些需要对传感器,IMU 等算法比较熟悉,有一些则需要对 DSP/Bluetooth/WiFi 开发比较熟悉,在移动 VR 领域则需要对 Android 开发有了解。
当然作为VR游戏开发者,需要能够开发 3D 游戏的能力,还需要对目前主流的 3D 引擎比方说 Unity/Unreal 比较了解。如果对 3D 美术工具,比方说 3Ds Max、Maya、Zbrush 等有了解,并且熟悉脚本语言比如 MaxScript、UnrealScript 等都会大大加强你的竞争力。
VR语言就是3D编程引擎的语言开发。VR如果没有3D引擎(比如:unity和ue4)的支持是无法进行开发的。而3D引擎和编程所需的主要使用的语言是C#/C++,这个是毋庸置疑的。
那么如果想做VR开发,我们需要掌握那些技术:
1、 首先要学会C#:C#基础语法与算法、面向对象编程、C#是数据结构与高级语法;是做U3D的基础语言。而Unity 把 C# 当作脚本语言使用。Unity3D引擎结构与物理结构、UGUI与动画系统、导航系统,数据存储,数据库,协程,WWW类、网络,资源管理,特效系统,性能优化;
2、 c++语言:Unreal 引擎同样使用 C++ 进行开发。MiddleVR 提供了基于 C++ 的SDK。
3、 再次就是 Javascript 。它也是 Unity 的一种脚本语言(即使选择的人并不多)。但 WebVR 和 Javascript 程序员的基数(基友数?)一定会让 Javascript 继续在使用人数上占优(我真的不是黑啊)。即使不考虑 WebVR , three.js ,Babylonjs 这类已经非常成熟的 HTML5 3D 引擎也足够证明 Javascript 在 3D 上的强大生命力。
4、 还有就是其他计算机图形学与GPU编程:计算机图形学与的Shader编程。
目前VR是一个多学科交叉领域,在国内并没有几个比较系统的VR的培训机构,大家都在摸索阶段。不过一般来说,有游戏开发经验的人,加上一些VR的设计体验,和交互体验,就可以开始尝试做了。如果有想从事VR开发领域发展的朋友,建议可以跟一些专业的VR开发企业先学习一些经验,比如一九八网络科技这类专业的VR开发公司,是一个不错的选择!