什么是VR中的Locomotion?
Locomotion,本文中我称之为移位,是VR研究中最重要的话题之一。因为它属于VR中三大元老级操作(Selection选择,Manipulation操纵物体,Locomotion移位),其中,前两个操作是关于物体的,而Locomotion是关于玩家自己的 - 几乎所有的VR应用都避不开这三个操作,而这三个操纵几乎涵盖了所有的VR操作。今天就来解释一下,VR中的Locomotion指的是什么,它有哪些分类和技术。
Locomotion是什么?
Locomotion,用最简单的话解释就是“从一个位置移动到另一个位置”,在VR中,它的指的就是玩家在虚拟环境中从一个位置移动到另一个位置,其本质是玩家视角(viewpoint)的改变:从一个视角变换到另一个视角。Locomotion在中文里尚无一致的翻译,所以这里我暂把它译作“移位”。
虚拟3D环境(包括VR和屏显等)中的Locomotion有三种可能的目的:探索(exploration),搜索(search)和查看(maneuvering)。探索是没有具体目标的移动,其目的一般是搜集环境信息,或者简单的就是享受美景。它讲究一个在环境中移动的自由性,移动的速度要能随心所欲,并且需要能视察大范围的环境全景。搜索则是有一个具体的目标,要在环境中寻找到它。这就要求能够同时顾及远景近景,既能大范围视察,又能有足够的细节,在这中间做一个权衡。maneuvering并没有一个很准确对应的中文翻译,它其实表示的是相对于一个物体的视角控制,一般目的是为了从各个角度观察某个物体或者某个环境,所以我这里把它译作“查看”。比如你如果进入了一个陌生的房间,可能会四周看看,走两步,或者你看到了一个纪念碑,想要绕道正面去看看碑面上写的什么。这时候你不会进行很大范围的运动,但是你会进行很准确的视角控制。查看是三种目的中移动范围最小的,也是最精细的操作,它需要操作的稳定性和精确性。
Locomotion的分类
Locomotion既然是从一个视角变换到另一个视角,那么根据两点之间如何进行变换,可分为两种方式:点对点的移位(target based locomotion)和导航(navigation)。其中点对点移位是直接从一个点跳转到另一个目标点,最常见的例子就是Teleportation传送门,用户选择要去的位置,然后天光一闪,用户就被传送过去了。而导航则是有一个从出发点到目的地的路径。要想导航必须知道当前的方向(spatial orientation)。
很明显的,对于点对点位移,我们只需要知道目的地的空间位置(position)和玩家移位过去以后的朝向(orientation);而导航,除了位置和朝向以外,还需要控制中间的过程。这个多出来的中间过程包括了两个方面的工作:寻路(wayfinding)和视角控制(viewpoint motion control,也称travel)。
其中,寻路主要是一个脑力上的活动,包括了理解空间信息(spatial understanding,理解我的空间位置、我与环境的关系)和计划路径(path planning,选哪个路径走)。关于它有很多认知方面的研究(可见Darken et al., 2014)。设计一种移位方式时,不能违背这些认知的方面的原则。
视角控制就是作为设计师和开发者可控制的部分了。根据我们想要达到的目的,如何让用户操作控制自己的视角。其本质就是开放一个对视角的位置和朝向的控制接口。
什么是VR中的Locomotion?的更多相关文章
- VR中的“寻路(wayfinding)”
虚拟现实(VR)中很重要的一个问题就是Locomotion(用户在VR中的移动).这个Locomotion分为两种,一种是点对点的,如传送门的方式,一种是包含了可以操控的中间过程的,这种被称为“导航( ...
- VR中射线点击按钮的实现
VR中实现UI的Button点击,主要是需要实现IPointerClickHandler接口,因为在Unity将所有的按钮操作都封装成了相应的接口,需要相应的功能只需要去实现对应的接口就好了.在这里我 ...
- VR中为什么需要把游戏音频放在聚光灯里?
VR中为什么需要把游戏音频放在聚光灯里? 本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/de ...
- 什么是VR中的vection?
Vection是VR领域的一个专有名词,其义指“在虚拟现实中给人带来‘移动’(self-motion)感觉的认知因素”1.也就是说,vection就是指那些给玩家带来“我正在这个虚拟环境中移动”这种感 ...
- 浅谈html5在vr中的应用
使用过HTML5制作动画过程的开发者都知道,HTML5页面给人一种逼真的感觉,同时HTML也是可以制作VR页面,但是需要你熟练HTML5与JavaScript开发过程,所以在有必要的情况下,我们可以用 ...
- VR中的Redirection
在虚拟现实(Virtual Reality,VR)中,很重要的一点就是用户的在虚拟环境中的漫游(navigation).除了固定视点的VR电影,一般的VR应用,特别是游戏或者其他交互式的应用,都会依赖 ...
- VR中运动控制器的传送系统
创建一个VRPawn 新建一个BluePrint,父类选择Pawn,我们命名为VRPawn,打开它. 添加一个Scene命名为CameraRoot 在CameraRoot节点下添加一个Camera 在 ...
- 使用鼠标左键事件实现VR中的Eye Gaze Input
1.光标以及光标动画的显示 using System.Collections; using System.Collections.Generic; using UnityEngine; using U ...
- 期待中冷静前行,专家预测2017年VR产业5大发展趋势
VR在90年代火过一阵后,在2016年迎来了爆发.今年的VR领域,除了Oculus.HTC.索尼等发布的各家硬件,还有许多VR内容争奇斗艳的迸发,但是VR会一直保存热度吗? 事实上,对于科技圈巨头而言 ...
随机推荐
- CodeForces 1187G Gang Up 费用流
题解: 先按时间轴将一个点拆成100个点. 第一个点相当于第一秒, 第二个点相当于第二秒. 在这些点之间连边, 每1流量的费用为c. 再将图上的边也拆开. 将 u_i 向 v_i+1 建边. 将 v_ ...
- Supreme Number 2018沈阳icpc网络赛 找规律
A prime number (or a prime) is a natural number greater than 11 that cannot be formed by multiplying ...
- POJ-2018 Best Cow Fences 二分
题意:找到一个连续区间,区间的长度至少大于f,现在要求这个区间的平均值最大. 题解: 二分找答案. 每次对于2分的mid值, 都把原来的区间减去mid, 然后找到一长度至少为f的区间, 他们的区间和& ...
- POJ 1002 487-3279 map
487-3279 Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 287874 Accepted: 51669 Descr ...
- Atcoder D - XOR Replace(思维)
题目链接:http://agc016.contest.atcoder.jp/tasks/agc016_d 题解:稍微想一下就知道除了第一次的x是所有的异或值,之后的x都是原先被替换掉的a[i]所以要想 ...
- 天梯杯 L2-003. 月饼
L2-003. 月饼 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不 ...
- .NET Core CSharp 中级篇2-8 特性标签
.NET Core CSharp 中级篇2-8 本节内容为特性标签 简介 标签Attribute是一个非常重要的技术,你可以使用Attribute技术优化精简你的代码.特性标签可以运用在程序集,模块, ...
- PHP. 02®. Ajax异步处理、常见的响应状态、XMLHttpRequest对象及API、ajax的get/post方法、
异步对象 a)创建异步对象 b)设置请求的url等参数 c) 发送请求 d)注册时间 e)在注册的事件中获取返回的内容并修改页面显示的内容 布尔类型不能直接用echo输出 常见的响应状态 Ajax概 ...
- Java中ElasticSearch的删除示例
public class DeleteElasticAPI { private static RestClient restClient; static { restClient=RestClient ...
- ReentrantReadWriteLock总结
ReentrantReadWriteLock的流程的一些特性: // ReentrantReadWriteLock.WriteLock.lock()特性: • 已持有读锁的线程不能再持有写锁: • 已 ...