1. 引擎功能
1.1 引擎框架
网页在线开发。虚拟仿真开发平台需是浏览器运行的虚拟仿真软件开发平台,无需安装任何软件或插件,直接使用浏览器打开网页即可打开虚拟仿真软件,进行虚拟资源的开发工作。
跨平台运行。由于虚拟仿真开发平台是基于浏览器的开发平台,因此天然支持跨平台运行,无论是苹果MacOS系统,微软Windows系统,还是iOS和Android等手机系统,只要浏览器支持WebGL,即可直接运行VR虚拟现实引擎。
支持在线发布。虚拟仿真开发平台支持在线一键发布产品,发布后即可通过网页使用。
支持离线发布。虚拟仿真开发平台支持发布为离线资源,可部署到用户自己的服务器进行使用。
在线表格编辑器。支持表格数据在线编辑,支持撤销和重做、格式刷、字体、字号、加粗、斜体、字体颜色、背景色、对齐、搜索和替换等编辑功能。
在线资源库,与虚拟仿真开发平台双向对接。提供在线资源库,可共享模型、UI、图片、材质、全息模型等资源,支持一键导入到VR虚拟现实引擎中编辑和使用。同时,在虚拟仿真开发平台中编辑的场景资源也可以一键导入到资源库中进行分享。
多人协同应用功能:虚拟仿真开发平台支持开发多人协同应用功能,数据由客户端发送至服务器,服务器进行数据同步等技术,可实现多人协同完成一个任务的功能。
交互外设对接:虚拟仿真开发平台开发的虚拟仿真软件支持手机端、网页端、HTC VIVE头盔以及PICO头盔运行。
数据后台管理:虚拟仿真开发平台支持记录实验操作痕迹并上传至教学管理云平台,实验操作痕迹包括用户姓名、操作成绩、步骤详情、操作时间等。
多终端适配:虚拟仿真开发平台支持开发网页版仿真软件、HTC VIVE头盔版本仿真软件、PICO头盔仿真软件以及手机端仿真软件。用户可通过可编辑文本直接调用填写已封装完成的相关触发响应,完成各个版本仿真软件的开发。
协同交替开发:虚拟仿真开发平台需支持异地用户无需拷贝数据即可方便实现多人多角色的协同开发。同一个项目中,用户A开发完相关功能后,无需拷贝数据即可将项目工程传递至用户B处,进行其他功能的开发处理。同理,可继续传递至其他用户处,进行项目的交替开发。
引擎中英文切换:用户可点击引擎项目工程中中英文切换按钮,可一键将VR虚拟现实引擎界面相关文字内容切换为英文显示,再次点击,切换为中文。
1.2 核心技术
无需编程的开发技术:虚拟仿真开发平台采用自行研发的在线表格替代编程语言进行程序开发,用户无需掌握任何一门编程语言,无需任何专业背景,通过编写表格就能开发软件。
简单易用的开发表格:为了保证用户在开发时的简单易上手,虚拟仿真开发平台在摒弃程序代码开发而用在线表格开发的同时,做到了功能开发时的语言简便、通俗易懂,表格中填写的功能语言全部汉化,整个表格所需填写的列数不超过9列,并且明显区分了对象列、触发列、状态列、响应列等,用户将相应的参数填写在相应的列表中,即可实现软件功能。
实时保存的开发数据:开发过程中,用户编辑的表格数据内容可实时保存,避免突发断网或断电时的数据丢失,并且可在任何地方任意设备登录自己的账号即可打开最近保存的开发场景以及开发内容。
功能全面的编辑环境:虚拟仿真开发平台是完全自主开发的一款虚拟现实开发平台,全界面均汉化,编辑环境具备开发时所用到的基本编辑功能,比如修改物体名、修改物体层级关系、删除物体、复制物体、更改物体位置状态等,同时物体在环境中的位置状态、角度状态及比例状态通过参数形式展现。
1.3 引擎逻辑
以对象为核心:虚拟仿真开发平台将所有的仿真对象都看成是一个个对象,先以独立的对象为核心,将对象的所有变化变成一个个状态,完成独立对象的功能开发。在完成一个个单独对象的开发以后,再梳理对象之间的关系,进行整体的逻辑串联,完成仿真软件的开发。
模板对象功能:模板对象功能具有一般高级编程语言中的“类”相类似的概念。若某个对象具有通用的可用性,可以在一个程序中被反复使用,它就可以被编辑为一个模板对象,在软件的使用过程中,在需要的时候被动态创建出来,比如射击游戏,子弹是一个通用的对象,在扣下扳机的时候被动态创建,每颗子弹都是相互独立的,有自己的逻辑,射击到墙壁上则销毁,射击到人身上,则自我销毁并造成人对象“受伤”。
触发响应分离:虚拟仿真开发平台将仿真软件的主要元素抽象为两个部分,触发和响应。所有的外设,如鼠标、键盘、游戏手柄,以及其他一些特殊的条件,如碰撞、某个参数值大于另一个参数值、程序暂停等,这些条件都归类为触发。其他如物体位置变化、材质变化、形状变化、参数值计算等都归类为响应。触发和响应之间都是相互独立的,客户可根据自己的需求将适当的触发和响应自由联系起来,如触发为鼠标左键按下,对应响应为物体开始运动,左键抬起,对应运动停止。
软件逻辑自由:触发和响应之间通过对象的状态来进行逻辑的关联和控制。用户可根据实际功能需要,定义不同的状态表示不同的功能,然后为当前状态选择所需要的触发和响应进行搭配,即可关联出所需要的自由逻辑。不同状态之间还可使用关联状态进行串联,从而可以在不同状态间传递逻辑。
1.4 开发功能
公式和变量:虚拟仿真开发平台支持通过文本的方式定义变量和公式,变量和公式可以在触发和响应参数之间引用、改变和传递,以此来实现参数化和部分的逻辑控制。变量类型支持数字、字符串、bool、物体、颜色、UI、数组等。
外设输入触发:如键盘按下抬起、鼠标按下抬起、鼠标双击滚动、鼠标点选模型、鼠标拖拽、多个键盘按下等。
交互相关触发:如碰撞、碰撞移出、持续碰撞、角色碰撞、模型变不可见、对象失效等。
逻辑条件触发:如布尔值判断、浮点数大于或小于某一范围、整数值比较、字符串值比较、字符串中是否包含某些特定字符、数组中是否包含某些特定单元等。
UI触发:如按钮按下、鼠标移入UI、输入框输入、勾选框勾选、滑动条拖拽等。
位置状态响应:如获取位置、获取角度、比例值设置、角度设置、位置设置、父子关系设置,世界坐标和相对坐标转换,直线运动、自转控制、公转控制等。
鼠标输入相关响应:如点选模型信息、拖拽方向信息、鼠标当前坐标位置等。
模型对象相关响应:如对象名、对象激活状态、对象层级、对象标签管理等控制,对象动态查找关联,对象动态删除,对象间距离计算,对象渲染特性改变等。
数学函数响应:如加减乘除、整数浮点数各种限定、绝对值、取模、随机函数、三角函数、常用对数、开根号、角度和弧度转化等特殊函数控制等。
变量控制响应:如对字符串进行截取、字符串运算、向量进行距离运算、向量加减乘除、向量标准化、设置颜色值、颜色值插值、随机颜色值、变量类型转换等控制。
变量赋值响应:变量快速赋值、将公式运算结果动态赋值给变量等。
相机控制响应:如相机背景照片、相机背景颜色、透视或正交、相机深度值、相机视窗大小、相机渲染层级、相机屏幕坐标转换等控制。
调试响应:如打印适当的变量值、公式值、状态值等,选择打印的颜色,画可视化线条赋值显示等。
场景控制响应:如加载某场景、卸载某场景、重新加载当前场景、同步异步加载方式控制等。
UI控制响应:如不同UI显示切换、动态创建菜单、UI菜单动画、设置UI文字图片颜色大小位置、UI菜单拖动等。
灯光控制响应:如灯光强度控制、灯光类型控制、灯光颜色和特效控制等。
模板控制响应:动态创建模板、销毁模板等控制。
特殊控制响应。如定时器控制、消息传递、同步和顺序运行响应控制等。
1.5 编辑功能
模板UI创建,2DUI和3D UI相互转换。支持直接创建事先预设的复杂模板UI,且可对UI进行实时拖动和实时参数编辑,支持一键实现2D UI和3D UI之间的转换。
在线可视化场景编辑器。虚拟仿真开发平台具有在线可视化场景编辑器,可对模型进行平移、旋转、缩放等操作,支持模型层级显示、复制、删除、重命名、父子关系更改等基础编辑操作。
参数化属性编辑窗口。可实时显示和修改模型属性参数,如位置、角度、比例值、显示或隐藏控制、材质贴图参数、碰撞参数、标签、渲染层级等,场景窗口和属性窗口数据双向同步变化。
粒子特效创建和编辑。支持粒子特效的创建和编辑,可实时修改粒子特效参数,实时可视化查看效果。可实现粒子特效文件的导入和导出,便于共享。
PBR材质编辑。支持创建和编辑PBR材质,支持PBR材质参数编辑,支持在场景中和缩略图中实时可视化展示参数修改效果。
资源管理器。可对模型、贴图、材质、音频、视频、动画等资源进行统一管理。可创建文件夹对相关资源进行分类管理。通过上传接口,可将本地资源上传到服务器,自动生成共享在线资源,以便于后续使用。
2. 项目管理
项目管理包括创建、打开、修改、删除、发布、下载、分享、备份等功能。
创建项目:点击创建按钮,创建新项目。
打开项目:点击打开按钮,进入项目编辑开发页面。
修改项目:可对软件名以及是否开放进行设置修改;若设置软件开放,则项目发布后,用户获取软件链接可直接查看使用;若设置软件不开放,则对软件进行加密,用户需登录有权限账号方可使用软件。
权限管理系统:软件权限包括可查看和可编辑。用户获得查看权限,可通过软件链接直接登录使用;用户获得编辑权限,可在VR虚拟现实引擎中对软件进行编辑修改。若软件加密,开发者可通过权限管理系统批量生成具有软件登录或编辑权限的账号,也可对注册账号进行权限赋予,用户获取账号后可直接登录使用。
删除项目:删除当前创建的项目。
发布项目:项目发布生成网页链接,若软件开放,则用户可通过网页链接直接查看软件。
产品中英文切换:虚拟仿真开发平台开发完成的虚拟仿真软件产品,支持一键切换中英文语言。
分享项目:包括传递模式和克隆模式两种。传递模式:选择传递模式,生成分享码,其他用户通过分享码获取本项目文件所有权;克隆模式:选择克隆模式并设置节点数,其他用户通过分享码获取本项目文件的克隆版本,克隆节点数控制本工程可被克隆次数。
备份项目:点击备份按钮,输入备注信息,用户可在备份界面查看或恢复至之前备份版本。
输入分享码:通过其他用户提供的传递/克隆模式分享码,获取项目文件。
3. 运行环境
3.1 系统要求
操作系统:Win7及以上Windows或苹果MacOS系统
浏览器:Chrome75.0以上、Firefox或其他支持WebGL的浏览器
3.2 硬件要求
处理器:Intel i5六代及以上
内存:8GB
显卡 :GTX1050ti以上
网络 :1000Mbps以太网卡
网速 :100M
4. 在线资源库
平台提供的在线资源库,需包括以下资源:3D模型、GUI(图形用户界面)、图片、材质球、视频、语音和粒子特效等,涵盖机械制造、汽车维修、电子信息、交通运输、临床护理、旅游管理、红色教育、建筑施工、智能制造、安全管理、水利环境等多个教学领域的VR开发资源。
4.1 3D模型资源
4.1.1 虚拟硬件设备模型
包括云屏、小间距LED灯、卧式触控一体机、VR一体机、VR头盔、VR行走平台、立体触控一体机等模型。
4.1.2 虚拟场景模型
包括房间、厨房、教室、实验室、大地、户外场景、室外婚礼场地、演唱会舞台、烟厂、小木屋、工厂、病房、火车站等模型。
4.1.3 虚拟机电设备模型
包括生产线、虚拟五轴加工中心、广数机器人、虚拟三坐标测量机、虚拟电火花、高空作业车、无水乙醇盆、无人机、坐标轴模型、车床货架、车床木质地板、微纳米几何测量模型、起爆器、万用表、推车、大连机床机械十字滑台、减速器模型、虚拟线切割机、法兰克设备模型、虚拟数控铣床、液压模型、广数机械模型、高空作业车、伺服电机、车削夹具、角向定位车削夹具、边定位车削夹具、可移动式花盘夹具、平面定位车削夹具、钻夹具、回转盘夹具、端轴铣方头夹具、六点定位式功能铣削夹具、折合式钻模夹具、功能铣削夹具、连续夹紧铣床夹具等模型。
4.1.4 爆破实操虚拟仿真模型
包括爆破工实操保险管、爆破工实操引线、爆破工实操炮针、爆破工实操炮泥、爆破工实操连接线、爆破工实操胶带、爆破工实操爆表、爆破工实操非金属炮棍、爆破工实操裁纸刀、爆破工实操爆炸材料箱、导爆管雷管等模型。
4.1.5 虚拟智能制造设备模型
包括友成生产线、友成主要厂房精加工厂房、友成-牧野五轴、友成-检测设备、友成-复模机、友成-放电机、友成精加工模型、友成主要厂房、友成精加工厂房等模型资源。
4.1.6 虚拟驱动桥拆装设备模型
包括驱动桥六角扳手、驱动桥电动螺母、驱动桥三抓轴承抓手、驱动桥螺母扳手、驱动桥厂房等模型。
4.1.7 虚拟化工设备模型
包含化工实验室玻璃器材(容量瓶、锥形瓶、量筒、滴液管、洗液瓶)、烘箱、填料塔、灭火器、矿泉水瓶、水龙头等模型。
4.1.8 虚拟建筑设备模型
包含钢筋、吊机模型。
4.1.9 航空航天模型
包含AHW、FD-2000地空导弹00、联盟号飞船_05、辽宁号、嫦娥四号、长征火箭、东方红一号、航天飞机-09、联盟号飞船_05、火箭发射场、轰-6K轰炸机、战斧巡航导弹、歼20等模型。
4.1.10 党建模型
包含党徽雕塑、中国梦、共筑中国梦、中国梦雕塑、党建雕塑、中国梦雕塑、社会主义价值观雕塑等模型。
4.1.11 人物模型
包含工业人物雕塑、人体肌肉、防护服、毛主席、孔子、李时珍、马克思、孟子、敦煌飞天、释迦牟尼佛、敦煌佛像、刘伯承、看书女生、红军雕像、毛泽东雕像、邓小平雕像和底座、陈毅、邓小平半身雕像、朱德、邓小平站立像、大国工匠、人物模型、外国时尚女装、优秀学生作品、中国时尚女装等模型。
4.1.12 车辆模型
包含火车头、AIST、独木舟、筏、破冰船、散货船、拖船、蒸汽船、集装箱平车、绿皮卡、铁轨、蒸汽机车、南湖红船、别克威朗、挖油机、新能原汽车、模型车、卡车、邮轮、油轮、内燃机车、CRH5转向架、复兴号、HXD1D、悬浮磁力车、单轨、25T、复兴号+架子、PUZDB等模型。
4.1.13 武器模型
包含原子弹、王八盒子、重机枪、98k、战斧巡航导弹、汉阳造、捷克式轻机枪、中正步枪、炸药手雷、震弹筒等模型。
4.1.14 植物模型
包含麻黄、辛夷、灵芝、地黄、黄连、树等模型。
4.1.15 美术陈列品模型
包含艺术雕塑、异性曲面、地球仪、恐龙、异形椅、工业车轮、奖杯、艺术花瓶、天地间、几何体、商标、异形、中药摊位、方桌长椅、美丽乡村、竹简、园艺摆件等模型。
4.1.16 建筑模型
包含敦煌石窟、长城、房、蒙古包等模型。
4.1.17 乐器模型
包含马头琴、电吉他等模型。
4.1.18 家居模型
包含电热煲、电吹风、保温杯、冰箱、创意音响、电饭锅、电热水壶、空气净化器、水壶、云朵悬浮加湿器、榨汁机、大锅、屏风、扫地机、茶叶罐、空调、红锅、打印机、剃刀、矮柜、桌、长柜、未央高柜、桌柜、水杯、吹风机、洗衣机、音响、蒸汽熨斗、钢管椅、天鹅椅、蚁椅、郁金香椅、钻石椅、桌子、条案、墙前柜、长沙发、单人沙发、健身脱水机、沥水篮、灯、厨房黑锅、移动厨房、面包机、手提发电机、太阳能灯、茶桌等模型。
4.1.19 文物模型
包含古代币、刀币、古代柜台、钱币、四羊方尊、编钟、书、书简、齐式三量、蛋壳陶、鼎、铜研船等模型。
4.1.20 科技模型
包含波士顿动力狗、充电宝充电站、打印机板机、梅克费尔机器人、自助终端机2-08、自助终端、煎饼打印机、智能产品雨天遇见你、激光内雕刻机、彩色多材料3D打印机、无人机、电子显微镜、皮影、测风雷达、风云一号、气象塔、人造卫星、太阳能板、雾炮机、飞行器、一体机超薄晶片生产过程智慧检测平台、智能无人机器人等模型。
4.1.21 医疗器械模型
包含医疗器械、医疗产品、护理机等模型。
4.1.22 中草药模型
包含白头翁、白芨、白芷、蝉蜕、莪术、番泻叶、干姜、厚朴、苦杏仁、灵芝片、龙胆、麻黄杆、蒲黄、青黛、秦艽、三棱、血余炭、玄参、射干、浙贝母、紫苏子等模型。
4.1.23 其他模型
包含香水瓶、吸管、口罩、松油瓶、圆规、除味剂、世界卫生组织会徽、手套、相机、鲈鱼、DNA、动物细胞横切面、校验仪、会计计算机、拉杆箱、八卦、牙刷、宝灯、螺丝刀、剃毛刀、狮子、废墟、农家小院、高原、受电弓、k6转向架、第三代智能叉车等模型。
4.2 GUI(图形用户界面)资源
包括蓝白UI模板、漫游功能按钮、选择题模板、播放速度与动画类型、测试题模板等资源。
4.3 粒子特效资源
包括防爆、涉爆粉尘粒子、水花、水柱、粉尘粒子、电火花、烟气粒子、消声室声波、混响室声波、烟雾、喷氨格栅、烟雾净化、烟雾进入、浆液池效果叠加、喷嘴喷水、量大千克烟雾、雨、雪、水滴、火等特效。
4.4 材质球资源
包括金属材质库、地板材质库、喷漆材质库、石材材质库、布料材质库、胶类材质库、木材材质库、玻璃材质库以及液体材质库。
4.5 工具库
手势识别:包括低头、抬头、左转、右转、后退、前进、确认多种手势,同时支持自定义手势录入,手势可导入到引擎工程中,达到驱动软件的效果。
触发响应:包括GUI两点点击连线、加载用时统计、GUI拖动匹配、GUI显示控制、物体显示控制、记录所有子物体位置。
(1)GUI拖动匹配功能:从资源库中直接导入,实现通过开关变量控制GUI拖动实现匹配功能。
(2)GUI两点点击连线:从资源库中直接导入工程,实现点击两点,自动两点之间生成线段。