[发明专利]一种适用于多图形接口的跨平台的仿真系统有效
申请号: | 202310240069.0 | 申请日: | 2023-03-14 |
公开(公告)号: | CN115983047B | 公开(公告)日: | 2023-05-26 |
发明(设计)人: | 马惠敏;姜忠原;梅若恒 | 申请(专利权)人: | 北京科技大学 |
主分类号: | G06F30/20 | 分类号: | G06F30/20;G06T15/00 |
代理公司: | 北京市广友专利事务所有限责任公司 11237 | 代理人: | 张仲波 |
地址: | 100083*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 图形 接口 平台 仿真 系统 | ||
本发明涉及计算机仿真技术领域,特别是指一种适用于多图形接口的跨平台的仿真系统,所述仿真系统包括系统核心模块、系统逻辑模块和系统渲染模块;所述系统核心模块,用于为所述系统逻辑模块和所述系统渲染模块提供系统功能,所述系统功能至少包括数学计算、提供基础数据结构、内存管理、线程调度及任务分发;所述系统逻辑模块,用于自动导入数据并加载,执行所述仿真系统的行为逻辑,并生成场景资源信息;所述系统渲染模块,用于基于所述场景资源信息进行渲染。采用本发明,可以建立一个引擎层从而为复杂仿真应用开发提供更为强大的工具支持。
技术领域
本发明涉及计算机仿真技术领域,特别是指一种适用于多图形接口的跨平台的仿真系统。
背景技术
随着计算机技技术的飞速发展,计算机仿真被大量运用到各类领域,尤其是在通过仿真系统来模拟真实环境,要进行实时的三维模拟则对仿真环境提出了更高的要求。
目前图像引擎发展日渐蓬勃,如何合理利用计算机硬件资源,实现一种高效的、可扩展性强的仿真系统成为了目前较为急迫的需求。因此,建立一个引擎层从而为复杂仿真应用开发提供更为强大的工具支持,帮助应用层更快为快速的开发以及充分利用GPU和CPU的资源,提高系统的运行效率,具有及其重要的实际应用需求。
发明内容
本发明实施例提供了一种适用于多图形接口的跨平台的仿真系统。所述技术方案如下:
一方面,提供了一种适用于多图形接口的跨平台的仿真系统,所述仿真系统包括系统核心模块、系统逻辑模块和系统渲染模块;
所述系统核心模块,用于为所述系统逻辑模块和所述系统渲染模块提供系统功能,所述系统功能至少包括数学计算、提供基础数据结构、内存管理、线程调度及任务分发;
所述系统逻辑模块,用于自动导入数据并加载,执行所述仿真系统的行为逻辑,并生成场景资源信息;
所述系统渲染模块,用于基于所述场景资源信息进行渲染。
可选地,所述系统核心模块包括内存管理模块、多线程模块和任务系统模块;
所述内存管理模块,用于采用RAII和内存池技术进行内存分配和利用,其中包括:基于自建类对指针进行封装,并完善所述指针的内部逻辑结构,以实现当所述指针指向的数据离开作用域时自动释放所述指针;
所述多线程模块,用于并行执行逻辑线程和渲染线程,所述逻辑线程先于所述渲染线程第一预设数目帧,所述渲染线程先于GPU第二预设数目帧;
所述任务系统模块,用于基于有向无环图进行任务分发。
可选地,所述内存管理模块,还用于:
初始化内存池,所述内存池包括链表和可用地址数组,所述链表包括至少一个Chunk页表,所述可用地址数组包括多个可用地址;
每当从所述内存池申请第一空间时,从所述可用地址数组的末尾获取可用地址,作为所述第一空间的可用地址;
每当向所述内存池归还第二空间时,将所述第二空间的可用地址添加到所述可用地址数组的末尾;
当所述可用地址数组不存在可用地址时申请新的Chunk页表,并将所述新的Chunk页表对应的多个可用地址添加到所述可用地址数组。
可选地,所述多线程模块,用于:
在所述逻辑线程中采集指令帧,将所述指令帧中起始标识与结束标识之间的指令作为渲染指令,提交所述渲染指令;
在所述渲染线程中录制所述渲染指令作为录制指令,提交所述录制指令,其中,通过GPU Fence确定GPU落后帧数,若所述GPU落后帧数大于设定值,则所述渲染线程进入等待状态,直至所述GPU落后帧数达到设定值时恢复执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京科技大学,未经北京科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310240069.0/2.html,转载请声明来源钻瓜专利网。