新書推薦:
《
大宋悬疑录:貔貅刑
》
售價:HK$
74.8
《
不被大风吹倒
》
售價:HK$
65.9
《
人生解忧:佛学入门四十讲
》
售價:HK$
107.8
《
东野圭吾:分身(东野圭吾无法再现的双女主之作 奇绝瑰丽、残忍又温情)
》
售價:HK$
64.9
《
浪潮将至
》
售價:HK$
86.9
《
在虚无时代:与马克斯·韦伯共同思考
》
售價:HK$
57.2
《
斯大林格勒:为了正义的事业(格罗斯曼“战争二部曲”的第一部,《生活与命运》前传)
》
售價:HK$
184.8
《
日内交易与波段交易的资金风险管理
》
售價:HK$
85.8
編輯推薦:
现在VR行业火爆,很多开发者都想开发自己的VR游戏或者应用,本书将深入浅出的讲述如何开发一款VR游戏,并且带着读者一步一步地做游戏案例,让读者也能够轻松地开发出自己的游戏。本书跳脱游戏引擎繁杂的操作, 由经验丰富的VR游戏设计者, 带领读者在各类型游戏案例中熟悉HTC Vive游戏设计的流程与技巧, 亲手打造创意VR游戏,成就VR开发者。● 提供计算机VR游戏开发实战● 从创意发想的规划草图开始, 用丰富图解说明游戏的制作流程● 详解VR各种开发套件● HTC Vive的基本配置● Unity 3d和Unreal4虚幻双引擎制动
內容簡介:
本书是目前HTC Vive在VR开发方面解析*为全面的书,也是一本实战教程书籍。如果你不会编程,不会游戏引擎,没关系,本书在附录中为你准备了教学资料和视频分享目录。读者完全可以从零开始,只要坚持学习,就可以开发出VR游戏应用。 本书以HTC Vive VR游戏开发实例教学为主线,循序渐进地介绍针对HTC Vive设备在VR游戏开发方面的整套流程。第1章从零开始引导读者了解什么是VR,以及HTC Vive设备简介,对程序员、美工和策划都有帮助。第2章介绍两个被广泛应用的游戏引擎,让读者对游戏开发工具有一个较全面的认识。第3章讲述HTC Vive开发*重要的插件SteamVR开发VR游戏的左膀右臂。第4章是一个VR游戏实例,逐步实现一个简单的VR打僵尸游戏。第5章重点介绍SteamVR Unity Toolkit在各个功能上的实现,分别详细解析其中的37个案例,让读者学会实现VR游戏中所需要的各种各样的功能。第6章重新回到游戏开发中,将各种功能实践到游戏开发中去,实现从理论到实践的过渡。*后,附录中给出参考文献和学习资料分享。 本书还提供了所有实例的源代码与素材文件,供读者上机练习使用,读者可从网上下载本书资源文件。 本书适用于广大游戏开发人员、游戏开发爱好者、软件培训机构以及计算机专业的学生等。
關於作者:
胡良云,VR公司开发主管,负责HTC Vive开发,也是游戏论坛的专栏作家和译员。工作之余会发布一些专栏文章或者翻译一些国外的教程技术文章,组织成立了HTC Vive开发者联盟,意在促进国内VR行业的技术发展。
目錄 :
目 录
第1章 绪论 1
1.1 什么是VR 2
1.2 HTC Vive简介 5
1.3 HTC Vive 诞生记 6
1.3.1 与HTC合作之前的Valve 7
1.3.2 与Valve合作之前的HTC 9
1.3.3 The Oculus Rift 10
1.3.4 HTC和Valve最终走到了一起 10
1.3.5 研发手柄控制器 11
1.3.6 Vive背后的开发者 12
1.3.7 Vive惊艳亮相 13
1.3.8 Vive发售后的复盘 14
第2章 游戏引擎 16
2.1 Unity 3D引擎简介 17
2.2 虚幻4引擎简介 18
2.3 选择适合的引擎 19
第3章 SteamVR 21
3.1 SteamVR简介 22
3.2 SteamVR Plugin解析 25
3.2.1 SteamVR_Render渲染脚本 29
3.2.2 [CameraRig]玩家预设 39
3.2.3 SteamVR_Tracked Object 51
3.2.4 Main Camera(eye) 53
3.3 手柄控制器 59
3.4 SteamVR脚本功能简介 66
第4章 VR打僵尸游戏 68
4.1 Unity 3D游戏资源准备 69
4.2 场景优化和配置枪械 72
4.3 基本武器系统 77
4.4 僵尸 83
4.5 小结 96
第5章 SteamVR Unity Toolkit 97
5.1 Toolkit简介 98
5.1.1 欢迎来到VRTK 99
5.1.2 VRTK里面有什么 99
5.1.3 VRTK快速开始 100
5.2 Examples案例001~010 100
5.2.1 案例解析001_CameraRig_VR_PlayArea 100
5.2.2 案例解析002_Controller_Events 101
5.2.3 案例解析003_Controller_SimplePointer 105
5.2.4 案例解析004_CameraRig_BasicTeleport 124
5.2.5 案例解析005_Controller_BasicObjectGrabbing 132
5.2.6 案例解析006_Controller_UsingADoor 142
5.2.7 案例解析007_CameraRig_HeightAdjustTeleport 152
5.2.8 案例解析008_Controller_UsingAGrabbedObject 160
5.2.9 案例解析009_Controller_BezierPointer 162
5.2.10 案例解析010_CameraRig_TerrainTeleporting 163
5.3 Examples案例011~020 164
5.3.1 案例解析011_Camera_HeadSetCollisionFading 164
5.3.2 案例解析012_Controller_PointerWithAreaCollision 168
5.3.3 案例解析013_UsingAndGrabbingMultipleObjects 168
5.3.4 案例解析014_Controller_SnappingObjectsOnGrab 169
5.3.5 案例解析015_Controller_TouchpadAxisControl 170
5.3.6 案例解析016_Controller_HapticRumble 175
5.3.7 案例解析017_CameraRig_TouchpadWalking 177
5.3.8 案例解析018_CameraRig_FramesPerSecondCounter 183
5.3.9 案例解析019_Controller_InteractingWithPointer 185
5.3.10 案例解析020_CameraRig_MeshTeleporting 186
5.4 Examples案例021~030 186
5.4.1 案例解析021_Controller_GrabbingObjectsWithJoints 186
5.4.2 案例解析022_Controller_CustomBezierPointer 187
5.4.3 案例解析023_Controller_ChildOfControllerOnGrab 188
5.4.4 案例解析024_CameraRig_ExcludeTeleportLocation 188
5.4.5 案例解析025_Controls_Overview 189
5.4.6 案例解析026_Controller_ForceHoldObject 197
5.4.7 案例解析027_CameraRig_TeleportByModelVillage 199
5.4.8 案例解析028_CameraRig_RoomExtender 200
5.4.9 案例解析029_Controller_Tooltip 204
5.4.10 案例解析030_Controls_RadialTouchpadMenu 211
5.5 Examples案例031~037 214
5.5.1 案例解析031_HeadsetGazePointer 214
5.5.2 案例解析032_Controller_CustomControllerModel 215
5.5.3 案例解析033_CameraRig_TeleportInNavMesh 217
5.5.4 案例解析034_Controls_InteractingWithUnityUI 218
5.5.5 案例解析035_Controller_OpacityAndHighlighting 224
5.5.6 案例解析036_Controller_CustomCompoundPointer 228
5.5.7 案例解析037_CameraRig_ClimbingFalling 228
5.6 总结 229
第6章 VR游戏开发实战 230
6.1 Lab渲染器 231
6.1.1 简介 231
6.1.2 快速开始指引 232
6.1.3 元素 233
6.1.4 摄像机组件 234
6.1.5 实时光照组件 236
6.1.6 VR标准着色器 237
6.1.7 工具和帮助元素 239
6.1.8 命令行参数 240
6.1.9 快捷键 241
6.2 完善VR僵尸游戏 241
6.2.1 场景优化 241
6.2.2 编辑场景和可交互对象 243
6.2.3 优化怪物 250
6.2.4 玩家UI界面 252
6.3 VR手势识别 258
6.3.1 插件简介 258
6.3.2 新手教学 259
6.3.3 使用案例 263
6.4 VR网络游戏 265
6.4.1 SteamVR Network简介 265
6.4.2 案例教学 266
6.4.3 VR网络的准则 267
6.4.4 如何使用包含的预设 268
6.4.5 如何使用包含的脚本 268
6.4.6 如何扩展案例 269
6.5 语音识别与VR 270
6.5.1 简介 270
6.5.2 语音识别和语义分析是如何工作的 270
6.5.3 市面上的语音转换文本工具 272
6.5.4 困惑和未来的工作 274
6.6 VR中国象棋 275
6.6.1 游戏简介 275
6.6.2 游戏架构 275
6.6.3 游戏生态 278
6.6.4 游戏未来 278
6.6.5 游戏现状 279
6.7 HTC Vive开发者联盟 279
附录 284
附录1 参考文献 285
附录2 SIKI老师的教程与资源分享 285
附录3 Unity游戏开发视频教程目录 286
內容試閱 :
前 言
我走得很慢,但是我从来不会后退。I am a slow walker, but I never walk backwards.美国第16任总统 亚伯拉罕?林肯
这本书不应该仅仅是一本讲开发的技术书籍,也应该是一本励志的书,就像林肯的人生一样,从开始的结结巴巴到美国总统。在这样一个艰难的过程中,他走得很慢,大器晚成,成为美国历史上最伟大的总统之一。可能有人会问为什么要这么开篇呢?技术书籍为什么会是励志书?因为VR技术注定是一项大器晚成的技术,虽然我们目前已经取得了非常漂亮的成就,但是离真正的虚拟现实还有很长的路要走。这条路必然是充满坎坷的,开发是一件苦差事,程序员要克服重重困难才能实现想要的功能。VR是什么?笔者期望虚拟现实可以像科幻片《钢铁侠》里面那样,不需要穿戴任何设备,或者仅仅穿戴十分轻薄的设备,拥有非常智能的可视化界面,通过手在空中划拉就可以很自然地操作,并且拥有智能的AI语音系统,使整个系统操作更加自然流畅。要实现这样的虚拟现实,至少要等到2020年,这是一件非常励志的事情!那么,总有人要写这本书,因为很多人需要它。胡某不才,组织了HTC Vive开发者联盟,随着时间的推移,VR越来越火热,VR开发的从业者和学习者也越来越多。由于之前在论坛上发过的几篇HTC Vive开发帖子广受关注,因此很多人慕名来向我请教一些技术问题,我也尽力帮助他们解决。但胡某分身乏术,有时也爱莫能助,毕竟我也需要工作。所幸清华大学出版社的卞诚君编辑找到了胡某,诚邀我来写一部VR游戏开发的书籍,以帮助广大的开发者或学生掌握HTC Vive的开发技能,从而促进整个VR行业发展。我愿意做这件事情,所以毫不犹豫地应承了下来。尽管胡某开发技术并非超群,奈何对HTC Vive情有独钟,以至于在其中投入了大量的精力。如果说能够对其发展带来一些帮助,胡某也定当略尽绵力,在所不辞。我将自己所得倾囊相授于此书,若有疏漏之处希望大家指正,我不希望因为自己的过失误人子弟。这里简单介绍下我的编程生涯。我以前是一个PHP工程师,在IPG旗下的跨国公司Loweprofero公司上班,曾经热衷于网站开发,但因为热爱《黑客帝国》《盗梦空间》《刀剑神域》等科幻作品,所以常常关注一些前沿科技的发展,特别在意的是VRARMR方面的技术革新,一有时间就会对这方面的技术进行研究。曾利用业余时间自学了C、C和C#,当然并未到精通的地步,那时尽力搜集一切编程相关的学习资料,囫囵吞枣一般吃进去,并不成体系。后来又接触到游戏引擎Unity 3D,更加有动力去学习,因为感觉梦想似乎并不是遥不可及。直到后来,HTC Vive面市,我在一次论坛举办的开发者大会中首次体验到了它。在这之前,我已经体验过市场上各种各样的VR设备,但只有HTC Vive体验最佳,和我的梦想最为接近。那一天,我夜不能寐,心中所思所想尽是这一套设备。后来我历经艰难困苦,终于跨行转为VR开发,由网友龙炳全的引见到了现在这家公司精诚机构从业。上司黄菲大哥也是一个对VR充满热情的人,他为我的情怀所感动,并且大力支持我做HTC Vive上的研究。我所在的精诚机构专为房地产销售提供一站式的解决方案,从样板间到沙盘模型,从一体机、IPAD硬件到互动系统、沙盘灯光系统、VR看房系统等软件,满足房地产销售的一切需求。董事长胡治国先生十分看好VR的发展,积极投入到VR游戏开发和体验店实体的布局,致力于建立VR生态系统,打造全新的虚拟现实商业模式。仿佛不知岁月,我沉浸于VR技术的研究,遇到过各种各样的开发难题,也走了不少弯路,但这些困难并不能阻碍我,也必将不能阻碍大家。过去电脑只是个梦想,现在几乎人手一部智能手机,从某种意义上讲,智能手机是人类对于电脑想象的一个超越。它更小更轻、易于携带、更加智能,比艾伦?图灵(计算机之父)想象得要好太多,而且它和图灵所想一样,在某种程度上成了人类的伴侣。过去VR或者虚拟现实也只是个梦想,现在我们还没有完美地实现它,但它已经近在咫尺,你能真切地感受到,而且可以更完美。就好比图灵机和手机的跨越,未来的VR将会变得轻薄,成为隐形眼镜,就贴在视网膜上。它将会和AR混合成为MR,虚拟和现实合二为一,不分彼此。它甚至可以使用人体的生物电,作为能量供给;可以成为人类的第二个大脑;成为人类进化的催化物。总之,VR带给我们无限可能,未来成了无限可能。在此特别感谢公司精诚机构对我的支持,黄菲大哥在此之前就曾经建议我写一部书;同时还要感谢公司的同事们,尤其是引见我到精诚的龙炳全,没有他的话我也许无法从事所热爱的VR事业,也不会有这本书,所以要特别感谢他。特别感谢生我养我的父母,以及我的兄弟姐妹们对我的支持和鼓励,特别是姐姐,伟大的姐姐。还要感谢我的好朋友们,特别是潘寅冬,他总是像兄弟一样给予我帮助。最后,感谢我的恩师们,特别要感谢陈群老师和荣春鸿老师,她们对我的教育之恩和超越老师的关怀我从未言表,一直默默铭记在心。原本这部书计划要写12个章节,但是写完前面6章以后发现已经超出了篇幅,所以不得不把后面讲虚幻4引擎的内容独立出来。当然,这里会提供虚幻4引擎的学习资料,UE4学习资料与视频可在百度云盘找到,地址为http:pan.baidu.coms1c2a8DnM。虽然本书沁入编者的所有努力,但是由于水平有限,难免有疏漏之处,欢迎大家批评指正,如果遇到问题或者有更好的建议,敬请与我联系,我将全力提供帮助。我的QQ是604746493,如果不在线也可以给我发邮件,我会定时查阅QQ邮箱。参与本书编写的除了封面署名人员以外,还有伍丰、叶静宇、凌东鑫、向春宇、肖攀、钟少华等人,在此要特别感谢他们对本书的支持。路漫漫其修远兮,吾将上下而求索。
胡良云2016年12月28日
第1章 绪 论万事开头难。
本章主要介绍VR是什么以及HTC Vive简介。只有从理论上认识VR,才能更快地应用到实践中,所以本章从理论入手,深入浅出地讲解什么是VR、其科学原理又是什么。同时也简要地介绍VR的兄弟AR和MR,通过对比让大家明白VR的重要性。HTC Vive是本书的核心,知道了VR是什么,就不难理解Vive了,它在本质上是我们实现VR的硬件,而本书的目的就是开发与之匹配的软件和内容。
1.1 什么是VR现实即幻象,只是非常稳定罢了。阿尔伯特?爱因斯坦
VR是英文Virtual Reality的首字母缩写,直译为中文就是虚拟现实,含义是虚拟和现实前所未有的接近,几乎难以分辨。其实什么是虚拟、什么是现实,我们不一定有相同的答案。看过《黑客帝国》的人都知道,主角开始沉浸在一个完全仿真的世界之中,矩阵模拟了他的所有感官。在那样的世界里面,你活得如此真切,既能感受到阳光的温暖,也能感受到微风拂面而过,还能享受到提拉米苏在舌尖味蕾上跳芭蕾舞如果真有这样一个世界存在,你还能分得清虚拟和现实吗?至少主角Neo(由基努?李维斯扮演)分不清,我们也不一定分得清。如图1-1所示,未来的VR眼镜可能就是这样的。图1-1 VR未来可以说深受这部电影的影响,很多人都幻想着要创造一个接近于现实的虚拟世界,做那个世界的造物主,或者一个英雄。很多时候现实世界是无趣的,大家要依靠书籍、电影和游戏等虚拟产物来消磨时光,所以太多男人想要做英雄!VR这种能够让虚拟无限接近于现实的技术强烈地吸引着大家,它可以使玩家置身于一个想象出来的魔幻世界或者模拟真实的世界,并且让玩家如同身临其境,和虚拟的对象产生交互,让人深度地沉浸其中。VR人为地创造感官体验,目前主要是视觉和听觉,配合其他硬件设施还可以模拟触觉、嗅觉等体验。我们常常把这种感官上可以混淆现实的刺激称为沉浸式体验,因为它真的可以做到让玩家置身于异度空间中,并且无法自拔。通过感官刺激来混淆真假属于欺骗大脑的行为。下面简单分析人类看待事物的原理或者说双眼的视觉机制。人之所以能够看到立体的景物,是因为我们的双眼可以各自独立看东西,左、右两眼有一定的间距,造成两眼的视角有些细微的差别,而这样的差别会让两眼看到的景物有一点点的位移。左眼与右眼图像的差异称为视差,人类的大脑很巧妙地将两眼的图像进行融合,在大脑中产生出有空间感的立体视觉效果,如图1-2所示。那么,VR的视觉原理又是怎样的呢?图1-2 人眼成像原理在虚拟现实的设备中大多数都采用了视差模式,通俗地讲就是左右眼,电影院的3D电影是将带有视差的双眼画面同时投射到幕布上,然后用3D眼镜来进行过滤分离,这样左右眼可以分别看到对应视差的画面,以达到视觉上的立体效果,如图1-3所示。图1-3 双目摄像头模拟人眼成像虚拟现实采用类似的原理,把左右眼的视差画面分别渲染到两个对应的屏幕上,人类的双眼按照习惯采集画面并传递给大脑进行混合,从而实现立体视觉。所以我们可以很容易地发现VR设备里面都是两块小屏幕,上面渲染的其实是交错的同一个画面。交错显示模式的工作原理是将一个画面分为二个图场,即单数描线所构成的单数扫描线图场或单图场与偶数扫描线所构成的偶数扫描线图场或偶图场。在使用交错显示模式做立体显像时,我们便可以将左眼图像与右眼图像分置于单图场和偶图场(或相反顺序)中,我们称此为立体交错格式。若使用快门立体眼镜与交错模式搭配,则只需将图场垂直同步信号当作快门切换同步信号,即显示单图场(即左眼画面)时,立体眼镜会遮住使用者的一只眼睛,而当换显示偶图场时,则切换遮住另一只眼睛,如此周而复始,便可达到立体显像的目的。画面交换的工作原理是将左、右眼图像交互显示在屏幕上。使用立体眼镜与这类立体显示模式搭配,只需要将垂直同步信号作为快门切换同步信号即可达成立体显像的目的;而使用其他立体显像设备则需将左右眼图像(以垂直同步信号分隔的画面)分送至左右眼显示设备上。计算机屏幕只有一个,而我们却有两只眼睛,又必须让左、右眼所看的图像各自独立分开才能有立体视觉,所以可以通过3D立体眼镜让这个视差持续在屏幕上表现出来。通过控制IC送出立体信号(左眼右眼左眼右眼依序连续互相交替重复)到屏幕,并同时送出同步信号到3D立体眼镜,使其同步切换左、右眼图像,换句话说,左眼看到左眼该看到的景象,右眼看到右眼该看到的景象。3D立体眼镜是一个穿透液晶镜片,通过电路对液晶眼镜开、关的控制,开可以控制眼镜镜片全黑,以便遮住一眼图像;关可以控制眼镜镜片为透明的,以便另一只眼睛看到该看到的图像。3D立体眼镜可以模仿真实的状况,使左、右眼画面连续互相交替地显示在屏幕上,并同步配合3D立体眼镜,加上人眼视觉暂留的生理特性,就可以看到真正的立体3D图像,如图1-4所示。图1-4 双目立体视觉原理图我们在这里顺带简单讲下和VR相关的AR和MR。所谓的AR和VR不同,VR是完全的虚拟空间,在那里你基本上与世隔绝;而AR是建立在现实的基础上,将计算机生成的虚拟图像嵌套到现实图像之中,形成虚拟和现实混合的视觉体验,所以AR(Augmented Reality)被称为增强现实。MR(Mixed Reality)被称为混合现实,把计算机生成的物体混合到真实世界当中,也是VR和AR的结合点。混合现实能把真实世界和虚拟世界融合在一起,生成新的环境和视觉图像,让真实物体和数字物体实时共存并进行互动。混合现实存在于物质世界或虚拟世界,是现实和虚拟混合的产物。如图1-5和图1-6所示,AR、MR和VR将会成为改变未来世界的三大技术。我们在这里重点掌握针对HTC Vive设备的VR开发技术。如果要用一句话来总结VR到底是什么,那么VR就是沉浸式的可自由交互虚拟空间体验,既可以是极度真实的,也可以是充满想象的。图1-5 AR增强现实图1-6 MR混合现实1.2 HTC Vive简介本节介绍我们所针对的开发VR设备HTC Vive。相信很多购买本书的读者已经体验过这套设备了,有的甚至已经购买了一套或者几套。这里针对那些对HTC Vive不太了解的读者进行一波简单的介绍。已经比较了解的读者可以自行跳过。首先,我们来到HTC Vive的官网https:www.htcvive.comcn,可以看到Vive是由HTC和Valve联合开发。Vive 结合了激情、天赋和创新,通过一流的技术和内容实现了虚拟现实的承诺。HTC主要负责Vive的硬件方面,Valve主要负责配套的软件。在这之前不少人已经知道了这两家是非常有实力的公司,他们都在各自的领域取得了非凡的成就。Valve所建立的Steam平台受到广大玩家的喜爱,这一次Valve将Steam平台和VR结合到了一起,并开发出了SteamVR来配套Vive设备,后面我们将详细介绍SteamVR。接着,你可以看到基于Vive和SteamVR开发出的优质VR体验。如图1-7所示,你可以看到非常棒的游戏体验,而这些就是我们将要开发的游戏内容。图1-7 Vive游戏体验借助精准的移动追踪和自然的操控手柄手势,体验空间定位游戏。借助前置摄像头,在需要时打量一下真实世界。无须摘下头戴装置即可打开应用程序和游戏。这是完全的沉浸式虚拟现实体验。现在Vive官方还提供了全方位的服务,从购买到安装一条龙,你可以在https:www.htcvive.comcnsetup下载对应的设置向导和软件,以及设置视频和详尽的用户指南。1.3 HTC Vive 诞生记HTC和Valve是如何走到一起并共同创建Vive的?这期间历时四年多,接下来我们看看其中的曲折,似乎每一个美好事物的诞生都是历经这样的坎坷,即使是当事人回想起来也不乏有趣的地方。如图1-8所示,许多Vive原型机陈列在HTC的旧金山设计工作室的展示桌上。图1-8 Vive原型机这篇文章参考了一个国外开发者的博客(https:www.engadget.com20160318htc-vive-an- oral-history),我觉得有必要在这本书中讲一下这段有趣的历史故事,所以就翻译了。
在Vive诞生之前很久的一段时间,软件开发商Valve和手机生产商HTC都想往虚拟现实VR方向发展。2012年,VR开始慢慢地走回大众的视野。这一切开始于同年的5月,当时id Software的John Carmack演示了运行Doom 3的修改版Oculus Rift。接下来的一个月,他将Rift带到了受众更广的 E3 游戏大会。到了8月,Palmer Luckey在Kickstarter上线了Oculus的众筹活动,这次众筹打破了纪录。几乎一夜之间,Rift从让人好奇的原型机变成了一个真正令人激动的实物。在这一切发生的时候,Valve 已经开始着手于自己的解决方案了。1.3.1 与HTC合作之前的ValveValve:打算用房子大小的设备杀入VR。Valve 早期在原型机上的努力是有迹可循的。在 2012 年的时候,它开发了一套简单的 HMD(头显) 系统,只要有一个摄像头和几个 AprilTags 就能确保定位追踪。如图1-9所示,AprilTags 就好像是大一点、简单点的二维码,被广泛地运用在AR技术、相机标准和机器人中。Valve 对这个实验不是很保密:当 Oculus 在 Kickstarters 上的众筹活动抢占各种头条的时候,这家公司在《纽约时报》上展示了它们的VR实验。在它的追踪能够正常运行之后,新的问题又出现了:HMD 上的图像依然模糊不清。在 Valve 实验的时候,这家公司意识到,对于游戏而言,短暂余辉屏是必需的。在这样的情况下,这意味着屏幕模组点亮背光只能花费 1ms,而关闭背光只能花费 9ms,以避免出现残影。为了证明它的理论,它最开始创造了一个能让你观察另一个三维空间的望远镜;然后它设计了一个定制的板材,将高帧率、低余晖的图像显示在现成的 AMOLED 屏幕上。图1-9 AprilTags余晖指显示残留的光辉,余晖时间表示图像残留的时间。余晖效应是指眼在观察景物时光信号传入大脑神经,需经过一段短暂的时间,光的作用结束后,视觉形象并不立即消失,这种残留的视觉称为后像。视觉的这一现象则被称为视觉暂留。如图1-10所示,这些背光板被嵌入了又大又丑的头盔(引用 Valve Chet Faliszek 的原话),继续测试。我们想要的效果就在那儿,但我们并不确定它是否存在。Faliszek 表示。Valve 的这个团队爱上了这个房间大小的、可在里面自由移动的VR设备。我们担心的是其商业化和质量的问题。毕竟没有人愿意将自己的墙壁弄成那样,我们也没有与之相配套的输入解决方案。看来,还缺点什么。图1-10 早期的VR原型机(Stuart IsettThe New York Times)1.3.2 与Valve合作之前的HTC深陷泥沼中的 HTC :以VR为新方向。在 2013 年以前,HTC 是一家智能手机公司,但它的野心不止于此。当时我们深知VR 与智能手机行业的早期十分相似。HTC VR 方面的副总裁Daniel O''Brien解释道,这是一种新的媒介,我们很清楚它就要来了。我们必须站在其前沿。那意味着HTC要做原型机以及其他相关的事物。因HTC One系列而出名的设计师 Claude Zellweger当时正朝着这个方向推进。我一直以来都受命于前CEO周永明寻找智能手机以外的,能够将公司引领至新方向的新技术,之后建立了前沿概念团队。前沿概念团是一个不大的团队,但它孵化出了像潜望镜的Re Camera(见图1-11)和可穿戴设备Re Grip,但目前为止它孵化出来最有潜力的是Vive。期初,它被命名为Re Vive一个独立于深陷泥沼的智能手机公司的新产品但Re这个前缀渐渐从公司的市场宣传中淡去。周永明在辞去CEO职务后,接管了这个团队,并将团队重命名为HTC未来发展实验室。图1-11 HTC Re Camera这个团队在试过了AR和VR技术后,才决定选择VR作为他们的主要发展方向。但是当三星抓住这个机遇将自己的旗舰手机和光学眼镜结合起来之后,HTC很快就放弃了将VR与手机相结合的这个想法。我们认为它应当是一个完全不同的产品类型,需要有独立的解决方案,现在已经是公司设计部门的一把手Zellweger表示道,从那以后,我们就再也没有想过要将手机的屏幕作为VR设备的显示屏了。最后HTC采用了以前在智能手机上相同的策略:尽早准备好,朝着高端方向去。按照Zellweger的说法,HTC很巧合地和Valve走到了一起。1.3.3 The Oculus RiftOculus(见图1-12)与Valve和平分手。到了2013年的时候,Valve的努力使得VR中的实时追踪更接近成功了。尽管Valve已经搭建好了基础,但它不打算自己做出一个设备来。为什么不呢?大众已经用他们的钱包给出了答案Oculus筹集的资金达到了240万美元。在2014年1月的时候,Valve宣布它将和Oculus在追踪技术上共同合作推进PC驱动VR。它表示自己没有发布 VR 硬件的计划,但它也注释道,这个计划在将来可能会有所改变。图1-12 Oculus的头盔显示器很明显,在某一个点上 Oculus 和 Valve 开始分道扬镳了。它们的分歧点可能在VR应该是什么样:Rift 和 Vive 带来的体验肯定是不同的。Facebook 收购 Oculus 暗示了在这几个月里 Oculus 切断了与 Valve 的沟通,这迫使 Valve 不得不去探索其他的路径。没有人知道其中的详细原委。我们只知道,在那年 1 月的时候,Luckey 告诉媒体 Valve 的技术是世界上最好的 VR 展示模型,而到了春季的晚些时候,Valve 和 HTC 的合作已经确定下来了。关于那次会晤的细节没有公之于众。Zellweger 将之描述为Cher and Gabe之间面对面的对话,Cher and Gabe 分别代指 HTC 的联合创始人王雪红和 Valve 的联合创始人 Gabe Newell。最后的结果,大家现在也知道了。1.3.4 HTC和Valve最终走到了一起Valve 联姻 HTC(见图1-13),Vive 初现雏形。协议签署完之后,开发者版设备的研发就开始了。接下来的一周我们去了一趟 Zellweger 在旧金山的设计办公室,配置了一个贴满 AprilTag 的房间,Faliszek 说道,当时他们(HTC)已经有一些关于头戴设备应该是什么样的设计稿。行动力实在是高。Zellweger 回忆当时快节奏的情形说道:我们反复地提出想法。那是与 Valve 沟通 VR 产品视觉形象的关键时刻,当时的设计还融入了追踪技术的早期形态每个人都认为这样做出的产品一定很棒。图1-13 在绘制原型稿时展示 HTC 设计想法的一块白板尽管它在公众面前展示的 Demo 依然基于 2012 年开发而来的系统,但是 Valve 已经开始摈弃基于 AprilTag 不实用的系统。然后两个备选解决方案被提出来了:点追踪和激光追踪。点追踪的方案和你想象中的一模一样。控制器和头盔被点覆盖,一个静止的摄像头使用机器的视野来实时确定那些点的位置。第二个方案是激光追踪,将控制器和头盔上的点换成传感器,当然还需要单独的激光发射基站。激光追踪能够提供最高的精准度,但是为了确保它能在房间大小的空间内正常工作,它对头盔会有很苛刻的要求激光基站的发射器会快速旋转,并发出覆盖整个房间的激光,其中内建的 LED 还会以 60 次秒闪烁。头盔上的传感器会检测各种光线,然后通过传感器接收激光和 LED 的时差来确定自己的位置。为了让测算更精确,头盔上需要布满大量不同朝向的传感器。得知激光追踪是必需的技术之后,HTC 开始脚踏实地研发开发者版本的设备。之后Valve 拿出了一套激光追踪的原型。原型机能够正常使用,但外表粗糙不堪,还有暴露在外表的电线。Zellweger 的团队必须将之转化成产品。从一开始,他们就利用 3D 打印技术来确定传感器的朝向,快速开始设计。在这个过程中,原型机在 Valve 总部、HTC 旧金山的办公室以及台湾的工程团队之间往返了数次。我们可以调整头盔,但我们决不能在追踪技术上做任何妥协。O''Brien 解释道,追踪必须是完美的。功能高于形态的原则在早期的原型头盔中就能看出端倪来。比如,使用 3D 打印模型的存在是为了测试传感器的朝向。尽管原型机毫无设计感可言,但它已经初具头盔的形状了。1.3.5 研发手柄控制器手势控制与手柄结合(见图1-14)。一开始 Valve 的 VR 控制器完成度是比较低的。第一次在公众亮相的控制器只是在 Steam 控制器顶部加上了像大型龙与地下城''骰子一样的物体。在激光追踪系统方面的尝试也遵循简单的原则直接将像触角一样的传感器加装到了游戏控制器上。但是这个团队很快意识到他们需要一些不同的事物。图1-14 早期VR控制器的两种尝试这是历史上让人类重新开始的时刻,Faliszek 解释道,我们说到,我们不需要X、Y、A、B等按键,我们要把创造的事物变得特别。Valve 和 HTC 要做出来的控制器是两种既存的产品混合物它有着 2010 版 Sony PlayStation Move 一样的基本形态,却增加了来自于 Valve Steam 控制器的精准输入和激光追踪传感器。从第一代产品起,这个控制器就提供了优雅的解决方案。但是它们一开始并不是那么美观。第一代原型机是一圈电缆加装在一对弹簧夹板上的,当时是为了测试激光追踪系统使用的。很快它进化成了第一次在公众亮相的样子由于它独特的外形,被称为sombrero(墨西哥卷),。墨西哥卷没有太多的按键,显然它在一开始受到了很多开发者的抱怨。他们一开始会说没有太多按键啊,Faliszek 回忆道,但是到了第二周之后,他们会说我不需要那么多按键啊,搞不好我连一个都用不到。大多数的常规操作在之前是需要一个按键来完成的,不过现在能用手势解决掉。Faliszek 举了一个例子,以前需要按I键打开道具栏,现在只需要把手伸到背后,就好像真的从背包里取道具似的,这一手势就可以完成操作。1.3.6 Vive背后的开发者在 HTC和Valve开始合作后不到 6 个月内,他们就准备好与其他人分享这个版本的设备了。在 2014年10月24日的时候,Valve 邀请了一部分开发者拜访在华盛顿 Bellevue 的办公室,我们让他们签署了保密协议,以确保他们能保守秘密,Faliszek 笑道,这让人人都感到疑惑,但他们还是来了。在出席了第一次会议之后,开发者们给出了很多建议。他们坚持认为 HTC 和 Valve 不应该划分产品线不要让消费者选择 180追踪或者 360追踪、是否与手柄绑定销售。一个产品只需要有一种配置。我们也一直在考虑这个问题,Faliszek 说,这次开发者们的建议更加坚定了我们的想法。2014 年 12 月,第一批被称为-v1的开发者套件出厂,它们是由 Valve 的员工亲手制作、亲手递送和亲手安装的。过了一周后,HTC 的生产线开始运转,越来越多的工厂机器也被送到开发者手上。作为一家智能手机制造商,HTC 在产品信息遭曝光上有着丰富的经验。所幸的是,Vive 没有遇到这样的问题。参与其中的有20多家公司,但没有一家泄密,O''Brien 说道。为什么呢?Faliszek 将之归结于开发者们的同志情谊。由于拥有开发包的人有限,因此Valve 为他们单独安排了一个隐秘的开发者论坛,这样他们就能交流开发经验、互相帮助了。社区的好处在于开发者可以很自然地指出其他人在开发过程中出现的错误,但当一个开发者展示自己的开发成果时,其他人更多的是赞扬而不是挖苦讽刺。如图1-15所示,Vive手柄控制器凝聚着开发者的智慧,这些不断地促使着开发工作的推进。图1-15 Vive手柄控制器1.3.7 Vive惊艳亮相在开发者们参与进来后,Vive 项目保持快速的开发进度。HTC 和 Valve 选定 MWC 2015 作为产品的首次亮相。第二场则选在了两周后专注于游戏的 GDC 2015 上。无论从哪一个方面来说,这次亮相都是成功的。如图1-16所示,试过无数个 VR 模型的记者们都被房间大小的 Demo 和头部以及控制器的精确追踪而折服。随后推广计划就被定了下来。在一年之后,正式开放预订 MWC 和 GDC 上展示的消费者版本。值得一提的是,在这期间 HTC Vive 还经历了一次迭代,从 Pre 开发者版升级到了消费者版。第一眼看上去两者并无太大差别,但凑近一看,两者最明显的不同在于对细节的把握。最终版要比 Pre 版轻一些、小一些,头带也经过了一次重新设计。这些修改将设备的重心更多地靠近了脸部这一点很重要,因为在移动的时候,设备会更加稳固。传感器也被藏起来了,镜片和头带的调整机制也得到了改进。最后,线缆更轻了,但依然显眼。虽然在移动的时候没有那么碍事,但依然能感觉到它们的存在。图1-16 在MWC 2015 上试用 Vive 的记者除了提升舒适度之外,在过去的一年里,头盔又增添了新功能:前置摄像头和麦克风。前置摄像头是出于安全考量加入的,以保证用户在使用设备的时候能与外界沟通。只需按下按钮,Vive就能够在你潜入虚拟世界的时候展现外部的情况。在最开始的时候,前置摄像头是计划之中的,但是无奈当时前置摄像头不工作。于是我们只能在晚些时候再添加这一功能。O''Brien 表示。有了麦克风,用户无须摘下设备即可接听电话。Pre 开发者版其实也有麦克风,如图1-17所示,但是因为 HTC 在软件上没有弄好,所以在 2 月份公布售价的时候,没有补充说明麦克风的存在。图1-17 配上手柄和激光基站后的消费者版 Vive1.3.8 Vive发售后的复盘Faliszek、O''Brien 和 Zellweger 都坦言,开发 Vive 的过程几乎没有遇到任何麻烦。鉴于 Valve 和 HTC 从两年前才开始合作,在这么紧张的时间内拿出产品也算是顺风顺水了。头盔、控制器以及基站已经走上产品线了。现在他们只需要售卖设备了。假设 Vive 能够大卖(HTC 没有公布具体的销售数字,但是他们连整个四月的存货都售空了),多久之后消费者需要将他们的设备升级到第二代 Vive呢?一台主机能够坚持 8 年,一台顶级的游戏 PC 能够保持 5 年内不落伍,一台智能手机只能保证 2 年。HTC 和 Vive 都不愿意透露出他们未来的计划,但是他们都坚信 Vive 能坚持很久。这两家公司本可以造出一个更好的 VR 头戴设备我们丝毫不怀疑这点,比如其单眼 12001080 的分辨率还能提升。但是瓶颈并不在于头盔,而是驱动它的 PC。设备对于 GPU 的要求已经够高了AMD Radeon R9 290 或者 NVIDIA GeForce GTX 970。这些显卡即使在发布数年之后,价格依然和 PlayStation 或者 Xbox 持平。我们的想法是选一款超级高端的硬件作为标准,一年后就能够有足够的人负担起使用 Vive的成本了。如图1-18所示,第二代 Vive 设备一定会出现。到了特定的时刻,你肯定想要增加分辨率,Faliszek承认道,我们一定会从中学到一些东西,也一定会找出有意思的事情,但你不能草率地发布一款新品。当 PC 显卡足以驱动 90 帧秒的高分辨率画面时,我们很可能会看到一款新的 Vive,但那也不意味着早期的用户会被抛弃。图1-18 Vive头盔的设计我们已经明确地表示过了,O''Brien 坚定地说道,消费者版一旦发售,我们就会更新 Pre、v1、v1s 版的开发者套件。我们已经设计了能够向后兼容的系统,也一定会持续地维持它们。Faliszek 补充道,我们发布了这些设备后,它们就会像活物一般。这些硬件也会保持更新,我们将会照顾好它们,而不是发布新品之后就忘了它们。