国行微软Hololens开卖了,嫌贵?其实没有Hololens也可以做hololens开发

发表于2017-05-10
评论8 9.4k浏览

本系列文章着重讨论如何在不具备Hololens硬件的情况下做Hololens开发。

 

 

 

VR的热潮从VR转移到AR,现在炙手可热的莫过于MR。投资的热潮也一路高涨,击鼓传花一般谁也不愿意错过。MR硬件也是百家齐放,从被指欺诈的Magic Leap,到Intel的样本Alloy。目前为止最靠谱的还是要数微软的全息混合现实眼镜MicrosoftHoloLens

Hololens号称是第一台运行Windows10系统的全息眼镜计算机,不受任何电缆线的限制更不需要连接电脑。

MicrosoftHoloLens2016年针对开发者发售的版本早鸟价格是3000美元(当时约合人民币19653元),2016年针对欧洲市场的零售版售价高达4529英镑(约合4万人民币),因此也被认为是目前市面上最贵的VR相关智能穿戴眼镜。在深圳召开的微软WinHEC 2016硬件大会上,微软官方宣布HoloLens眼镜会在2017年上半年面向中国市场发售,不过具体的上市时间和售价暂未公布。

Hololens的售价多多少少让人有些望而却步,因为微软的Hololens其实是运行在win10通用平台上的,所以即便没有hololens硬件,开发者还是可以在模拟机上开发。本系列文章着重讨论如何在不具备Hololens硬件的情况下做Hololens开发。

 

本文会从以下方面展开:基本工具;SDKIDE;以及开发前的准备工作。

 

HoloLens虽然使用相对较新的技术,但是很多VR开发的相关经验和软件大部分都可以套用进来。大家在开发过程中会发现多数开发套件和软件都是你耳熟能详的。开始开发前的一些基本软件列表:

 

三维设计相关:Autodesk Maya, 3ds Max, Adobe PhotoShop, Substance Painter(包括但不仅限于这些软件,开发中开发者也可以根据以往习惯选择相近的软件,下同)

 

动画动作类:  Bipedfor 3ds Max

 

开发类: Unity, Vuforia, Microsoft Visual Studio, Windows 10 SDK, HoloLens Emulator ( 模拟器,如果有HOlolens眼镜的话可以不准备模拟器)

 

 

了解全息开发相关的背景知识

多数情况下,VR开发要用到的三维建模和渲染的方法可以完全使用传统三维开发方式,只有三维模型被运用整合到全息环境中的时候才会有一些变化。

 

这几个词在开发中至关重要:virtual reality sickness near clip plane binocular rivalry frame rate,有些和我们以为VR开发类似或者接近,有些要区别对待。

 

和所有的VR体验穿戴设备一样,hololens也会给使用者带来不同程度的不适感,也就是众所周知的VR眩晕。开发者在设计中可以通过参数。

 

关于Clipping Planes  

Near Clip Plane, Far Clip Plane  

从透视摄像机或正交摄像机到远、近清晰平面的距离。 远近清晰平面可以想像成两个平面,它们位于摄像机视线上的两个特殊位置。在视图中只能看到处于这两个平面之间的物体。场景中到摄像机的距离比近清晰平面(Near Clip Plane)更近的物体和比远清晰平面(Far Clip Plane)更远的物体在视图中都看不到。 

  

 

   

举个例子,在使用Unityhololens开发时,将近near clipping plane(近剪切平面设)置为不小于0.85m,如果小于此值,那么对象将在太靠近用户的眼睛处成像,也就是在盲区成像,成像会有各种问题。

除了无法正常显示之外,还会对使用者造成严重的不适。此外全息内容到观众的眼睛的理想距离应尽可能保持在接近2m,这个距离之外会有binocular rivalry(双目对抗现象)。

简单来说,全息内容最佳的投影距离在1.255米的范围内。

关于Hololens最适宜的每秒帧数应该保证在30帧每秒左右,太低会导致眩晕。太高的话机器运行起来会跑不动。

Hololens的互动方式

Hololens全息眼镜的人机互动方式一般有三种,凝视瞄准,语音控制,以及手势控制。和大部分VR可穿戴的基础互动方式接近,Hololens可以用 VR设备最原始的人机交互方式-凝视瞄准头控操作。凝视是HoloLens首要输入方式,形式功能类似于桌面系统的光标和鼠标指针,只不过是3D的指针,该指针用于选择操作全息对象。开发时可以参考或直接使用微软官网上的HoloToolkit-Unity项目中的GazeManager.cs和预制的各种指针资源,包括Cursor.prefab CursorWithFeedback.prefab 等资源,我们在以后的文章中会讨论到。

根据网上流传的信息,微软采用了基于深度识别的 SLAM(实时定位与地图构建)技术。这里解释一下什么是 SLAM,就是通过传感器获取环境的有限信息,比如视觉信息、深度信息、自身的加速度和角速度等来确定自己的相对或者绝对位置,并完成对于地图的构建。

SLAM 的准确度对于最后的显示效果非常重要,HoloLens追踪用户头顶在空间中的位置,每秒处理一千兆字节的实时信号。除了在凝视瞄准中的强大解决方案外,手势确定对于hololen来说也是易如反掌,可以把hololens设想为戴在头上的kinnect,只是识别精读更高,处理速度更快。

    语音控制并不能革命式的新技术,但与头戴式设备进行交互的语音微软也算是开了先河。对于用户来说,语音控制的感觉更自然和直观,也为全息下的交互UI提供了全新的互动方式。在开发中开发者可以注意语音识别的技术瓶颈,以及现在技术可以实现和识别的语音指令。尽量简化控制过程和识别过程。

Hololens的应用领域

教育行业应该是HoloLens可应用的获益最大的行业。另外行业培训也可以广泛的使用Hololens

通过佩戴HoloLens,用户可以实时接收系统或导师的指示,并执行接下来操作。此外,hololens可以作可视化工具,帮助学员探索复杂的设备或危险过程,而不会有实际的危险。

HoloLens还可以让全息内容和真实物体进行交互。日本航空公司完全实施了基于全能的培训,用于培训员工来处理大型和复杂的飞机部件,如喷气发动机或航空电子系统。

(图片由Microsoft提供)

 Hololens消息,沃尔沃汽车也在使用hololens在原型设计和机构研发上。

  图片来源:沃尔沃汽车

在医学和军事以及建筑等领域可以看到更多Hololens的运用。(待续)

 往期系列教程:黑科技产品HoloLens开发系列教程

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引