本发明涉及计算机,特别涉及一种基于虚幻引擎的仿真运行控制方法及系统。
背景技术:
1、虚幻引擎(unreal engine,简称ue)是一款开源的工业级开发引擎,因其强大的实时渲染能力、高真实感的画质效果及开源社区上丰富的辅助开发工具,使其成为当下最流行的游戏引擎之一。除了游戏,虚幻引擎被广泛应用于高精度仿真、电影制作、虚拟现实等诸多领域。
2、在计算机仿真领域,利用虚幻引擎强大的物理引擎、场景渲染和交互展现能力,可以开展实体细粒度建模、自然环境模拟和交互界面开发等工作。但虚幻引擎是一个通用的游戏开发平台,运行机制等方面并不能完全满足特定领域计算机仿真的需求。主流的计算机仿真系统提供了领域仿真所需的成熟、系统的解决方案,但往往在仿真场景渲染、结果展现、人机交互等方面并不擅长。
技术实现思路
1、为解决上述问题,本发明提供了一种基于虚幻引擎的仿真运行控制方法,具体技术方案如下:
2、s1:创建虚拟引擎项目,并创建线程;
3、s2:构建仿真平台工程单元并进行封装,获得动态链接库文件;
4、s3:将所述动态链接库文件引入所述虚拟引擎项目中;
5、s4:在虚幻引擎编辑器中导入平台模型资源,并在编辑器中创建新列表,构建平台模型索引;
6、s5:在虚幻引擎项目中创建蓝图函数库;
7、s6:在虚幻引擎编辑器中新建用户控件,将所述用户控件与所述蓝图函数库中的控制函数关联调用;
8、s7:运行仿真平台线程,执行仿真进程。
9、进一步的,步骤s2中,封装仿真平台工程单元,具体如下:
10、创建控制器类和回调类;
11、在所述控制器类中创建控制函数,所述控制函数至少包括启动、暂停、停止、加速、减速的控制函数;
12、在所述回调类中创建消息更新函数,获取仿真数据,并通过调用回调函数进行更新。
13、进一步的,步骤s5中,创建蓝图函数库,具体如下:
14、s501:在虚幻引擎编辑器中新建类,继承blueprintfunctionlibrary类,在新建类中,创建模型相关函数;
15、s502:在虚幻引擎项目中导入所述控制器类的头文件,创建控制相关函数,调用所述仿真平台工程单元中的控制函数。
16、进一步的,步骤s7中,运行仿真平台线程,具体过程如下:
17、s701:初始化仿真平台线程,绑定回调函数;
18、s702:通过所述用户控件调用创建仿真平台线程的函数,运行仿真平台线程;
19、s703:调用仿真平台中的启动控制函数,根据虚幻引擎端提供的文件路径,读取仿真输入文件,将模型平台数据压入队列,执行仿真进程。
20、进一步的,步骤s3中,通过在visual studio中设置项目的工程属性引入动态链接库文件所在路径。
21、进一步的,还包括在虚幻引擎编辑器中新建类,继承aactor类,重写tick事件,在tick事件中调用模型生成函数以及模型数据更新函数。
22、进一步的,所述模型生成函数,执行逻辑如下:
23、检查模型平台队列中是否有模型,如果有,则根据输入的参数,查询所述平台模型索引,找到指定的模型,并添加到游戏场景中。
24、进一步的,所述模型数据更新函数,执行逻辑如下:
25、读取仿真平台线程中返回的数据,并改变模型的位置、姿态和状态。
26、本发明还公开了一种基于虚幻引擎的仿真运行控制系统,包括仿真平台工程单元和虚幻引擎工程单元,所述仿真平台工程单元集成在所述虚幻引擎工程单元中;
27、所述虚幻引擎工程单元还包括线程类、平台模型资源、蓝图函数库以及用户控件;
28、所述仿真平台工程单元包括控制模块和回调模块;
29、所述控制模块用于提供控制接口,包括对仿真平台的暂停、开始、快进、停止的功能控制接口;
30、所述回调模块包括若干回调函数。
31、进一步的,所述仿真平台工程单元通过编译为动态链接库集成至所述虚幻引擎工程单元中。
32、本发明的有益效果如下:
33、本发明将仿真平台以动态链接库的方式接入虚幻引擎框架,并在虚幻引擎工程中以线程的方式运行仿真程序,虚幻引擎主程序利用线程通讯方法实现虚幻引擎与仿真平台的控制指令与仿真信息的交互,解决了基于虚幻引擎控制外部仿真系统运行,并实时展现仿真平台所传输的仿真数据的问题;本发明通过将主流仿真平台集成到虚幻引擎框架下,发挥虚幻引擎与仿真系统各自的优势,更好的实现了仿真效果。
1.一种基于虚幻引擎的仿真运行控制方法,其特征在于,包括:
2.根据权利要求1所述的基于虚幻引擎的仿真运行控制方法,其特征在于,步骤s2中,封装仿真平台工程单元,具体如下:
3.根据权利要求2所述的基于虚幻引擎的仿真运行控制方法,其特征在于,步骤s5中,创建蓝图函数库,具体如下:
4.根据权利要求3所述的基于虚幻引擎的仿真运行控制方法,其特征在于,步骤s7中,运行仿真平台线程,具体过程如下:
5.根据权利要求1所述的基于虚幻引擎的仿真运行控制方法,其特征在于,步骤s3中,通过在visual studio中设置项目的工程属性引入动态链接库文件所在路径。
6.根据权利要求1-5任一所述的基于虚幻引擎的仿真运行控制方法,其特征在于,还包括在虚幻引擎编辑器中新建类,继承aactor类,重写tick事件,在tick事件中调用模型生成函数以及模型数据更新函数。
7.根据权利要求6所述的基于虚幻引擎的仿真运行控制方法,其特征在于,所述模型生成函数,执行逻辑如下:
8.根据权利要求6所述的基于虚幻引擎的仿真运行控制方法,其特征在于,所述模型数据更新函数,执行逻辑如下:
9.一种基于虚幻引擎的仿真运行控制系统,其特征在于,仿真平台工程单元和虚幻引擎工程单元,所述仿真平台工程单元集成在所述虚幻引擎工程单元中;
10.根据权利要求9所述的基于虚幻引擎的仿真运行控制系统,其特征在于,所述仿真平台工程单元通过编译为动态链接库集成至所述虚幻引擎工程单元中。