毛霄萌
摘 要:随着沉浸式技术的不断发展,三维交互技术在沉浸式技术应用中扮演着越来越重要的角色。对于家居设计系统,在解决了展示平台的技术问题之后,对人机交互的要求也在不断提高,三维交互技术的引入对家居设计系统尤为重要。该文对家居设计系统应用三维交互技术进行了交互模式进行设计。在针对主流虚拟现实平台中的交互问题采用了虚拟控件(Widgets)的方式进行设计与实现,并应用在家居设计系统中。目的是为家居设计系统研究更灵活可靠以及可扩展的三维交互方式。
关键词:三维交互技术 家居设计系统 三维交互模式
Abstract: With the continuous development of immersive technology, 3D interactive technology plays an increasingly important role in immersive technology applications. For the home design system, after solving the technical problems of the display platform, the requirements for human-computer interaction are also constantly improving. The introduction of three-dimensional interactive technology is especially important for the home design system. This paper designs the interactive mode for the application of 3D interactive technology in the home design system. In the mainstream virtual reality platform, the interaction problem is designed and implemented by means of virtual widgets (Widgets), and is applied in the home design system. The goal is to develop a more flexible, reliable and scalable three-dimensional interaction for home design systems.
Key Words: 3D interactive technology; Home design system; 3D interactive mode
1 三维交互
随着沉浸式技术的快速发展以及应用的普及,尤其是三维显示技术的日益成熟,传统的以鼠标键盘以及二维平面的人机交互方式已经不能够满足越来越丰富的三维虚拟环境的交互需要。传统的人机交互模式来源于当前主流的二维显示系统,人们只需要通过鼠标、键盘以及触摸屏对平面显示器中的各种图形控件进行交互。在三维技术高速发展之前,以鼠标键盘点击的方式是可以满足绝大多数计算机软件的人机交互的。但是在三维技术快速发展之后,这种传统的方式越来越不能够满足人们对计算机虚拟环境中的三维物体的交互需求。
在传统的二维显示系统中,对于三维的虚拟场景最大的障碍就是无法很好地表示三维场景的深度,对深度信息不能够很好地进行交互,造成用户需要不断地将对象进行翻转,移动来校正用户对虚拟场景或物体的判断。这样的过程无疑是浪费了大量用户的时间。对于学习三维设计和三维交互的初学者来说,这个部分的操控学习占用了他们大量时间,而这仅仅是集中在操作上的,并不能将他们的精力解放到三维设计和创意中去。
人机交互设计的目标就是实现自然、本能的人机交互。当传统的交互方式和交互设备不能够满足人们的需要的时候,人们不断尝试用新的设备和交互方式来弥补和解决这些问题。三维交互技术就是为了改善和弥补传统交互方式,并基于三维的显示设备最终希望达到人机自然、本能地交互。
2 家居设计系统中的三维交互模式
当前,家居设计行业已经正在经历大的变革。多种前沿的信息技术已经被应用在家居设计行业中,包括利用数据库技术进行家居设计相关的数据存储及调用,还有当前最火的沉浸式技术。
在沉浸式技术中,视觉方面的技术已经从各个层面发展了很多相关技术,比如头戴式虚拟现实显示技术、CAVE技术、真三维显示技术等。
三维交互技术作为沉浸式技术中人与虚拟世界连接的重要技术,也被慢慢重视起来。对于家居设计系统的交互模式,传统的基本是基于平面的。不论是在触摸屏上还是传统的鼠标键盘式的操作界面,基于平面显示器的交互操作仍然只是鼠标点击,视角的控制等基本模式。这样的交互模式有其先天的劣勢,就是缺乏在空间的深度中获得交互,即用户很难对深度的距离和相关物体进行交互操作。所以三维交互技术的应用以及三维交互模式的开发变得尤为迫切。
在家居设计系统中,对于用户和家居设计师最主要的功能是完成在虚拟环境中的漫游和相关家具物品,室内装饰材料的选择。所以对于家居设计系统中的交互操作,用户的主要任务是完成对场景的浏览、漫游;对场景内的相关控件的交互,以及家居物品的摆放变更位置,所以对家居设计系统的三维交互模式如图1所示,交互模式分为以下5个大类,分别为选择、操作、视角控制、间接控制、复合模式。这5个大类又可以细分为16个小类。每个小类还可以再具体细分。这个分类是通过用户进行沉浸式家居设计系统的体验角度得来的。
3 家居设计系统中的三维交互实现
在家居设计系统中,需要考虑的最主要问题就是用户与系统之间的交互。由于当前可以预见的演示或展示平台主要集中在两个方面,即头戴式虚拟现实环境以及以平面显示器为主的终端(台式计算机显示或智能手机)。因此,可用性较高的家居设计系统应是能够胜任两套主流显示技术的(见图2)。
3.1 家居设计系统中应用的三维交互技术
当前有以下几种主要的三维交互技术可用在家居设计系统中。
3.1.1 点击/指向交互
指向和点击交互是当前在现实环境和虚拟世界中最简单直接的一种交互方式。对于人机交互来说,传统的计算机图形人机交互方式就是基于对图形的指向和点击来实现的。比如,每个用户都会使用的移动鼠标指针指向需要交互的图形,并点击来完成整个交互的输入过程。在虚拟世界中,现在也通常用人眼的注视方向和虚拟控制手柄形成选择方向。在这两套完全不同的系统中,最基础的实现方式都能够较好地完成基础人机交互任务。
3.1.2 直接操控
虚拟现实头戴显示设备是一整套集成了交互功能的显示设备,人们戴着头戴显示设备通过转动头部就可以看到不同的场景内容,这种交互是直接操控。用户在戴上头盔显示设备之后,就可以像在现实生活中一样进行四周的查看以及互动,整个过程中,用户完全是以本能在虚拟的环境中交互。而头盔显示设备则是通过六自由度的传感器进行沉浸式交互。在这个层面上,人机三维交互是完全自然的交互。
3.1.3 混合交互技术
在实际的项目设计制作中,完全单一的直接操控和点击指向交互都不能够很好地完成所有交互任务。综合使用这些交互技术才是对三维虚拟环境中多层次复杂场景和物体交互方式最理想的解决方案。根据不同交互任务的特点,融合使用不同的交互技术方法,能够最大限度地发挥人们在交互中的自由性和方便性。
以当前最广泛应用的三维显示系统来说,三维的交互可以简化为两个方面的交互方式。
第一,是使用当前比较主流的以头戴显示为主的沉浸式系统中的三维交互设备进行输入输出模拟三维交互。比如HTC VIVE的双手手柄、数据手套等。它们的特点是可以完全模擬三维场景中的物体进行交互,但问题在于在三维场景中没有和现实生活中一样的触感和碰撞反馈,用户很难判断是否交互成功。
第二,是在三维场景中建立与传统二维交互的控件进行三维交互的模拟。但这样使用的问题是容易给全三维的环境带来不和谐的视觉感受。
所以,在该文中,家居设计系统的三维交互方式需要将两者有机融合并完成三维交互的模拟和设定。
3.2 家居设计系统中的三维交互框架及原则
3.2.1 虚拟场景三维交互应该遵循的原则
(1)根据交互应用的场景,限制人机交互的自由度。对相关控件的外观进行设计研究,完成限制用户误操作的目标。
对于场景内的相关控件和相关交互元素,以及它们的行为方式尽可能地做出限定。因为在完全虚拟的环境中,用户可以交互的使用范围太广,比传统的平面图形操作交互界面多了一个维度,如果不增加限制,用户很可能将无法知晓他们可以交互的范围,以及交互的方式,从而产生较多的误操作,大大降低他们的。
(2)场景内的交互元素能明确表示出它的相应的交互功能和操作行为。
由于场景扩展到了三维的环境,而且不仅仅是桌面系统的三维环境,而是模拟现实环境的整个三维环境。用户是不太可能马上知晓哪些元素是可以进行交互的,哪些元素是场景元素。在现实环境中况且有可能有一些遮挡,如果在虚拟环境中不加以标识,或者可视化的引导,用户很可能完全无法发现一些交互元素。
其中,由于需要适应两套界面的操控,就必须使用控件的设计。控件的好处是它分为几步对用户进行提示并操作。在传统的二维界面中,许多三维软件采用的方式是首先进行醒目的标识引导或询问用户。用户可以选择或直接输入所需要的三维位置或坐标。这样的方式在使用的过程中可以进行精确定位,在传统的二维图形界面使用中非常有效。但在全三维的虚拟环境中,它很可能无效。因为在全三维的虚拟环境中,人们很难通过视觉的方式进行测量和判断。在这样的场景环境中,使用控件的方式,让用户直接通过控件的操控和交互的方式进行判断和测量,虽然会让用户进行多次操作,但用户在反复操作的过程中很好地完成了用户的输入和反馈的多次循环,这让用户能够获得更好的交互体验,也增加了用户对虚拟三维环境的了解和熟悉。从另一个角度来看,用户可以更快速地找到虚拟环境中的交互方式。
3.2.2 三维控件为基础的三维交互框架
三维控件为基础的交互框架设定是从二维图形界面的控件设计方式发展而来的。传统图形界面由二维或三维场景上的二维界面构成,如菜单、进度条或得分显示等。但有时需要用户在三维虚拟环境中与界面交互部件进行交互,如键盘、虚拟菜单或物品栏(尤其是以虚拟现实为展示的项目)。通过控件交互组件,可创建如滑块、组合框、复选框等任意类型的交互控件,然后在三维虚拟环境中进行交互。使用控件组件显示以三维形式存在于虚拟世界中的交互界面,还需要用户与此控件进行交互,在该项目中可通过控件交互组件来实现交互。
三维控件为基础的交互框架设计是以交互任务对象为核心展开的。为了支持交互任务对象,需要设定交互任务的用户类型。
以家居设计系统为例,用户类型主要分为设计师和家居客户,这两种不同的用户在使用该系统的过程中需要涉及不同的交互任务。设计师需要对场景内的相关设置进行改变,需要比较大的自由度。同时,设计师作为专业用户,比较熟悉在三维虚拟环境中的交互操作。所以,对于设计师用户类型,在家居设计系统中给定的控件就相对复杂一些,控件可控的范围也会大一些,而家居客户则相对设置会简单许多,以漫游浏览为主。模型的设计上,数据模型的操控设置将会比控件模型要少,数据连接也会少,因为在数据模型主要是以视觉的方式给用户反馈。整个三维交互框架以“三维控件”为核心,但要完成以三维控件为核心的整个交互过程,其他模块的支持是必不可少的。具体见图3。
首先,是三维控件所控制的对象“虚拟模型”,没有它,控件就没有存在的必要。具体来说,控件模型和数据模型 之间存在一种依赖关系,一般情况下一个控件模型总是与唯一的一个数据模型相关联,这由其数据模型成员源数据模型指出,而一个数据模型可以同时与一组控件模型产生关系,这由数据模型中的一个控件模型数组成员控件模型维护。当然,这些关系并非是必然存在的,比如一个 控件模型完全可以不与任何一个数据模型关联。
其次,需要由工具来驱动控件模型实现对数据模型的操控,工具的任务设定就是操作控件模型,在此可以继续沿用二维交互界面中相应的接口方式来实现操作。包括点击、按住、移动等接口命令。
最后,所有相应的控件和模型都由视图进行呈现。在传统二维显示平台上,仍然以传统方式呈现,与三维软件视图类似。在三维虚拟环境中,除了结合系统中的操作控件外,還需要将一些常用的控件固定在视图中(在不影响正常三维视图观看的基础上)。所以三维的视图中目前分为两套控件:一套是传统的平面固定控件,另一套是全三维的控件,这套控件还必须加上头戴显示系统控制手柄的反馈(包括视觉反馈和手柄内置的触觉反馈)。在操作上,设定三维控件交互组件执行光线投射,确定它是否命中世界场景中的控件组件。如命中,可设置规则确定与其交互的方式。交互通过模拟定义的按键来执行。例如一个按钮可通过鼠标左键点击,即可告知其他形式的输入模拟一次鼠标左键点击(控制器按钮按下、运动控制器扳机键按下等)。
4 结语
该文针对家居设计系统中三维交互的需求与特点,设计面向两个主流展示平台的三维人机交互模式,并结合当前相关三维交互技术实现了在虚拟场景为平台的三维交互功能。集中讨论了以当前主流显示平台中三维交互方式的设计思路及具体实现。整个三维交互的框架根据不同的交互层次,将不同的功能融入不同的虚拟环境中,尽力实现人机自然直接交互。同时,在框架的设置上使用模块化的构造方式,使得整个框架的具有很强的扩展性以及再开发的潜力。
参考文献
[1] 林远芳,刘向东,刘旭.基于二维旋转屏的体三维显示系统像素属性分析[J].光子学报,2004,33(4):476-479.
[2] 潘文平,沈春林,蔡亮,等.交互式动态体三维显示关键技术[J].科技导报,2011(1):44-51.
[3] 邓红.三维交互技术的研究与应用[D].大庆石油学院,2007.