一种图像渲染方法、装置、电子设备及存储介质制造方法及图纸

技术编号:41847390 阅读:18 留言:0更新日期:2024-06-27 18:25
本公开提供了一种图像渲染方法、装置、电子设备及存储介质,包括:从渲染终端中的多个渲染线程中确定第一渲染线程,并在第一渲染线程中生成共享纹理使用请求;基于第一渲染线程将共享纹理使用请求发送至第二渲染线程关联的第二共享窗口;从第二共享窗口的句柄列表中获取与共享纹理使用请求相匹配的目标句柄,并将目标句柄传输至第一渲染线程;根据目标句柄在第一共享窗口中切换相应的本地窗口,并在本地窗口内将第一渲染线程的渲染操作作用于目标句柄对应的共享纹理,得到目标渲染结果。本公开通过创建渲染线程对应的共享窗口,同时在共享窗口中设置句柄列表与共享纹理列表的对应关系,能够在不同渲染线程之间传递共享纹理,提高图像的渲染效率。

【技术实现步骤摘要】

本公开涉及图像渲染领域,具体涉及一种图像渲染方法、装置、电子设备及存储介质


技术介绍

1、在计算机图形学领域中,之所以存在纹理共享这类技术,是因为每份egl环境是线程隔离的;而纹理共享技术,则保证了在不同egl渲染线程之间,访问纹理对象的可行性。纹理共享技术能够确保不同的egl渲染线程之间可以访问共享的纹理对象,从而实现在多个线程之间共享纹理的可行性。

2、目前业界普遍采用的纹理共享方案是通过共享eglcontext对象(egl上下文对象)的方式实现的。具体来说,子egl渲染线程的初始化过程很大程度上依赖于父egl渲染线程的eglcontext对象。因此,按照流程,必须先创建父egl渲染线程,然后才能创建子egl渲染线程。同时这种方案的纹理共享是单向的,也就是说子egl渲染线程可以访问父egl渲染线程创建的纹理对象,但反过来,则无法进行纹理共享。这是由于子线程初始化时依赖父线程的eglcontext,而父线程并没有意识到子线程的存在,所以无法直接访问子线程创建的纹理对象,最终导致无法实现双向纹理共享。


>技术实现思路本文档来自技高网...

【技术保护点】

1.一种图像渲染方法,其特征在于,所述方法应用于渲染终端,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在创建第一渲染线程对应的第一句柄之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述基于所述共享窗口内利用所述原始共享纹理构建句柄列表以及共享纹理列表,包括:

4.根据权利要求1所述的方法,其特征在于,所述从所述第二共享窗口的句柄列表中获取与所述共享纹理使用请求相匹配的目标句柄,并将目标句柄传输至所述第一渲染线程,包括:

5.根据权利要求1所述的方法,其特征在于,所述根据所述目标句柄在第一共享窗口中切换相应的...

【技术特征摘要】

1.一种图像渲染方法,其特征在于,所述方法应用于渲染终端,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在创建第一渲染线程对应的第一句柄之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述基于所述共享窗口内利用所述原始共享纹理构建句柄列表以及共享纹理列表,包括:

4.根据权利要求1所述的方法,其特征在于,所述从所述第二共享窗口的句柄列表中获取与所述共享纹理使用请求相匹配的目标句柄,并将目标句柄传输至所述第一渲染线程,包括:

5.根据权利要求1所述的方法,其特征在于,所述根据所述目标句柄在第一共享窗口中切换相应的本地窗口,并在所述本地窗口内...

【专利技术属性】
技术研发人员:张杭孙金波
申请(专利权)人:北京字跳网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1