如何自学VR虚拟现实技术?VR简单上手教程

原文地址:http://www.hdpfans.com/thread-653793-1-2.htmlhtml

随着VR虚拟现实的爆发,愈来愈多的知名企业开始布局VR产业,也指望在将来的VR市场中,能占据有利地位。若是你如今想研究VR,不妨停下脚步,看看如何从VR虚拟现实技术开始着手。由于以前有人问过我,这里结合本身的经验和参考国外的一些教程,将如何学习VR虚拟现实技术作如下整理,但愿对你们有一些帮助。VR简单上手教程主要分为3部分。web


如何自学VR虚拟现实技术?VR简单上手教程


原生VR app开发编程

开发VR app或者游戏可让VR内容更加丰富,刺激整个VR大环境的发展, 进而吸引更多的用户接触VR,让整个VR生态更繁荣。你开发的应用将安装在MAC、PC、Play Station 或者安卓、iOS上面。浏览器

这将是VR的其中一个边界。你须要弄清楚VR的UI/UX,而后让用户以正确的方式充分享受VR带来的益处。你须要学习一种3D引擎。Unity是个优秀的入门引擎,掌握它须要学习C#和Javascript语言。app


如何自学VR虚拟现实技术?VR简单上手教程


若是你是个编程新手,我推荐你看《JavaScript DOM编程艺术》、《Eloquent JavaScript》这两本;若是你已经有必定程度编程经验,能够直接看《JavaScript语言精粹》。对于Unity,能够看一下Unity3D官网给出的Roll-a-ball,是个不错的小教程,能够用它初步熟悉下Unity。看完了这个,就能够直接去Oculus官网的Developer Center学习文档和SDK了。编辑器

我的认为,学习Unity的最佳方式就是本身去尝试着开发一个简单的小游戏,在过程当中遇到问题的地方就去Google一下,或者去Stackoverflow寻求帮助。其次就是和VR开发者论坛的朋友们多交流,互帮互助。ide

其次,刚刚上面讲的教程都是关于VR的输出设备或者说VR头显,若是你对VR输入设备感兴趣,想开发VR的UI/UX,Leap Motion是个不错的选择(固然还有Oculus touch 或者 HTC Vive),能够去leapmotion官方看看开发者文档。布局

最后,除了基础编程知识,我建议再补充一些数学知识,推荐《Essential Mathematics for Games and Interactive Application:A Programmer’s Guide,Second Edition》。学习


VR电影的录制测试

VR电影是VR另外一个边界,方法是使用特殊的全景摄像机来录制360度视角的影片。


如何自学VR虚拟现实技术?VR简单上手教程


拍摄全景视频,首先须要一套VR摄影设备。目前有不少解决方案,这里不一一列举了,有兴趣的同窗能够Google搜索「VR camera rig」。光场相机将会是这个领域的颠覆者,其中360Heros全景相机架是个不错的选择。

平时若是你想给你的朋友分享一段普通视频,原生的VR视频足矣。但若是你想拍一段电影,你须要对视频作编辑,这时候普通的视频编辑器就不能用了,必须使用VR视频编辑器,好比「SpliceVR Editor」。


VR web开发

毋庸置疑,原生VR应用和游戏以及VR视频会最早普及,可是最终,确定会走向web。开发者们还记得「一次编写,到处运行」这句古老的名言吗?网页就是咱们实现这一承诺的最大可能。与其开发仅能在单一平台或VR头显上运行的原生应用程序,开发者们不如采用web来打造本身的VR体验,这样就能够简简单单经过浏览器运行了。Google和Mozilla携手致力于WebVR的建设,咱们能够预见3D版本的万维网的到来。

随着用户们对原生VR应用需求的膨胀,他们也必定期待开发者创造出VR的web应用。


如何自学VR虚拟现实技术?VR简单上手教程


首先,VR web体验将带给你相似浏览facebook或youtube的体验。用户在web上,能够将视频切换到「VR模式」。和VR电影不一样的是,用户能够在VR环境中来作VR购物、VR约会或者VR在线课程的学习。

首先你须要学习一下three.js。three.js是一款运行在浏览器中的 3D 引擎,你能够用它建立各类3D场景,包括了摄影机、光影、材质等各类对象,它是由JavaScript编写的WebGL第三方库。你能够去它的官网学习:threejs.org。而后参考Github上的 borismus/webvr-boilerplate项目试着实现一个简单的VR网站。记住使用Chromium或者Mozilla nightly来测试你的VR站,参考webvr.info。接下来,试着向你的场景中加入3D模型,并试着改变它的位置,并将它旋转,threejs.org的examples中有丰富的小例子。假如你想向其中加入一些物理信息系统,参考Github中的Hello-Cannon.js!项目。

看到这,你是否对VR技术的入门知识有个大概的了解呢?其实VR开发并非什么特别的新东西,它跟传统的Native和Web开发相差并不远。但愿这篇文章能够给喜欢VR的同窗们带来一些小小帮助。