本发明涉及仿真领域,尤其涉及一种仿真显示方法、系统、计算机设备及存储介质。
背景技术:
1、仿真是一种利用模型来模拟实际系统或过程行为的技术,在工程、科学、医学、经济学等多个领域都有广泛的应用。为了使用户更有效地理解和分析系统的行为,通过仿真显示将复杂的仿真结果以直观的可视化形式呈现出来,仿真显示提供了丰富的绘图和动画功能,支持从静态图像到动态交互式场景的各种展示方式。
2、一般来说,仿真显示系统包括耦合的仿真计算和图形渲染两个部分,这种耦合可以体现在多个方面,包括代码结构、数据流以及更新机制等,仿真逻辑和渲染逻辑紧密交织在一起时,会导致仿真显示系统的可重用性差,也难以理解和维护,并且为了保证渲染结果的实时性和准确性,渲染必须等待最新的仿真数据,否则可能导致渲染滞后或数据不一致的问题,这严重降低了仿真显示系统的性能。
3、由此,可以通过将仿真计算和图形渲染两个部分的解耦来避免上述问题。例如,申请公布号为cn117634369a的中国发明专利,其公开了一种仿真方法包括:获取固件代码中的指令,执行获取的指令,在获取的指令与寄存器模型的访问有关时,产生寄存器访问任务;执行寄存器访问任务,在寄存器访问任务的类型为触发类型时,产生渲染任务;在渲染任务为重任务类型时,将渲染任务传输至图形渲染管线模型,在接收到指示渲染任务已缓存至图形渲染管线模型的信息后,继续获取下一条指令。又例如,申请公布号为cn116010037a的中国发明专利,其公开了一种基于虚拟仿真平台的gpu仿真方法包括:编码子系统参与目标机程序的编译运行环节,通过替换原本的opengl/opencl等图形标准规范库,对其api及对应参数进行编码,并写入相应内存空间。管道子系统捕捉编码好的api数据,通过相应ipc通信技术,发送给解码子系统。解码子系统对接收到的数据,作解码和执行的处理,如果api需要返回值,则会将api执行的结果,经过管道子系统回传给编码子系统。
4、然而解耦后的仿真计算和图形渲染两个部分独立运行,仍然可能会导致渲染出错或延迟,严重影响用户体验和系统可靠性。
技术实现思路
1、本发明的主要目的在于提供一种仿真显示方法、系统、计算机设备及存储介质。仿真显示系统包括独立的仿真解算模块和渲染显示模块,根据仿真事件类型对仿真解算模块生成的仿真数据进行渲染等级划分,生成带有渲染等级标签和仿真时间标签的至少一个子仿真数据,并实时将子仿真数据传输至渲染显示模块;根据标签将子仿真数据分配至第一渲染等级列表或第二渲染等级列表;根据传输频率确定渲染显示模块的读取间隔;渲染显示模块基于读取间隔渲染显示仿真时间标签最早的目标子仿真数据,且同一仿真时间标签下,第一渲染等级列表优先于第二渲染等级列表进行渲染处理。在确保仿真显示的准确性的同时,大幅降低了仿真显示的数据处理难度,优化了仿真显示系统的处理效率。
2、本发明具体采用以下技术方案:
3、本发明的第一方面在于,提供一种仿真显示方法,应用于仿真显示系统,所述仿真显示系统包括独立的仿真解算模块和渲染显示模块,所述方法包括:
4、s101调用所述仿真解算模块进行仿真运算,生成若干特定仿真事件对应的仿真数据;
5、s102根据所述特定仿真事件的事件类型对所述仿真数据进行渲染等级划分,生成带有渲染等级标签和仿真时间标签的至少一个子仿真数据;
6、s103实时监控仿真过程中的仿真事件,当监测到所述特定仿真事件时,将所述特定仿真事件对应的所述至少一个子仿真数据传输至所述渲染显示模块;
7、s104根据所述渲染等级标签,将所述至少一个子仿真数据分配至第一渲染等级列表或第二渲染等级列表;
8、s105获取所述子仿真数据的传输频率,并根据所述传输频率确定所述渲染显示模块的读取间隔;
9、s106基于所述读取间隔,调用所述渲染显示模块从所述第一渲染等级列表和所述第二渲染等级列表中读取所述仿真时间标签最早的至少一个目标子仿真数据,完成所述目标子仿真数据的渲染显示;其中,所述第一渲染等级列表中的目标子仿真数据优先于所述第二渲染等级列表中的目标子仿真数据进行渲染处理。
10、在一些实施例中,所述s105,包括:基于预设映射关系,根据所述传输频率确定所述渲染显示模块的期望读取间隔;当所述期望读取间隔大于第一限制阈值时,将所述期望读取间隔设置为读取间隔,其中,所述第一限制阈值为所述渲染显示模块的预设渲染速率对应的读取间隔;当所述期望读取间隔小于所述第一限制阈值时,将所述读取间隔设置为所述第一限制阈值。
11、在一些实施例中,所述至少一个子仿真数据还带有事件类型标签,所述第二渲染等级列表内包括若干个事件类型子列表;所述将所述读取间隔设置为所述第一限制阈值之后,还包括:根据所述事件类型标签将所述第二渲染等级列表中的子仿真数据分配至对应的事件类型子列表;定义所述事件类型子列表的时间窗口;分析所述时间窗口的若干子仿真数据,将同一实体下的数据波动在预设范围内的子仿真数据融合处理为一个合并的子仿真数据;调用所述渲染显示模块处理所述合并的子仿真数据时进行曲线拟合操作。
12、在一些实施例中,所述完成所述目标子仿真数据的渲染显示,包括:对所述第一渲染等级列表中的目标子仿真数据进行渲染处理,得到第一渲染数据;将同一所述事件类型子列表的所述目标子仿真数据分为一组,得到至少一个目标子仿真数据组;分别对每个所述目标子仿真数据组进行渲染处理,得到第二渲染数据;显示所述第一渲染数据和所述第二渲染数据。
13、在一些实施例中,当所述期望读取间隔小于第二限制阈值时,所述渲染显示模块向所述仿真解算模块发送仿真减速信号,所述第二限制阈值小于所述第一限制阈值;所述仿真解算模块基于所述仿真减速信号内的期望速率进行仿真运算。
14、在一些实施例中,当所述期望读取间隔在预设时长内持续大于第三限制阈值时,所述渲染显示模块向所述仿真解算模块发送仿真加速信号,所述第三限制阈值大于所述第一限制阈值;所述仿真解算模块基于所述仿真加速信号的期望速率进行仿真运算。
15、在一些实施例中,所述s106还包括:分析所述目标子仿真数据对应的实体类型,根据所述实体类型调用对应的仿真实体渲染模型;基于所述仿真实体渲染模型完成所述目标子仿真数据的渲染处理。
16、本发明的第二方面,在于提供一种仿真显示系统,所述系统包括:
17、仿真解算模块,用于调用所述仿真解算模块进行仿真运算,生成若干特定仿真事件对应的仿真数据;根据所述特定仿真事件的事件类型对所述仿真数据进行渲染等级划分,生成带有渲染等级标签和仿真时间标签的至少一个子仿真数据;
18、事件监控模块,用于实时监控仿真过程中的仿真事件,当监测到所述特定仿真事件时触发数据传输模块;
19、所述数据传输模块,用于将所述特定仿真事件对应的所述至少一个子仿真数据传输至所述渲染显示模块;
20、所述渲染显示模块,用于根据所述渲染等级标签,将所述至少一个子仿真数据分配至第一渲染等级列表或第二渲染等级列表;获取所述子仿真数据的传输频率,并根据所述传输频率确定所述渲染显示模块的读取间隔;基于所述读取间隔,调用所述渲染显示模块从所述第一渲染等级列表和所述第二渲染等级列表中读取所述仿真时间标签最早的至少一个目标子仿真数据,完成所述目标子仿真数据的渲染显示;其中,所述第一渲染等级列表中的目标子仿真数据优先于所述第二渲染等级列表中的目标子仿真数据进行渲染处理。
21、本发明的第三方面,在于提供一种计算机设备,所述计算机设备包括存储器和处理器;
22、所述存储器,用于存储计算机程序;
23、所述处理器,用于执行所述的计算机程序并在执行所述的计算机程序时实现如本发明任一实施例提供的仿真显示方法的步骤。
24、本发明第四方面在于,还对应地提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器如本发明任一实施例提供的仿真显示方法的步骤。
25、有益技术效果:
26、本发明提出一种处于受限的相对独立状态的仿真解算模块和渲染显示模块协同处理仿真数据的仿真显示方法,仿真解算模块根据其仿真逻辑从渲染处理的视角预处理仿真数据的渲染顺序,并生成了仿真渲染等级、仿真时序信息和仿真事件类型对应的三个关键标签,显著简化了仿真解算模块与渲染显示模块之间的仿真数据及其渲染信息的传递,渲染显示模块能够根据三个标签快速精准地从多维度确定紧密贴合仿真数据特性的渲染显示策略。通过模块间的协作处理大幅度降低渲染显示模块的数据处理难度,从而在优化仿真显示系统的处理效率的同时,确保仿真显示的准确性。
27、具体地,模块化设计实现仿真解算和渲染显示的解耦,仿真解算模块在运算得到仿真数据之后,根据其运算逻辑快速精准地根据仿真事件类型之间的依赖关系预先标记子仿真数据的渲染等级,并据此为子仿真数据设置渲染等级标签,再对应设置事件类型标签和仿真时间标签,三个标签随子仿真数据一并传输至渲染显示模块,简化了两模块间的数据同步和通信流程,渲染显示模块通过渲染等级标签和仿真时间标签即可快速确定仿真数据的渲染顺序,再根据事件类型标签对某一时刻同一种类型的仿真数据进行统一渲染处理,无需再考虑子仿真数据之间复杂的依赖关系,全方位地简化了渲染处理流程,提升了渲染效率。此外,渲染等级列表除了能够降低渲染显示模块的数据处理难度,还可以有效平滑峰值流量,适应高并发的大量仿真数据渲染场景。
28、另一方面,在事件类型子列表中可以进行高可靠性的仿真数据预处理,事件类型标签为同类仿真数据的加速融合处理提供了可行性支持,能够减少待渲染显示的仿真数据堆积,降低渲染显示模块的渲染负担,提高渲染显示的效率,同时,降低仿真数据合并处理的误差、渲染显示的卡顿和跳帧,避免了渲染数据逻辑紊乱。
29、进一步的,通过渲染显示模块与仿真解算模块之间的关联反馈机制,优化仿真显示系统的运行策略、资源配置,使两个松耦合模块处于受限的相对独立状态,在确保仿真显示的准确性的同时,实现异步处理中仿真解算模块和渲染显示模块之间的高效协同,提高了仿真显示系统的效率、性能。
30、其一,根据数据传输频率反映仿真运算速率,适应性地调整读取间隔,进而调整渲染显示速率,实现松耦合仿真解算模块和渲染显示模块之间的高效协同,提高了仿真显示系统的效率、性能。
31、其二,根据期望读取间隔优化仿真解算模块和渲染显示模块的工作策略,在两个模块工作效率不适配时,适应性地调整仿真速度。例如,在高并发地出现大量仿真数据时,期望读取间隔超出渲染显示模块的预设渲染速率(如最大渲染速率)对应的读取间隔,启用渲染显示模块的加速渲染策略,以确保渲染的实时性;又例如,当期望读取间隔过大或过小时,对应调整仿真运算的运行速率,以根据系统的处理能力来平衡负载,自适应优化两个模块的系统资源配置,避免因数据量过大而导致的系统过载,有效提高了仿真显示系统的工作效率和可靠性。