叶桂锐
摘 要:为了实现虚拟现实交互场景设计,本文选取Unity3D作为主要工具,从全视角、人物视角、菜单交互3个方面出发,提出交互场景设计方案。采用信息采集与分析方式,监控场景运行现状,根据信息采集结果加以调整,从而形成一套完整的监控体系。
关键词:Unity3D;交互场景;VR
随着计算机技术的快速发展,加快了虚拟现实(Virtual Reality,简称VR)设计研发脚步。通常情况下,利用软件对某一特定场景进行抽象描绘,从不同视角来采集并分析环境信息,从而得出相应结论。
1 VR交互场景设计
本文在考虑VR交互场景设计方案时,从全视角、人物视角、菜单交互3个角度出发,对VR交互场景进行设计,并以室内环境交互场景为例,简要提出设计方案。
1.1 全视角设计
在交互场景中,采用大脑思想控制方式,通过控制头部佩戴的显示设备来调整方向,实现360°环境观察,并且观察视角不受任何限制,可以自由查看周围环境情况。该交互场景与传统的摄像机拍摄方式不同,是根据信息模拟出环境,实现全视角场景观察。
1.2 人物视角设计
该设计角度是以自身所处位置出发,在虚拟环境中抽象人物,利用按键进行操控。目前,应用比较多的人物视角设计方法有瞬间移动和平缓移动两种方式,前者利用激光指针锁定具体目标位置,根据瞬间移动情况,给出目标坐标点,后者是确定移动方向以后,在短时间内确定具体位置坐标。对于VR交互场景设计,将两种人物视角设计方式融为一体,根据实际环境情况,将其抽象为虚拟场景。
1.3 菜单交互设计
菜单交互设计指的是将交互场景设计功能划分为多个模块,根据功能不同简单分类,并划分层次,形成多个层次体系结构,根据操控需求,逐一排查功能栏,最终锁定操作工具。
1.4 室内环境交互场景设计
本文以欧式样板房室内环境设计为例,分别对餐厅、卧室、客厅等多个区域进行抽象设计,如图1所示。
图1场景中,各个区域分别布设了书籍、沙发、吊灯、座椅等家具,除此之外,VR交互场景中还存在多个小型摆件,包括相册、盆栽等。用户利用操作手柄,便可以操控整个场景布设。为了使得室内场景更加温馨,在图1中添加了玩具、手枪等物体对象,为用户提供交互物体,以此丰富设计方案。
2 VR运行监控SDK设计与实现
2.1 VR运行监控SDK设计
为了实时监控用户环境中的VR应用情况,本文设计了VR运行监控,利用该工具采集VR运行信息,依据运行信息变化情况,调节VR参数,使其得以正常运行。根据VR运行特征,将VR运行信息划分为4种类型,包括用户设备信息、崩溃异常信息、运行时性能信息、用户行为信息。
(1)用户设备信息:该部分信息是对设备标识号、处理器、系统信息进行采集,帮助用户开发VR应用资源环境。
(2)运行时性能信息:该部分信息以用户所处运行环境变化中体现的性能作为核心,采集堆栈内信息和帧率信息,通过观察此部分信息,介意判定当前运行环境性能是否欠佳。
(3)崩溃异常信息:该部分信息是采集以运行脚本崩溃异常信息为主,包括Mono堆栈内存信息、堆栈信息、异常类型等信息。
2.2 监控SDK实现
监控SDK功能的实现,信息采集与存储为主,通过对不同类型信息进行采集,存储到数据库中,以便诊断分析,从而实现VR监控,起到安全保护作用。
(1)用户设备信息。该部分信息的采集,利用Unity3D软件中的SystemInfo类,采集头部显示器中的运行脚本,调用VR场景中的对象,根据SystemInfo类属性,按照类别不同采集信息,从而实现設备统一编码,以便信息记录分析。
(2)运行时性能信息。该类型信息分为Mono堆内存信息和帧率信息,前者信息采集功能的实现是在编辑器模式下实现信息的采集,后者信息采集功能的实现是通过公式计算获取信息量,按照0.5s间隔采集信息。
(3)崩溃异常信息。运用C#脚本捕获监控场景信息,如果存在崩溃异常情况,则该监控中心制定采集此部分信息,反之,此功能无响应。在运行过程中,按照类的不同,分别捕获崩溃异常信息,以便查找问题根源。
3 总结
本文通过分析虚拟现实VR技术,提出该项技术在交互场景设计中的应用方案,以信息采集为主,利用采集到的信息组建交互场景。另外,本文还从监控角度出发,提出场景监控方案,利用Unity3D软件种类,提出程序编写思路,从而实现场景监控。
参考文献
[1]刘书刚,李怡璇.基于Unity3D的反窃电培训系统设计[J].微处理机,2017,38(5):70-72.
[2]张帅,伍传敏.Unity3D环境下的沉浸类虚拟现实系统设计与实现[J].宜宾学院学报, 2018,18(12):10-13.
[3]李子健,赵祖烨,田诵权,等.基于虚拟现实的3D打印体验系统设计与实现[J].软件导刊, 2017,16(11):44-46.