一种基于纹理转换跟踪的OpenGL层次化实现验证方法
摘要文本
本发明公开了一种基于纹理转换跟踪的OpenGL层次化实现验证方法,首先判断待测GPU的图形驱动是否支持Vulkan库,如果不支持则说明直接实现了OpenGL接口,否则构建接口实现方式测试程序,并在OpenGL和Vulkan间纹理转换相关的关键API内增加监测代码跟踪纹理转换,如果存在转换则说明基于Vulkan接口实现的OpenGL接口,否则说明直接实现了OpenGL接口,由此能够以软件方式准确判断GPU图形驱动对OpenGL接口的实现方式。
申请人信息
- 申请人:北京麟卓信息科技有限公司
- 申请人地址:100085 北京市海淀区西三旗昌临801号27号3层310、312
- 发明人: 北京麟卓信息科技有限公司
专利详细信息
| 项目 | 内容 |
|---|---|
| 专利名称 | 一种基于纹理转换跟踪的OpenGL层次化实现验证方法 |
| 专利类型 | 发明申请 |
| 申请号 | CN202410179337.7 |
| 申请日 | 2024/2/18 |
| 公告号 | CN117724987A |
| 公开日 | 2024/3/19 |
| IPC主分类号 | G06F11/36 |
| 权利人 | 北京麟卓信息科技有限公司 |
| 发明人 | 温研 |
| 地址 | 北京市海淀区西三旗昌临801号27号3层310、312 |
专利主权项内容
1.一种基于纹理转换跟踪的OpenGL层次化实现验证方法,其特征在于,包括以下步骤:步骤1、检测待测GPU的图形驱动是否支持Vulkan接口,如果支持则执行步骤2;否则判定待测GPU为直接实现了OpenGL接口,结束本流程;步骤2、构建接口实现方式测试程序,在接口实现方式测试程序中生成目标位图,采用OpenGL接口创建纹理对象,基于目标位图创建纹理,设定纹理的格式为OpenGL的内部格式,为纹理分配数据缓冲区记为OpenGL纹理缓冲区,再对纹理执行纹理渲染操作;步骤3、确定待测GPU的图形驱动中与OpenGL和Vulkan间纹理转换相关的关键API,在关键API中增加监测代码,由监测代码获取Vulkan接口分配的存储空间及接口实现方式测试程序分配的存储空间,若两个存储空间中的数据相同则输出验证过程结束,否则输出执行后续流程;步骤4、启动待测GPU所在系统,再启动接口实现方式测试程序,若系统输出验证过程结束则判定待测GPU的图形驱动基于Vulkan接口实现的OpenGL接口,并终止执行接口实现方式测试程序,完成验证结束本流程;若系统输出执行后续流程,则待接口实现方式测试程序执行完毕,判定待测GPU的图形驱动为直接实现了OpenGL接口,完成验证结束本流程。