虚拟现实应用的设计开发通常要求开发人员具备一定的编程能力,这限制了没有编程技能但对设计虚拟现实应用感兴趣的群体的创造能力,因此如何实现一个能够使开发者无须掌握任何一门编程语言,仅仅通过鼠标拖拽等“傻瓜”式操作,在所见即所得的场景中,方便地完成各种专业级虚拟现实应用搭建的编辑器已经成为当前虚拟现实市场的研究热点之一。目前虚拟现实开发工具市场份额最大的是Unity3D,但是基于Unity3D工具开发的应用也是需要写大量代码的。国外最为著名的可以通过鼠标拖拽就能完成一款虚拟现实应用的编辑器是PlayMaker,但是它有几个不足之处:①完全基于英文,没有汉化版,不方便国人使用;②它本质上属于插件,不能单独使用,必须嵌入Unity3D里才能使用。国内目前也有几家公司致力于可视化的编辑器设计,这几款编辑器中,要么就是当用户使用时仍需要编写脚本代码,要么就是实现的功能太简单,难以满足商业应用。本书研究的可视化编辑引擎是浙江优创信息技术有限公司出品的一款三维编辑引擎——PEVR(全称Power Engineering Virtual Reality),这款三维编辑引擎工具在一定程度上弥补了上述几款编辑器的不足。PEVR引擎是专门针对教育和培训、演练等各类VR应用而设计的一款快速开发工具。一般虚拟仿真软件的开发需要开发者必须掌握基本的编程知识,并使用相应的程序开发语言进行开发,对开发人员的技能水平要求较高。而优创PEVR引擎则可以使开发者无须掌握任何一门编程语言,通过鼠标拖拽即可方便地完成各种专业级虚拟现实应用的搭建,极大地降低了VR仿真软件的开发门槛和开发成本。该编辑引擎具有如下四大特点:
1)采用完全可视化的“拖拽”设计方式,开发者无须掌握任何一门编程语言,通过几天的简单培训即可进行VR仿真软件的开发。
2)与传统的编程开发相比,开发效率可提升数十倍。
3)客户随时随地修改,无须编译直接运行。
4)发布后的程序既可以在PC上运行,也可以在VR设备上运行。
优创PEVR的框架是基于有限状态机(Finite State Machine,FSM)的思想进行设计开发的。一个有限状态机可以将行为组织成一些离散的状态,比如开启、关闭、行走、空闲、攻击、防御等。每一个状态由一个或者多个行为组成,然后通过事件驱动不同状态之间的转换。优创PEVR主要包括场景编辑、行为管理、事件管理、状态管理等功能模块,其系统架构如图1-1所示。
图1-1 PEVR系统架构图