混合现实工具包Mixed Reality Toolkit-Unity 中UX控制模块应用学习

用户体验是决定一款混合现实应用质量的重要指标,好的用户体验可以帮助用户快速上手操作应用,通过直观的图文理解获取需要的内容,避免繁琐的使用指导及培训,从而帮助应用快速传播。 为了让开发者更好地向用户展示创意设计,MixedReality Toolkit-Unity提供了一些UX控制模块,快速开发贴合用户习惯的混合现实应用。 今天要介绍的是UX控制模块中的:对象集合(Object Collection)及虚拟键盘(Keyboard),帮助开发者轻松搞定混合现实应用中的3D物体形状以及系统虚拟键盘。

对象集合Object Collection

对象集合Object Collection 是一个脚本,可帮助布局一个对象数组在预定义的三维形状中。它支持五种不同的表面样式:平面,圆柱,球体,散射和径向,您可以调整项目之间的半径,大小和空间。由于它支持Unity中的任何对象,因此可以使用它来布局所有的2D和3D对象。可以减少用户在开发中的重复操作,如果你需要对一定数目的物体做布局,但是苦于放置时的误差或者计算繁琐,不妨试试MRTK-UX中的Object Collection功能。

对象集合Object Collection的具体使用方法如下:

1)创建一个空物体,添加脚本文件:Object Collection .script

2)在刚创建的空物体下添加需要布局的物体

3)添加完成后点击脚本底部的Update Collection按钮来更新布局

脚本虽然使用简单,但可配置项较多,灵活易用的使用体验,使系统得以满足不同开发者的需求,并且允许用户进行多次重复操作,下面对几类平面样式逐条说明:

Surface Type

这是一个枚举类型,用来表示你的布局类型,其中包括:圆柱形、平面、球形和分散形。

默认布局类型为平面 ,以球形布局为例,需要在平面布局的基础上再对物体进行旋转。

Sort Type

分类的类型,同样为枚举类型,其中包括子物体在父物体下的索引位置的升序、降序,子物体名称首字母的升序、降序。

默认类型为索引位置的升序Transform,具体的排序规则见下图:

Orient Type

方向类型,从用户的角度出发设计,随时考虑到用户的使用场景,包括原点的内、外和向前的内、外,其中球形布局的原点是球心,圆柱形布局的原点是圆柱轴等高的圆心:

Layout Type

布局方向,包括Colume Then Row和Row Then Colume,可以理解为列优先从上到下的布局和行优先从左到右的布局。

Ignore Inactive Transforms

是否考虑子物体的激活状态,如果勾选,那么未激活的子物体将不会参加布局;相反,即使未激活,也会参加布局。如图所示,左侧框中有6个子物体,但是由于2处于未激活状态,所以右侧框中参加布局的只有5个子物体。

Radius

布局的半径,例如球形、圆柱形布局的半径、分散性布局的范围为(-Radius, Radius)的正方形,但是对于平面布局没有影响。

Rows

布局行数,同时根据布局总数可以计算得到布局列数。

Cell Width / Cell Height

一个布局单元的宽高。

注:每次更改参数后,点击底部的Update Collection按钮即可更新布局。

虚拟键盘 Keyboard

互动体验,强调给予用户在操作上的互动感,让用户与产品高效的互动起来,在混合现实开发中需要进行输入文本的情况,不会局限于蓝牙键盘,或者HoloLens直接调用系统切换到一个2D XAML的模式下完成键盘的显示,输入。

但是如果你正在使用MRTK进行开发,那么你可以再Holo Toolkit->UX->Prefabs里找到Keyboard预制体,直接放到场景中使用,同时为输入框的父物体(要求继承自Graphic)添加脚本文件:Keyboard Input Field。在易用的角度上就显示的比较人性化。

点击上图设置的Target Graphic区域,弹出键盘如下 :