VRFrameWork(以下简称VRF)是一个三维软件的开发平台。该平台采用开放架构,开发人员可以在基本接口的协议下按照具体需求修改或扩展基本模块的功能,做到了最大限度的灵活性,使用该引擎可以在短时间内开发出各种不同应用的复杂的三维应用软件。
VRF的核心是对三维场景的无规模限制以及对三维模型的高精度碰撞检测,这也是该引擎最有价值的2个方面。大规模支持方面:在三维虚拟现实方向,对复杂场景以及大规模场景的支持一直是最有挑战的功能之一,要开发一个虚拟现实软件并不算困难,但要开发一个支持城市以上规模三维场景的虚拟现实软件却是非常困难的,还有就是复杂场景,例如有个场景如果由几百上千万个面组成,那么不光是加载时间非常缓慢,而且要能够比较流畅的运行起来也相当困难;高精度碰撞检测方面:一般的虚拟现实软件对碰撞的检测精度要求并不高,只需要能够检测简单形体的碰撞即可,例如人物角色在场景中行走等,而VRF不光支持高效的立方体碰撞(用于人物角色的碰撞检测),还支持基于地形的多点碰撞(用于复杂模型,如军用挖掘机等,在复杂地形上的行走,可以模拟复杂模型在复杂地形上行走时应该有的状态)和模型间的高精度碰撞检测,高精度碰撞检测使用对分法,只需经过n次迭代即可将精度提升至2的n次方分之1的精度,VRF进行了20次迭代,精度为百万分之1,即尺寸在1米的模型,碰撞精度可以到达微米级别,而且速度非常快,在IBM x60(2007年的主流机型)上运行,可以每秒检测500万个面。
VRF的基本模块包括:渲染模块(目前引擎有通用渲染模块和支持CgFx的渲染模块2种)、模型存取模块、操控模块、数据支持模块、场景数据存取模块、物理系统、模型元素操控模块、脚本(互动和动画)系统、粒子系统,这些模块可以通过外部挂接的形式被替换,以便于功能改变或扩展。
下面针对各模块做简要说明。
渲染模块
该模块用于渲染三维虚拟场景,动态水效果、镜面效果、玻璃透明效果等。还有烟、火、雨雪、爆炸等特效通过粒子系统实现,动画通过动画脚本系统实现。
如果开发者对渲染有特别高的要求,那么可以修改、扩展、甚至全部重写该模块。
模型存取模块
模型存取模块当前有3个:e3d、3ds、obj三种模型格式。开发者可以新增对新格式的支持,也可以直接开发3dmax、maya等建模软件的插件,将文件直接导出成e3d格式(文档中已公开该格式)。
操控模块
操控分为对视图的操控、模型的操控、角色操控三种。
数据支持模块
数据支持当前有3种:本地文件、远程文件、内存盘。远程文件使用http协议,任何支持http协议的服务器都可以作为文件服务器,内存盘为VRF的辅助工具,可以将数据文件存入嵌入式数据库,并可以对数据进行加密,压缩等。
场景数据存取模块
用于存放、读取场景相关数据,大规模场景管理核心直接通过该模块存取数据,该模块再通过数据支持模块将数据存入物理介质。
物理系统
提供基于立方体的碰撞、多点碰撞、高精度碰撞三种碰撞检测。
模型元素操控模块
用于Easy3d建模软件(VRF的辅助软件)中三维元素的控制。
脚本(互动和动画)系统
用于使模型按照动画脚本的脚本指令产生动作。
粒子系统
用于模拟烟、火、雨雪、爆炸等效果。
VRF目前还支持3种虚拟幻境技术

1、效果非常好,但硬件要求高
2、左右格式 虚拟幻境
硬件上需要支持三维的显示器(或电视机),效果上和所配置的三维眼镜相关
如果使用头戴式显示器(如刚上市的sony hd oled),那么效果将是最好的
3、红青分色式 虚拟幻境
不需要任何特别设备,只需要一副红青眼镜即可。