先交代一下背景,我是 UX 设计师,接触到 VR 的设计是因为公司有一个实验性的 VR 项目(做完就撤掉了),人员只有我和另一个Unity 工程师,他之前只负责程序实现没有做过 VR 的界面,我之前也没有先关经验,VR 的界面部分是我俩一起在没有指导的情况下探索性完成的。所以这个流程不一定是标准流程,仅供参考~
我们当时是做的 3D 建模(不是拍摄的实景)不可走动场景(固定在一个点上),建模部分是外包的,我们需要完成在 3D 的场景里加上可交互界面。
一、概念
VR 本质上还是一个显示设备,设备不一样交互方式会略不同,由于它是 3D 的,所以显示上也会有不同,和 2D 的界面设计相比就是基础规范不同。
跟 2D 的界面设计一样,我们要先确定做什么、有什么用,有哪些界面、界面里分别是什么元素、交互方式、不同状态的样式等等。
不同之处在于 3D 的界面设计中会有更多的属性:
1. 有纵深
元素离你的距离。离太远了看不清,离太近了能显示的内容就变少了且生理上不舒服啊。远近还会影响元素的大小,设计的时候还要考虑到距离的问题。
Unity 中的尺寸是按米算的,一个格子1米(这个跟 C4D 一样,不等同于物理尺寸),开始正式设计前在 Unity 中绘制一个矩形,做为界面显示位置与大小的参考,然后截图(带网格)。
把截图拖到 sketch 中,综合设计稿的尺寸、截图的网格大小,确定一个比例,如 50px 占一个网格,那设计稿中一个 10px 大的按钮在 Unity 中就是 0.2m 。
当然这个方法是我自个儿琢磨的(捂脸~)。
2. 视角有高低
小朋友的视角低,只能看到大人们的腿,高个儿们视角高,走在人群中看到的都是头顶,那我们在做 VR 的时候就会放一个表示视角的摄像机,这个摄像机的高度看到的视角高低。
我们这个项目是固定在一个点的,摄像机高度也是固定的。喊几个不同身高的人带着 VR 眼镜试试会不会觉得别扭,别扭就调下摄像机高度,找个折中大家都不觉得别扭的高度。这个步骤直接开发小伙儿调就行了。
3. 分辨率低
VR 设备的分辨率目前比手机屏要低很多(目前),所以实际上可设计的面积比手机屏要小,字和按钮的占比就不能太小,得大(大概是心里觉得 “卧槽这么大还能看么” 那么大)。
4. 视线中心区域
我们人的眼睛默认正视前方,眼睛平视正前方最容易看清,左右水平的这一圈可以转头转身,天花板和地面得抬头跟低头,看得很累,这跟平时看手机电脑从左上往右下阅读方式不一样,所以界面是从正中向右延展,
5. 交互
我们使用的 VR 设备是手柄操作,交互方式比较简单,画面中会显示一个表示视线焦点的小光点,这个小光点可以通过眼镜移动也可以通过手柄移动:
- 操作:瞄准,然后点击手柄或长时间注视(悬停)点击目标
(可用来表示已悬停的属性变化:颜色、光线投射、深度变化、角度变化等) - 提示:在场景中标记出可交互的元素(发着光或者别的像游戏里那样,可以使用声音提示)。
二、准备
安装一些设计 VR 时用到的软件和插件:
- PS变形滤镜插件 Flaming Pear Flexify 2,用于生成全景图;
- GoPro VR Player 用来预览全景图;
- 制作 VR 应用的软件 Unity。
【一张图表达下转换过程】
GoPro VR Player 预览需要把界面以及背景做成等柱状投影图,所以需要通过 Flaming Pear Flexify 2 来生成,是在不了解 VR 的设计规范时用来辅助检查设计稿的效果用的,相当于稿子检查。
这个方法从 《VR原型的快速制作 - 大植子Daz_Qu》 看来的,建议看下原文。
三、设计
到 GoPro VR Player 预览这个步骤都跟大植子文章里差不多,但我们这个还得弄到 VR 眼镜,后面会多了 Unity 建模和 VR 眼镜检查两个步骤,也是反复调整的过程。
1. 网格
方形的网格不等于场景的墙面大小,只是以我们看到的视角划分为六大面,每一块表示一个视角,默认进入时看到的面定义为正面。
回忆在电影院看电影时座位离屏幕太近的感受,界面占比太大会有压迫感,四角的内容会由于透视角度问题变形,中间粉色的那一条就是视线看着比较轻松的大致范围。
- 制作360度全景图,检查效果
四、建模开发
跟开发小伙儿确定好交互方式,需要哪些页面?怎么跳转?开发小伙儿会把带有不同页面的 Unity 包给我,里面有大概需要的元素(各种块、文字、按钮等)
五、调试
大小远近