第2章 了解虚拟空间
过度的宣传、新时代的哲学沉思及专业术语的创造性使用,使得虚拟空间的概念令人困惑。在本书绪论部分的第2章中,我们将探讨虚拟空间概念的基本概述,包括它与物理空间的相似点和不同点,用于空间定义、描述及规划的惯常方法,以及导航工具和技术。
2.1 视觉空间的定义和内容
关于空间概念和性质的观点及定义彼此大不相同,主要取决于所研究的领域或专业。从历史的角度来看,追溯至古代,这一主题早已成为哲学家和科学家之间几次伟大辩论的焦点。古希腊哲学家、数学家柏拉图(公元前428—前348)在对话录《蒂迈欧篇》(Timaeus)中提到该主题,他把空间描述为诞生创造的子宫和容器。他在对话录《巴门尼德篇》(Parmenides)中声称万物之中皆有空间(乔伊特(Jowett),1901)。亚里士多德(公元前384—前322)在《物理学》第4卷中曾假设空间或地点是包含体的内在限制(门德尔(Mendell),1987)。
近期,来自更广泛科学和数学社区中的定义阐明,物理空间是一个有着相对位置和方向的无限三维空间,在这一空间内将产生各种事物(韦氏词典(Merriam-Webster),2016)。物理学家通常认为物理空间,连同时间是四维连续体,即时空的一部分。
在计算机科学领域,空间这个词更多用作基础概念的类比或隐喻,它科学验证了物理空间、时间和物质是相对的这一真理。在此背景下,空间和世界纯粹以数学为特征,由数学所定义。它们并不以物质形态存在,而是作为存储于半导体存储器或辅助存储设备里的硅晶体管中的字节存在。这些虚拟空间、世界或环境仅仅由程序员或设计师指定的特性所控制,因此它们的出现、规划和表现可获得无限的灵活性。
虚拟和增强现实开发人员正在开展工作,寻求准确模拟这些数字空间的视觉和听觉特性,其中探索出应用于这些创造物的关键基本概念十分重要。
2.1.1 视觉和物体空间
由于应用于虚拟和增强现实领域,视觉空间(visual space)这一词组可定义为用户或参与者体验的虚拟环境的感知空间,或视觉场景。视觉空间是独一无二的,因为用户感知到的场景实际上是光线通过眼角膜和晶状体进入人眼,最终落在视网膜的视杆细胞和视锥细胞上,由细胞转换为电脉冲,并传达至大脑进行解释的结果(这一过程在第3章中有更详细的讨论)。换句话说,我们从周边世界感知到的物体定位,实际上是布满双眼视网膜的光线模式的重建。
眼睛的光学通路和各种感知信号,例如深度感知、大小感知、形状感知、距离感知、方向感知及运动感知很大程度上影响着用户最终“看到的事物”,但展示立体图像的具体方式同样重要。那么光学是否会扭曲视觉场景?半球形显示屏或其他大型沉浸式观景系统等曲面上的投影是否会扭曲景观,包括物体的大小和位置?通常,每只眼睛看到的是空间的不同表现。
鉴于展示中存在着大量变量,视觉空间可视为虚拟物体空间(object space)的主观相对物,在这一空间里,3D模型中实体的定位和形状可以通过多坐标系统和简单的几何图形来准确界定。
2.1.2 内容
在大多数情况下,虚拟空间/世界/环境所包含的内容是通过使用几十个商用3D计算机辅助设计(CAD)和几何建模项目,例如Autodesk 3ds MAX、AutoCAD、Maya及Dassault Systèmes CATIA创建的,如图2-1所示。单个物体或极为精细的复杂模型,例如现代飞机的机身或者炼油厂的管道布置都将导入仿真引擎,以供通过所选显示屏观看。
图2-1 复杂的3D模型或者单个物体,可通过使用任何数量的CAD及几何建模项目进行创建
图片来源:i.love.marimilk的Flickr相册,获CC 2.0许可
在如图2-2所示的科学可视化应用中,无法预知规模和结构的大型数据集将输入观看系统,即使在此情况下,用于创建视觉表征的个体原始元素,包括点、直线、圆、曲线、三角形和多边形,以及立体图形,例如立方体、圆柱体、球体和圆锥体,与无限多样的复杂表面都是工程师或软件设计师预先进行数学定义的产物。除了实际几何表现,这些模型还具有其他特征和特性,包括纹理、光反射属性和透明度、声反射特性和强度特性(用于触觉感知/力反馈交互)。虚拟世界中不会形成任何实体,一切都是根据意图创建的。
图2-2 爱达荷国家实验室地球与环境科学先进能源研究中心的研究人员使用沉浸式虚拟现实系统,例如计算机辅助虚拟环境(CAVE)去展示用于可视化和分析的复杂科学数据
图片来源:爱达荷国家实验室的Flickr相册,获CC 2.0许可
最终,读者很可能在研究环境之外接触到虚拟和增强现实应用,大部分应用中的视觉内容将以2D和3D分析几何学(也称为解析几何)为原则,这些原则将在下一节中进行描述。
2.2 三维空间中的位置与方向定义
人类是空间动物。我们以三维的方式观察、听取周边的实体环境,与之互动并穿行其中。本书将反复提到,我们的感官机制经过完全进化,能很好地处理三维形式的信息。实际上,当前许多高级人机界面的设计、开发和基础研究的核心依据便是对这些感官优势的利用。因此,大部分虚拟环境都是以三维坐标系来定义的,并包含二维与三维几何元素。
2.2.1 位置的定义
虚拟和增强现实应用的布局与规划中,常用到3种主要坐标系:笛卡尔直角坐标系、球坐标系和柱面坐标系。尽管普通用户很少会用到这些坐标系,了解其基本功能与应用仍然大有益处。
1.笛卡尔坐标系
基于标准笛卡尔坐标系的熟悉度、准确度与简易度,大部分虚拟空间都使用这一系统,如图2-3所示。在该坐标系中,每个点都能以独特的三个坐标值(x, y, z)明确描述,说明该点到三个相互垂直的平面的具体距离(以同样的长度单位计量)。通过这种物体几何形式,可以精确地定义并存储多个物体彼此之间的关系,以及它们在物体空间中的位置。
图2-3 三维笛卡尔坐标系中的每个点都可以通过独特的x、y和z值描述。
图片来源:Jorge Stolf i在Wikimedia的照片
笛卡尔坐标系除了可以作为实体空间、理论空间和创意虚拟空间最为常用的数学制图工具之外,还可以用来定义用户在该空间内的位置与视角。
2.球坐标系
虽然可以用标准笛卡尔坐标系来定义点、线、面和完整物体在虚拟空间中的位置,描述物体和特征与用户位置的相对性(例如虚拟声源或球形视频(又称360°视频)中的相对位置)时,则往往要利用另一个系统,球坐标系。如图2-4所示,该坐标系由将球体一分为二的多个基础平面构成,包含3个要素:方位角、仰角和距离(或称数量积、范围)。第7章将对此坐标系及其在声源定位中的应用进行详细介绍。
图2-4 球坐标系图示,通过方位角(θ)、距离/范围(p)和仰角(Φ)定义点(P)的位置
图片来源:Andeggs在Wikimedia的照片
3.柱面坐标系
虚拟现实应用中常用的第三种坐标系是柱面坐标系,继承自20世纪90年代苹果公司的QuickTime VR系统。使用这种坐标系的数字技术能够精确地衔接并对齐画面重叠与边缘处,保持所有的点与中央基准轴距离一致,因而大量用于360°×180°“沉浸式”全景或360°视频背景的静态图像镶嵌制作过程。
如图2-5所示,中央基准轴(L)也称柱轴或纵轴,是定义径向距离(p)的基点(O),以(φ)来定义角坐标、(z)定义高度。
图2-5 柱面坐标系包含基点O、极坐标轴A和纵轴L。注意,节点沿A轴和L轴排列,图中标出的点的径向距离(p)=4,角坐标(φ)=130°,高(z)=4。
图片来源:Jorge Stolf i在Wikimedia的照片
柱面坐标系对于要求纵轴旋转对称的场景非常实用,但要注意,这一方法只可用于垂直视场,如360°×180°全景应用。
2.2.2 方向与旋转的定义
除了确定物体的所在地(或位置),往往还要定义并追踪物体和用户视角在该物体空间坐标系中的方向与旋转动作。简单的例子包括,定义虚拟人手等物体的动作,或跟踪用户佩戴头戴式显示器时所看的方向。
在二维空间中,只有相对于一个轴的单一自由度旋转,产生的数值也只有一个。
但在三维条件下,对方向的定义与实际刚体相似,至少需要3个单独的数值。如图2-6所示,最常用的是泰特-布莱恩角,更准确地说,是左右摆动角、前后摆动角和左右转动角。
图2-6 本图表示3种旋转类型:左右摆动、前后摆动和左右转动
图片来源:S. Aukstakalnis
在虚拟和增强现实领域,通常把位置(x, y, z)和方向(左右摆动,前后摆动,左右转动)统称为6个自由度(常常缩写为6 DOF)。
定义物体在3D计算机模拟中的旋转与轨迹,复杂性又略高一筹。回看图2-6,要想改变头部的方向,从面对左下方转为右上方,只有两个选择:一是沿着不同的轴连续转动头部直到想要的位置,二是通过一个流畅的动作完成重新定位。
第一种做法使用的是欧拉角,通过多次对固定轴线做特定角度的旋转来实现,但有时会出现万向节锁和运动不畅的问题。第二种选择则是利用四元数(quaternion),如图2-7所示,它是一个标准四项坐标系,能够在空间内流畅地转换方向,速度也比矩阵形式的旋转组合要快。
图2-7 本图是四元数单位产品在四维空间内做90°旋转的图示。四元数用于表达旋转动作时简明精练,易于转换,且不受万向节锁的困扰
图片来源:Prokp Hapala在Wikimedia的照片
除了定义模拟系统中的物体位置、方向和旋转,这些技术还被用来计算实际用户头部和手部的位置与方向。第11章将详细介绍此类使能技术。
2.3 导航
从字面上看,虚拟环境下的导航和寻路概念似乎相对简单,但实际上,这是两个在该领域最为复杂且亟待解决的问题。目前探讨较多的内容包括导航界面设计、空间认知研究和实境导航对比、人体因素考量等。
整体而言,大部分虚拟环境下的导航方式有两种:近地任务时做实际运动,虚拟距离较大时则采用人工界面操作(Slater et al.,1995)。举个最简单的例子,假设你站在一个虚拟房间中间,周围摆满了外形靓丽的跑车。这时,你不太可能利用任何人工界面来操纵自己的视角,反而会在汽车模型的周围实际走动,欣赏简洁的车体线条,甚至会把脑袋伸进车窗查看更多细节。
再假设你此刻置身于故宫的虚拟模型中,对周围充满好奇。如果佩戴了头戴式显示器,你的身体运动将受限于线缆的长度和追踪技术的有效范围。即时使用的是CAVE这种大规模沉浸式显示设备,你的实际运动也同样会受该系统有效显示区域的限制(一般为10~12平方英尺,约0.9~1.1平方米)。
此时,你有哪些选择?
确实,过去几年出现了几十种人工界面,包括3D的鼠标、手杖、游戏手柄、手势识别手套、运动监测戒指、操纵杆、方向盘、万向踏车、眼部追踪导航和诸多其他设备,能为各种需求提供无数种选择。每种设备都通过按钮、开关、微型操纵杆等机制协助人在物体空间中进行视角转换。
除了这些人工界面之外,还有更为大型的系统,能够帮助用户在空间中有效行走,拓展正常的直觉型行动方式。这些系统包括万向踏车和如图2-8所示的直径10英尺的空心球形设备,名为VirtuSphere。第12章将详细介绍促进虚拟环境导航的现有商业应用。
图2-8 VirtuSphere是一台直径10英尺的滚动式设备,能够创造出无限的球形空间,用户可以向任何方向走动
图片来源:Paul Monday在Wikimedia的照片,已获GNU GFDL许可
和人们设想的一样,现在没有、将来也不会出现一个普适性的界面解决方案。可以肯定的是,在虚拟环境中行动、导航并与物体互动的方式必须建立在现有项目的基础之上。例如,游戏玩家对导航的需求与建筑师或航空工程师在设计审核中的需求必定截然不同。
2.4 结论
正如本章所述,虚拟空间(虚拟环境、虚拟世界)只不过是实际或想象中的物体、地点或现象的3D数字表现,既不神秘也不虚幻。无须用到超现实、网络形态、以计算机为媒介的平行宇宙这类枯燥而混乱的术语,以准确易懂的语言就能解释清楚。后文将对本章中包含的基本概念进行详细扩展。