从设计角度看,虚拟现实引擎的层次构架可以分为4个部分,即基本封装、虚拟现实引擎封装、可视化开发工具和软件辅助库。
基本封装层对图形渲染及1/O管理等功能进行封装,这个中间平台为上层引擎开发
屏蔽了下层算法的多样性问题,便于提供实时网络虚拟现实的优化,以便集中力量针对一些底层核心技术进行研究。平台技术在不断更新的基础上实现技术共享和发展,但为上层提供的始终是统一的标准。另一个对引擎封装的意义是基于网络、高层应用的封装,该封装分为场景管理的引擎、物理模型引擎、虚拟现实AI(人工智能)引擎、网络引擎和虚拟现实特效引擎的封装同时该封装直接面对虚拟现实开发者,提供一个完整的虚拟现实引擎中间件,此外,在虚拟现实引擎层上还将构建一个可视化的开发工具,该开发工具中嵌套了道具编辑器、角色编辑器、特效编辑器等,可以完成地形生成,并且还融合了物理元素、虚拟现实关卡和出入口信息。
在开发虚拟现实引时,使用者可以通过两种方式使用引擎提供的功能:可以直接在引层上调用引擎封装好的AI来创建自己的虚拟现实,也可以通过场景编辑器创建虚拟现实的基本框架。
虚拟现实引擎从功能上可以分为以下子系统。
1.图形子系统
图形子系统将图像在屏幕上显示出来,常用 OpenGL,Direct33D来实现。
2.输入子系统
输入子系统承担处理所有的输入,并把它们统一起来,允许控制的抽象化。
3.资源子系统
该子系统负责加载和输出各种资源文件。
4.时间子系统
虚拟现实的动画功能都与时间有关,因此在时间子系统里必须实现对时间的管理和控制。
5.配置子系统
该子系统负责读取配置文件、命令行参数或者其他被用到的设置方式。其他子系统在初始化和运行的过程中会向它查询有关配置,使引擎效能可配置化或简化运作模式。
6.支持子系统
该部分内容将被其他引擎运行时调用,它包括全部的数学程序代码和内存管理及容器等。
7.场景子系统
场景中包含了该虚拟现实系统虚拟环境的全部信息,因此场景图既包括底层数据,也包括高层信息,为了便于管理,它把信息组织成节点,分层次结构进行操作管理。
内容来源:喻晓和《虚拟现实技术基础教程第2版》