VR中如何解决你的手穿过虚拟刚体,而没有产生刚体碰撞的问题?
在VR游戏等体验场景中,最让玩家吐槽是虽然可以看到物体,也能拿起使用物体,但也出现过在体验中出现手穿过虚拟刚体但并不能感受到刚体碰撞,因此导致在很大程度上削弱了体验上的沉浸感,为此下面就给大家介绍了几种暂时解决不能感受到刚体碰撞的办法,一起来看看吧。
触觉模拟的研究很早就开始了,CMU的Maglev,99年的项目
CyberGlove双臂力反馈
这些项目的特点都是结构复杂,造价不菲。这也说明模拟触觉是一个很难的问题,因为现实物体太复杂了,难以还原出高拟真度的虚拟物体。随着近年VR爆红,触觉模拟再次成为研究热点,但是目前还没出现大规模普及的迹象,仍属于VR领域“圣杯级”的问题。我把最近看到的不错的项目做了一个大概的归类,总结如下:
1. 振动
利用振动马达模拟触觉,类似xbox手柄的振动功能。可以模拟表面阻力、碰撞反作用力、爆炸冲击力等。印象比较深刻的就是Vive上The lab中的射箭游戏,在拉开弓箭的时候伴随着手柄的细微振动感觉很真实。但是模拟刚体碰撞有点勉强,因为手会直接穿过虚拟物体表面。
Teslasuit全身触觉模拟,不仅有振动,还可以模拟温湿度等
另外一个类似产品skinsuit
2. 特殊力作用
磁力:
前面提到的Maglev 就是其中之一,磁力通过操纵杆传导到用户手上。
FingerFlux 近表面触觉反馈
FingerFlux- Near-surface Haptic Feedback on Tabletops
磁力的缺点就是作用范围太小,如果想增大作用范围的话,电流需要成倍增加。
超声波:
通过将超声波聚焦到用户手上,并不断扫描刷新,来渲染三维物体。
Rendering Volumetric Haptic Shapes in Mid-Air using Ultrasound
3. 限位电机
这也是目前大多数“VR触觉手套”的解决方案,通过电机限制用户手指的移动范围来模拟刚体触碰。这种方案也很早就出现了,如前面提到的 CyberGlove。
也有用气泵代替电机的,通过调整手套内的气压来模拟不同的触觉,类似血压仪的感觉。
Hands Omni haptic glove lets gamers feel virtual objects
前一阵斯坦福团队开发的“金刚狼”力反馈手套,利用了导轨和电机。
Wolverine- A Wearable Haptic Interface for Grasping in Virtual Reality
4. 机械臂
这属于一大类了,比较早而且成熟的有Phantom Omni, Novint Falcon等。最近也有很多研究开始利用人机协作机器人如UR, Baxter等。它们的普遍特点也是:贵。
Phantom Omni 有配套Unity插件,可以很方便的开发VR程序
Phantom Omni haptics in Unity 3D
Disney Research 开发的远程人机协作机器人
A Hybrid Hydrostatic Transmission and Human Safe Haptic Telepresence Robot
利用机械臂模拟墙壁
Versatile Encountered-type Haptic Display for VR Environment
Microsoft 在触觉模拟方面也做过很多研究,最近他们发布了NormalTouch, TextureTouch两个原型,
也在回答中提到了。虽然不是机械臂但是完全可以作为机械臂的末端。Microsoft Research- NormalTouch and TextureTouch
机械臂方案的优点就是普适性强,理论上可以模拟任何触觉。但是成本高,而且需要保证安全性。
5. 重合现实物体
也是Microsoft Research的项目,实验中用户依次拿起VR中的三个方块,但其实在现实中只有一个方块。原理就是VR中的世界随着用户的动作在不断移动,但是变化很小以至于用户难以察觉。
Haptic Retargeting- Dynamic Repurposing of Passive Haptics for Enhanced Virtual
通过无人机来模拟触觉
BitDrones- Interactive Flying Microbots Show Future of Virtual Reality
这种将虚拟物体和现实物体重合的方案成本较低,但是可模拟的物体种类比较受限,因为在现实中必须有其对应的物体。
目前能实现模拟刚体碰撞的方案有很多,但是大部分成本较高。这也是力反馈技术需要解决的最大问题。