VR应用方向     面向消费者的虚拟现实才发展了几年,就出现了大量应用程序,虚拟现实抓住了人们对未来的渴望.开发者甚至想要把整个现实世界都做成虚拟现实,这些都是可以理解的.     但是,现在仍然没有一个"杀手级"的虚拟现实应用,有许多领域都有可能出现杀手级应用,包括:     游戏:一谈到虚拟现实,第一就会想到游戏.VR游戏具有深度沉浸.高产值.强粘性的潜力,这些都是开发者.主机制造商和外设制造商所期待的.目前大多数有技术的.独立的大厂都是以游戏作为VR应用的切入点.     社交…
大众化的游戏引擎--Unity3D     并不是所有VR应用都是游戏,然而现在做VR开发的几乎都会用专业游戏引擎来做,因为游戏引擎既满足了一个引擎的要求又可以方便地制作出高品质的VR应用.一个游戏引擎主要核心包括:高品质图像渲染.物理模拟引擎.实时光照.脚本驱动以及强大的可见即可得编辑器.     目前市面上有许多非常好而且很成熟的游戏引擎,Unity3D是我们制作VR应用的首选解决方案.由于Unity3D不仅功能强大且容易掌握,受到了独立开发人员和学生的强烈拥护.下面是Unity3D一些亮点…
相机.透视图.视口.投影     渲染好的场景都需要一个可以供用户查看的视图,我们通常在3D场景中用相机来提供这种需求.相机相对场景有位置和方向,就像我们生活中的相机一样,它也提供透视图查看方式,这种方式可以有近大远小的效果.相机最终会将三维的场景渲染成一幅幅二维的图片,我们就可以通过它的视口进行观察.     相机处理计算时主要涉及到两个矩阵,第一个是线性变换矩阵(之前章节我们称为转换矩阵),它负责定义场景物体的位置和朝向,第二个是投影矩阵,它负责将三维场景物体投影到二维视口中.当然具体的细节…
第三章 基于Oculus Rift开发桌面端VR应用     接下来的几个章节中我们会进行VR开发的实际操练,本章就从Oculus Rift开发开始,我们会介绍如何开发一个桌面端的VR应用.虽然只是介绍了Rift的开发技术,但是这些技术同样适合于HTC Vive以及其它头显设备.     在进行第一个VR应用开发之前,我们来看看几个重要的概念:     搭建场景:创建一个可视化.可交互.脚本驱动的虚拟现实环境.     立体渲染:用两个相机渲染场景分别表示用户的左右眼,然后通过Oculus Ri…
运动追踪设备    第二种可以使人脑相信它真实处于虚拟世界的关键技术就是运动追踪技术,它可以通过追踪头部的运动状态实时更新渲染的场景.这与我们在真实世界中观看周围非常类似.    高速的惯性测量单元(IMU)是Oculus Rift的发明之一,它被用于快速的头动追踪.IMU结合了陀螺仪.加速度计(或者磁力计,类似现在手机中使用的重力感应装置),可以精确测量转动的变化.    头部运动追踪非常重要,有可能比立体显示还重要,因为我们的感觉系统对运动非常敏感,如果在头部移动时图形显示出现延迟,那么就会…
什么是虚拟现实?     虚拟现实的目标:让人们相信真实地处于一个虚拟世界中.要达到这个目标就得让人们的大脑(负责视觉和运动感知部分)欺骗他们.不同技术合在一起才可以创造这种幻觉,包括:     全立体显示:也称为3D显示或者头显(HMD).这种显示方式结合的使用了多图像处理.反畸变技术和凸透镜片来让人眼看到深度信息,如此就形成了立体的图形.     移动追踪硬件:陀螺仪.加速度计以及其它一些组件被用在虚拟现实技术中,这些可以感应我们的身体移动和头部转动,有了这些以后应用程序就可以实时更新需要绘…
 序     初识虚拟现实技术,非常倾心,奋力习之,阅<Learning Virtual Reality>一书之后觉得甚好,但不愿独乐乐,于是翻译之,与大家共同学习.本人学艺不精,难免有翻译不到位的地方,还望大家多多指点,多多包涵.     ----始于2015.12(Michael Liew) 第一章 简介     虚拟现实是一个有着巨大潜力的媒介.它开启了一种不可思议的交互和交流方式,可以让人瞬间转移到另一个地方,可以让你完全沉浸在其中,一切感觉起来都会非常真实.可是时至今日,由于造价和一…
使用Oculus移动端SDK     在基于安卓系统的GearVR上开发应用需要用到Oculus的移动端SDK,下面的网址可以下载SDK:http://developer.oculus.com     如果你没有账户,免费注册一个.然后进行下面几步:     1.在顶部导航栏选择Downloads页面.     2.在SDK下拉选项中选择SDK:MOBILE.     3.点击最新移动端SDK链接.     4.同意使用许可协议.     5.下载SDK的压缩包至任何位置. 配置安卓SDK  …
本章我们来介绍一下如何在移动VR设备的佼佼者GearVR上进行开发,之前我们在桌面端的VR开发想法可以直接应用在移动端,但是仍然会有些不一样的技术需要注意.这次,我们仍然采用Unity3D引擎构建示例,在开始编码之前,我们来了解一下这个跨时代的新设备.     三星与Oculus合作创建了移动端VR的解决方案,它采用Oculus的图形畸变算法和新一代头动追踪技术,将一个高分辨率三星的智能手机放在头显设备中作为显示器.2014年底三星发布了基于Note4手机的革新版GearVR,又于2015年初发…
代码剖析 原文作者:Tony Parisi     那么,Unity究竟是如何支持Oculus VR运行的?首先,我们来看看Unity场景是如何构建的.在Unity集成开发包中有一个相机预设体,这个预设体提供了最基本的VR技术,包括:Oculus的立体渲染和头动追踪,下面我们来具体操作一下.     在Hierarchy面板中定位到OVRCameraRig物体,然后我们点击它左边的向下箭头展开它的子物体,Camera Rig中包含一个叫TrackingSpace的子物体,TrackingSpac…