一种渲染异常退出继续渲染的方法与流程

文档序号:31887989发布日期:2022-10-22 00:48阅读:51来源:国知局
一种渲染异常退出继续渲染的方法与流程

1.本发明涉及云渲染领域,尤其涉及一种渲染异常退出继续渲染的方法。


背景技术:

2.区域拆分渲染可以把一张完整的图拆分为多个小块,分不同的电脑进行渲染。
3.目前三维软件在渲染过程中,中断之后只能重新渲染,即便是拆分多个部分,负责拆分后的区域图的渲染的渲染节点机出现异常,导致渲染中断时,即使区域图中有一部分已完成渲染,渲染节点机在重启后,仍然无法从中断的地方开始渲染,而是需要进行整个区域图的重新渲染,导致浪费大量的渲染时间和计算资源,降低渲染效率。
4.因此,现有技术存在缺陷,需要改进。


技术实现要素:

5.本发明的目的是克服现有技术的不足,提供一种渲染异常退出继续渲染的方法,解决现有技术中,渲染中断后,继续渲染时无法从渲染中断的地方开始渲染,导致渲染效率低,渲染资源的浪费的问题。
6.本发明的技术方案如下:一种渲染异常退出继续渲染的方法,包括以下步骤:
7.s1:渲染节点机进行渲染的同时开启图像获取线程,所述渲染节点机进行区域图的渲染操作;所述区域图包括若干个区域块。
8.s2:图像获取线程进行渲染节点机渲染过程的实时图像的实时解析,获取实时渲染图,并同步实时更新alpha黑白图或保存已完成渲染的区域块的坐标信息。
9.s3:当渲染节点机因渲染异常退出后,渲染节点机重启并进行重新渲染时,加载渲染图信息,渲染节点机调用其上的三维渲染软件根据所述渲染图信息解析出渲染数据信息。
10.所述加载渲染图信息包括:步骤s2中获取的全部的实时渲染图、alpha黑白图或保存的已完成渲染的区域块的坐标信息;所述渲染数据信息包括:已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息。
11.s4:所述三维渲染软件根据所述渲染数据信息计算出区域图中待渲染的区域块,并对待渲染的区域块进行渲染操作,直到完成所有的待渲染区域块的渲染。
12.优选地,所述步骤s2为:图像获取线程进行渲染节点机渲染过程的实时图像的实时解析,获取实时渲染图,并同步实时更新alpha黑白图或保存已完成渲染的区域块的坐标信息,并将所获取的实时渲染图、实时更新的alpha黑白图、已完成渲染的区域块的坐标信息保存至渲染节点机的本地磁盘中。
13.优选地,在步骤s3中,渲染节点机重启并进行重新渲染时,通过openbitmap方法或load image方法从渲染节点机的本地磁盘中加载渲染图信息。
14.优选地,所述步骤s3中,渲染节点机的渲染异常包括:渲染节点机断电、渲染节点机卡机或无响应、用户取消渲染。
15.优选地,在步骤s3中渲染节点机重启并进行重新渲染时,重复步骤s1~s2。
16.采用上述方案,本发明提供一种渲染异常退出继续渲染的方法,具有以下有益效果:在渲染节点机因渲染异常退出渲染时,其重启后,可根据渲染图信息获取已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息,进一步根据已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息计算出区域图中待渲染的区域块,重新渲染时,直接渲染待渲染的区域块,无需进行整个区域图内的区域块的重新渲染,有效提高渲染效率,节省渲染计算资源及成本。
附图说明
17.图1为本发明的流程框图。
具体实施方式
18.以下结合附图和具体实施例,对本发明进行详细说明。
19.请参照图1,本发明提供一种渲染异常退出继续渲染的方法,包括以下步骤:
20.s1:渲染节点机进行渲染的同时开启图像获取线程,所述渲染节点机进行区域图的渲染操作;所述区域图包括若干个区域块,在渲染前,将一个完整的图拆分成若干个区域图,并将若干个区域图对应分配给若干个渲染节点机,渲染节点机在进行渲染时,可进一步将区域图拆分成若干个区域块,渲染时,依次进行若干个区域块的渲染。
21.s2:图像获取线程进行渲染节点机渲染过程的实时图像的实时解析,获取实时渲染图,并同步实时更新alpha黑白图或保存已完成渲染的区域块的坐标信息。在本实施例中,图像获取线程同步实时更新alpha黑白图即可,无需获取并保存已完成渲染的区域块的坐标信息;渲染节点机在渲染区域块时,其渲染了一部分,图像获取线程会实时获取到对应的实时图像,而且会更新alpha黑白图;通过alpha黑白图可记录所有已渲染的区域块的相关渲染信息(坐标等)。
22.s3:当渲染节点机因渲染异常退出后,渲染节点机重启并进行重新渲染时,加载渲染图信息,渲染节点机调用其上的三维渲染软件根据所述渲染图信息解析出渲染数据信息。三维渲染软件包括:3dsmax、maya、sketchup等,具体可根据实际渲染需求进行选择。渲染节点机的渲染异常情况主要包括:渲染节点机断电、渲染节点机卡机或无响应、用户取消渲染。
23.具体地,在本实施例中,所述加载渲染图信息包括:步骤s2中获取的全部的实时渲染图、alpha黑白图或保存的已完成渲染的区域块的坐标信息;所述渲染数据信息包括:已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息。已完成渲染的区域块的坐标信息为已完成渲染的区域块的位置的坐标的x、y值,待渲染的区域块的坐标信息为还未完成渲染的区域块的坐标的x、y值,因此可知道目前已完成哪些区域块的渲染,未完成哪些区域块的渲染。此外,在步骤s3中渲染节点机重启并进行重新渲染时,重复步骤s1~s2,保证图像获取线程可实时获取对应的实时渲染图,并同步实时更新alpha黑白图或保存已完成渲染的区域块的坐标信息,防止下一次的渲染异常情况发生时,对新的已完成区域块的渲染相关数据的记录。
24.s4:所述三维渲染软件根据所述渲染数据信息计算出区域图中待渲染的区域块,
并对待渲染的区域块进行渲染操作,直到完成所有的待渲染区域块的渲染。三维渲染软件在计算出区域图中待渲染的区域块后,可能存在多个待渲染的区域块,三维渲染软件在接收到这些待渲染的区域块后,会自动进行这些待渲染的区域块的渲染,直到所有的渲染过程结束;当然,若步骤s4的渲染过程中若存在渲染异常而导致渲染中断,异常退出,则会重复步骤s3~s4,直到完成所有的待渲染区域块的渲染。
25.本发明中的一种渲染异常退出继续渲染的方法,通过在每一台渲染节点机上配置图像获取线程,在渲染节点机开始区域图的渲染操作时,同步开启该图像获取线程,渲染节点机渲染区域图内的区域块时,该图像获取线程会实时进行渲染节点机渲染区域图时产生的实时图像的实时解析,即每完成一步渲染,图像获取线程均会实时获取到对应的实时渲染图,并同步实时更新对应的alpha黑白图或保存已完成渲染的区域块的坐标信息,获得这些信息后,即得到了渲染图信息,而当渲染节点机因渲染异常退出后,重启渲染节点机后,为了避免进行区域图的整体的重新渲染,此时通过加载渲染图信息,通过渲染图信息内的所有的实时渲染图,以及alpha黑白图或保存的已完成渲染的区域块的坐标信息,解析出渲染数据信息,因而可得到已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息,而根据这些信息,则可以进一步计算出区域图中待渲染的区域块,最终调用三维渲染软件进行待渲染的区域块的渲染,完成所有的待渲染区域块的渲染;因此,本发明在渲染节点机因为渲染异常中断渲染时,重启进行重新渲染时,可直接进行待渲染的区域块的渲染,无需进行整个区域图内的区域块的重新渲染,有效提高渲染效率,节省渲染计算资源及成本。
26.具体地,在本实施例中,所述步骤s2为:图像获取线程进行渲染节点机渲染过程的实时图像的实时解析,获取实时渲染图,并同步实时更新alpha黑白图或保存已完成渲染的区域块的坐标信息,并将所获取的实时渲染图、实时更新的alpha黑白图、已完成渲染的区域块的坐标信息保存至渲染节点机的本地磁盘中。alpha黑白图是实时更新的,其更新后的数据也会实时存储至本地磁盘中;实时渲染图一直在获取,因此有多个实时渲染图,一般会根据时间顺序进行记录。
27.具体地,在本实施例中,在步骤s3中,渲染节点机重启并进行重新渲染时,通过openbitmap方法或load image方法从渲染节点机的本地磁盘中加载渲染图信息。
28.综上所述,本发明提供一种渲染异常退出继续渲染的方法,具有以下有益效果:在渲染节点机因渲染异常退出渲染时,其重启后,可根据渲染图信息获取已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息,进一步根据已完成渲染的区域块的坐标信息、待渲染的区域块的坐标信息计算出区域图中待渲染的区域块,重新渲染时,直接渲染待渲染的区域块,无需进行整个区域图内的区域块的重新渲染,有效提高渲染效率,节省渲染计算资源及成本。
29.以上仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1