CN118045347A - 一种协同渲染方法、系统、装置、电子设备以及存储介质 - Google Patents
一种协同渲染方法、系统、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN118045347A CN118045347A CN202211457393.XA CN202211457393A CN118045347A CN 118045347 A CN118045347 A CN 118045347A CN 202211457393 A CN202211457393 A CN 202211457393A CN 118045347 A CN118045347 A CN 118045347A
- Authority
- CN
- China
- Prior art keywords
- rendering
- resolution
- map
- textured
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 1115
- 238000000034 method Methods 0.000 title claims abstract description 197
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000005070 sampling Methods 0.000 claims abstract description 93
- 238000010586 diagram Methods 0.000 claims abstract description 71
- 230000000007 visual effect Effects 0.000 claims description 131
- 230000015654 memory Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 15
- 238000000605 extraction Methods 0.000 description 57
- 230000005540 biological transmission Effects 0.000 description 53
- 230000008569 process Effects 0.000 description 46
- 238000004422 calculation algorithm Methods 0.000 description 27
- 238000013135 deep learning Methods 0.000 description 18
- 230000004927 fusion Effects 0.000 description 18
- 230000002146 bilateral effect Effects 0.000 description 14
- 230000000694 effects Effects 0.000 description 14
- 238000001914 filtration Methods 0.000 description 14
- 238000013507 mapping Methods 0.000 description 14
- 239000000463 material Substances 0.000 description 9
- 238000012549 training Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000003062 neural network model Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000002156 mixing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请用于提供一种协同渲染方法、系统、装置、电子设备以及存储介质。该方法包括:云端服务器采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;云端服务器利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图;云端服务器将所述第一非纹理化渲染图发送至终端设备;终端设备在接收到所述第一非纹理化渲染图后,基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图;所述第二辅助渲染信息由所述终端设备采用第二分辨率对所述当前帧画面进行渲染得到。本申请能够提升端云渲染质量和渲染效率。
Description
技术领域
本申请涉及画面渲染技术领域,尤其涉及一种协同渲染方法、系统、装置、电子设备以及存储介质。
背景技术
云游戏(Cloud Gaming)是以云计算为基础的游戏方式。在云游戏的运行模式下,游戏在云端服务器运行,云端服务器接收用户终端设备的操作信息和设备信息,在云端服务器完成游戏画面的渲染,然后将渲染得到的游戏画面进行编码压缩,通过网络传输到用户终端设备。用户终端设备不需要任何的高端处理器和显卡,仅需要对传输过来的游戏画面进行解码显示功能即可实现游戏过程。
云游戏的渲染流程区别于传统的单机游戏,不再依赖本地硬件,例如中央处理器(Central Processing Unit,CPU)和图形处理器(Graphics Processing Unit,GPU)等。同时云游戏无需本地安装,游戏玩家可以实现开启即玩,游戏开发者因此也不需要太过担心用户侧硬件性能,从而能够推动更高质量游戏的制作,用户能够体验更多跨平台高质量的游戏产品。
目前,云游戏仍然存在较多的不足之处,例如现有的云游戏普遍存在时延较高,带宽需求大的问题,在网络环境一般的情况下,游戏画面质量较差,用户体验较差。同时由于高分辨率高质量的游戏画面对带宽和渲染的要求更高,因此现有的云游戏很难支持高分辨率高质量状态下的游戏游玩。现有的云游戏也无法保证离线状态下游戏的游玩。
发明内容
本申请的一些实施方式提供了一种协同渲染方法、系统、装置、电子设备以及存储介质,以下从多个方面介绍本申请,以下多个方面的实施方式和有益效果可互相参考。
第一方面,本申请实施方式提供了一种协同渲染方法,应用于协同渲染系统,所述系统包括终端设备和云端服务器,所述方法包括:
所述云端服务器采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;
所述云端服务器利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除所述第一渲染图中的高频信息后得到的渲染图;
所述云端服务器将所述第一非纹理化渲染图发送至所述终端设备;
所述终端设备在接收到所述第一非纹理化渲染图后,基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图;
其中,所述第二辅助渲染信息由所述终端设备采用第二分辨率对所述当前帧画面进行渲染得到,并且所述第二分辨率高于所述第一分辨率。
根据本申请实施方式,充分利用端侧渲染资源进行端云协同渲染,即云侧生成低分辨率高质量的渲染图发送至端侧,端侧生成对应低成本高分辨率的辅助渲染信息,并借助生成的辅助渲染信息,对云侧传输的低分辨率渲染图进行高质量的超采样,得到最终的渲染图,能够提高端侧计算资源利用率,降低云侧计算压力。并且由于辅助渲染信息通过端侧直接生成,没有进行传输压缩,因此具有无损的特点,在超采样过程中可以借助该部分信息重构得到高分辨率高质量的渲染结果。
同时,云侧通过降低渲染分辨率能够提升渲染质量和渲染效率,通过对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,能够提升编解码以及网络传输的效率,保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,同时显著降低带宽需求,减轻带宽压力,实现更低的时延。
在一些实施方式中,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
所述终端设备对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
所述终端设备将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
根据本申请实施方式,端侧通过对低分辨率的非纹理化渲染图进行上采样,并将上采样得到的结果与无损高分辨率的辅助渲染信息相融合,得到高分辨率的渲染图,能够在超采样过程中有效减少高频信息的损失,提升渲染质量。
在一些实施方式中,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
所述终端设备获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
所述终端设备基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
在一些实施方式中,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
所述终端设备获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
所述终端设备基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
其中,所述终端设备将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图,包括:
所述终端设备将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
根据本申请实施方式,端侧在云侧传输的低分辨率渲染图的基础上,通过借助时域信息,利用高分辨率历史帧信息和辅助渲染信息等,能够实现高质量快速的时空协同超采样,以得到最终高分辨率的渲染结果,能够进一步提高端侧渲染画面质量,实现整体渲染效率的提升。
在一些实施方式中,所述云端服务器将所述第一非纹理化渲染图发送至所述终端设备,包括:
所述云端服务器对所述第一非纹理化渲染图进行编码处理,得到编码后的第一非纹理化渲染图;
所述云端服务器将编码后的第一非纹理化渲染图发送至所述终端设备;
相应地,所述终端设备在接收到所述编码后的第一非纹理化渲染图后,对所述编码后的第一非纹理化渲染图进行解码处理,得到所述第一非纹理化渲染图。
根据本申请实施方式,云端服务器通过对低分辨率的非纹理化渲染图进行编码传输,能够减少网络传输量,提高传输速度,从而进一步减轻带宽压力,实现更低的时延。
在一些实施方式中,所述方法进一步包括:
所述云端服务器根据所述第一渲染图、所述第一辅助渲染信息和第一历史渲染图生成视觉误差估计图;其中,所述第一历史渲染图为所述当前帧画面的前一帧画面对应的第一分辨率的渲染图;
所述云端服务器将所述视觉误差估计图与所述第一非纹理化渲染图一起发送至所述终端设备;
所述终端设备在接收到所述第一非纹理化渲染图和所述视觉误差估计图后,基于所述第一非纹理化渲染图、所述视觉误差估计图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
在一些实施方式中,所述终端设备基于所述第一非纹理化渲染图、所述视觉误差估计图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
所述终端设备对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
所述终端设备将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图;
所述终端设备基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
在一些实施方式中,所述终端设备基于所述第一非纹理化渲染图、所述视觉误差估计图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
所述终端设备对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
所述终端设备基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
所述终端设备将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
根据本申请实施方式,云侧结合渲染得到的低分辨率的渲染图和辅助渲染信息,以及低分辨率的历史渲染图,通过视觉误差指标生成对应的视觉误差估计图,以辅助端侧的高质量超采样,使得端侧能够在渲染图中误差分布更加明显的地方给予更多的关注,从而能够提升该部分的重构效果,从而提高最终超采样结果质量。
相应地,端侧在云侧传输的低分辨率渲染图基础上,利用视觉误差估计图和辅助渲染信息等,基于超采样来获得最终高分辨率的渲染结果,能够进一步提高超采样效果,从而进一步提高端侧渲染画面质量,以及实现整体渲染效率的提升。
在一些实施方式中,所述方法进一步包括:
所述终端设备确定当前的网络状态是否稳定;
在确定当前的网络状态稳定的情况下,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
根据本申请实施方式,终端设备能够根据端侧网络的实时状态,适应性的切换渲染方案,在网络状态满足要求的情况下,才使用本申请实施方式提供的端云协同渲染方法,能够保证端侧渲染结果的稳定性。
第二方面,本申请实施方式提供了一种渲染方法,包括:
采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;
利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除所述第一渲染图中的高频信息后得到的渲染图;
输出所述第一非纹理化渲染图。
根据本申请实施方式,通过对渲染得到的渲染图进行分解,得到非材质图层进行传输,能够减少传输数据量,显著降低带宽需求,减轻带宽压力,提升网络传输的效率,同时能够保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,以为后续处理带来更好的渲染效果。
在一些实施方式中,所述输出所述第一非纹理化渲染图,包括:
对所述第一非纹理化渲染图进行编码处理,得到编码后的第一非纹理化渲染图;
输出编码后的第一非纹理化渲染图。
在一些实施方式中,所述方法进一步包括:
根据所述第一渲染图、所述第一辅助渲染信息和第一历史渲染图生成视觉误差估计图;其中,所述第一历史渲染图为所述当前帧画面的前一帧画面对应的第一分辨率的渲染图;
将所述视觉误差估计图与所述第一非纹理化渲染图一起输出。
第二方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
第三方面,本申请实施方式提供了一种渲染方法,包括:
获取第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除第一分辨率的第一渲染图中的高频信息后得到的渲染图;
采用第二分辨率对待渲染的当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,所述第二分辨率高于所述第一分辨率;
基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
根据本申请实施方式,通过借助生成的低成本高分辨率的辅助渲染信息,对低分辨率的非纹理化渲染图进行高质量的超采样,得到最终的高质量的渲染图,能够降低渲染复杂度以及自身计算压力,提升渲染效率。
在一些实施方式中,所述基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
在一些实施方式中,所述基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
在一些实施方式中,所述基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
其中,所述将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图,包括:
将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
在一些实施方式中,所述采用第二分辨率对所述当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,包括:
确定当前的网络状态是否稳定;
在确定当前的网络状态稳定的情况下,采用第二分辨率对所述当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息。
在一些实施方式中,所述方法进一步包括:
获取视觉误差估计图,所述视觉误差估计图根据所述第一渲染图、第一辅助渲染信息和第一历史渲染图生成;其中,所述第一辅助渲染信息通过采用第一分辨率对所述当前帧画面进行渲染得到,所述第一历史渲染图为所述当前帧画面的前一帧画面对应的第一分辨率的渲染图;
基于所述第一非纹理化渲染图、所述视觉误差估计图以及所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
在一些实施方式中,所述基于所述第一非纹理化渲染图、所述视觉误差估计图以及所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图;
基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
在一些实施方式中,所述基于所述第一非纹理化渲染图、所述视觉误差估计图以及所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
第三方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
第四方面,本申请实施方式提供了一种协同渲染系统,包括终端设备和云端服务器,所述云端服务器用于执行本申请第一方面任一实施方式提供的方法中云端服务器执行的各个步骤,所述终端设备用于执行本申请第一方面任一实施方式提供的方法中终端设备执行的各个步骤。第四方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
第五方面,本申请实施方式提供了一种渲染装置,包括:
第一渲染模块,用于采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;
第一生成模块,用于利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除所述第一渲染图中的高频信息后得到的渲染图;
输出模块,用于输出所述第一非纹理化渲染图。
第五方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
第六方面,本申请实施方式提供了一种渲染装置,包括:
获取模块,用于获取第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除第一分辨率的第一渲染图中的高频信息后得到的渲染图;
第二渲染模块,用于采用第二分辨率对待渲染的当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,所述第二分辨率高于所述第一分辨率;
第二生成模块,用于基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
第六方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
第七方面,本申请实施方式提供了一种电子设备,包括:存储器,用于存储由电子设备的一个或多个处理器执行的指令;处理器,当处理器执行存储器中的指令时,可使得电子设备执行本申请第一方面任一实施方式提供的方法中云端服务器执行的各个步骤或者终端设备执行的各个步骤。第七方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
第八方面,本申请实施方式提供了一种计算机可读存储介质,计算机可读存储介质上存储有指令,该指令在计算机上执行时使得计算机执行本申请第一方面任一实施方式提供的方法中云端服务器执行的各个步骤或者终端设备执行的各个步骤。第八方面能达到的有益效果可参考本申请第一方面任一实施方式的有益效果,此处不再赘述。
附图说明
图1示出了本申请一个实施例提供的云游戏场景示意图;
图2a示出了根据一些实施例提供的系统结构示意图;
图2b示出了根据一些实施例提供的云游戏渲染方法的流程图;
图2c示出了根据另一些实施例提供的云游戏渲染方法的流程图;
图2d示出了根据一些实施例提供的视频编码和解码方法的流程图;
图2e示出了根据另一些实施例提供的协同渲染方法的流程图;
图2f示出了根据另一些实施例提供的协同渲染模式的示意图;
图3a示出了本申请一个实施例提供的电子设备的结构示意图;
图3b示出了本申请一个实施例提供的电子设备的软件结构框图;
图4示出了本申请一个实施例提供的一种协同渲染系统的结构示意图;
图5示出了本申请一个实施例提供的一种渲染方法的流程图;
图6示出了本申请一个实施例提供的视觉误差估计图生成过程的示意图;
图7示出了本申请另一个实施例提供的一种渲染方法的流程图;
图8a示出了本申请一个实施例提供的超采样过程的示意图;
图8b示出了本申请另一个实施例提供的超采样过程的示意图;
图8c示出了本申请另一个实施例提供的超采样过程的示意图;
图8d示出了本申请另一个实施例提供的超采样过程的示意图;
图9示出了本申请另一个实施例提供的一种渲染方法的流程图;
图10a示出了本申请另一个实施例提供的超采样过程的示意图;
图10b示出了本申请另一个实施例提供的超采样过程的示意图;
图10c示出了本申请另一个实施例提供的超采样过程的示意图;
图10d示出了本申请另一个实施例提供的超采样过程的示意图;
图11示出了本申请一个实施例提供的一种协同渲染方法的流程图;
图12示出了本申请一个实施例提供的协同渲染方法的框架图;
图13示出了本申请另一个实施例提供的一种协同渲染方法的流程图;
图14示出了本申请另一个实施例提供的协同渲染方法的框架图;
图15示出了本申请一个实施例提供的片上系统(System on Chip,SOC)的结构示意图。
具体实施方式
本申请的说明性实施例包括但不限于一种协同渲染方法、系统、装置、电子设备以及存储介质。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。为了更清楚理解本申请实施例中的方案,下面首先对本申请涉及的术语进行简要说明:
几何缓冲(Geometric Buffer,Gbuffer):存储了光栅化过程中获得的各像素对应的几何信息,包括法向量(Normal)、返照率(Albedo)、位置(Position)、漫反射颜色(Diffuse Color)以及其他有用材质参数。
返照率(Albedo):指从表面反射辐射与入射辐射的比率。
本申请实施例提供的协同渲染方法可以应用于云服务场景中,云服务是以云计算为基础的服务方式,近年来随着5G等相关技术的发展,云服务市场也进入到快速扩增的阶段,涌现出大量云服务平台,如下表1所示,可见云服务的市场规模与前景巨大。
表1
示例性地,图1示出了本申请一个实施例提供的云游戏场景示意图。如图1所示,该场景可以包括终端设备110和云端服务器120,终端设备110和云端服务器120之间通过网络连接。云游戏的渲染过程区别于传统的单机游戏,不再依赖本地硬件(CPU和GPU),同时云游戏无需本地安装,玩家可以实现开启即玩。在云游戏的运行模式下,游戏在云端服务器120运行,云端服务器120接收终端设备110的操作信息和设备信息,在云端服务器120完成游戏画面的渲染,然后将渲染得到的游戏画面进行编码压缩,通过网络传输到终端设备110。终端设备110不需要任何的高端处理器和显卡,仅需要对传输过来的游戏画面进行解码显示功能即可实现游戏过程。
需要说明的是,图1所示场景中终端设备110和云端服务器120的数量只是一种示例,本申请实施例并不限定终端设备110和云端服务器120的数量。此外,该场景也可以包括其他的参与者,本申请实施例对此并不做限定。
图2a示出了根据一些实施例提供的系统结构示意图。如图2a所示,该系统可以包括终端设备110和云端服务器120,终端设备110可以包括指令输入模块、视频解码模块和图像显示模块,云端服务器可以包括用户输入模块、状态更新模块、图像渲染模块和编码压缩模块。
其中,指令输入模块可以用于获取用户输入的操作信息,终端设备110可以通过网络将该操作信息和设备信息一起发送至云端服务器120。用户输入模块可以用于获取终端设备110发送的操作信息和设备信息,状态更新模块可以用于对云端服务器120中对应的操作信息和设备信息进行状态更新,图像渲染模块可以用于基于该操作信息和设备信息完成画面的渲染,编码压缩模块可以用于将渲染得到的画面进行编码压缩,云端服务器120可以通过网络将编码压缩后的画面传输至终端设备110。视频解码模块可以用于对云端服务器120传输的画面进行解码,图像显示模块可以用于对解码后的画面进行显示。
图2b示出了根据一些实施例提供的云游戏渲染方法的流程图,该方法可以应用于上述图2a所示的系统中。如图2b所示,该渲染方法可以包括以下步骤:S211,云端服务器接收来自终端设备的游戏启动请求,该游戏启动请求携带终端设备的设备参数;S212,云端服务器启动游戏,并基于该设备参数确定渲染分辨率;S213,云端服务器基于该渲染分辨率对游戏画面进行渲染;S214,云端服务器将渲染得到的游戏画面发送给终端设备。由于高分辨率高质量的游戏画面传输对带宽需求大,在网络环境一般的情况下,可能出现时延较高,游戏画面质量较差等问题,影响用户游戏体验。
图2c示出了根据另一些实施例提供的云游戏渲染方法的流程图,该方法可以应用于上述图2a所示的系统中。如图2c所示,该渲染方法可以包括以下步骤:S221,终端设备接收云端服务器使用低分辨率渲染的游戏画面视频流;S222,终端设备对游戏画面视频流进行解码获得低分辨率的视频画面;S223,终端设备对解码后的视频画面进行上采样,生成超分辨率游戏画面。该方案侧重于借助超分辨技术降低云侧渲染和网络传输压力,该渲染过程完全依赖超分辨算法的效果,并未考虑端侧的辅助渲染信息(Gbuffer信息)和渲染时域信息,不能很好的保证最终高分辨率游戏画面的渲染效果。
图2d示出了根据一些实施例提供的视频编码和解码方法的流程图,该方法通过超分辨算法来降低带宽需求。如图2d所示,该视频编码方法可以包括以下步骤:S231,利用向下取样器和元数据生成器,接收高分辨率画面和从中生成低分辨率画面和元数据,该元数据用于引导低分辨率画面和元数据的后解码后处理;S232,使用至少一个编码器编码低分辨率画面和元数据。相应视频解码方法可以包括以下步骤:S233,使用解码器接收位流和从中解码低分辨率画面和元数据;S234,利用超分辨率后处理器,使用低分辨率画面和元数据重构分别与低分辨率画面相对应的高分辨率画面。
与图2c所示的方法类似,在图2d所示的实施方式中,高分辨率画面的重构过程完全依赖超分辨算法的效果,不能很好的保证最终高分辨率画面的渲染效果。
图2e示出了根据另一些实施例提供的协同渲染方法的流程图,该方法可以应用于上述图2a所示的系统中。如图2e所示,云端服务器可以生成低分辨率的渲染图和高分辨率的深度图、法线图和运动矢量信息,并根据深度图、法线图和运动矢量信息进行非连续性检测生成边缘图像。其中,非连续性检测用于检测运动过程中存在的遮挡关系,该边缘图像为包含渲染图边缘信息的图像。
云端服务器可以分别通过不同的编解码算法进行端云传输,将低分辨率的渲染图通过H.264编码器进行编码并发送至终端设备,将深度图、运动矢量信息以及计算得到的边缘图像通过边缘图像编码器进行编码并发送至终端设备。终端设备解码后可以得到对应的低分辨率的渲染图,以及高分辨率的深度图、运动矢量信息和边缘图像,然后结合历史帧的高分辨率的上采样渲染图、当前帧高分辨率的深度图、运动矢量信息和边缘图像对当前帧低分辨率的渲染图进行时空协同上采样,上采样的结果为高分辨率的渲染图,该高分辨率的渲染图可以用于后续可能的应用,例如3D双目渲染,插帧等。
该方案仍然通过云侧生成辅助渲染信息并发送至端侧,没有考虑通过端侧算力来生成辅助渲染信息,因而并没有充分利用好端侧的渲染计算能力,虽然将云侧的渲染结果进行编解码传输,能够通过降低分辨率来减少带宽需求,但是仍需要传输高分辨率的辅助渲染信息,其传输带宽成本仍然较高。
在另一些实施例提供的协同渲染方法中,提出了使用端侧设备的部分算力生成少量的渲染结果的协同渲染方案,具体实现了两种不同的协同渲染模式:一种协同渲染模式是端侧设备对每一帧图像都进行低质量渲染得到低质量渲染结果,由服务器端生成渲染高质量差异信息并传输到端侧,端侧设备将该渲染高质量差异信息与低质量渲染结果融合生成高质量渲染结果。另一种协同渲染模式如图2f所示,由端侧设备渲染部分关键帧,其余中间帧通过服务器端进行渲染并传输到端侧设备上。
该方案采用减少传输画面数目或仅传输画面差异信息来降低网络传输压力,降低游戏时延,但仍然涉及较多的云端计算处理,对云端算力需求较大,在高分辨率高质量要求下,仍然存在画面帧率低,质量差等问题。
为了解决上述问题,本申请实施例提供了一种协同渲染方法、系统、装置、电子设备以及存储介质,该协同渲染方法可以应用于如图1所示的应用场景,以提高端侧计算资源利用率,降低云侧计算压力,同时提升画面渲染质量和渲染效率。
由于现有终端设备已经具备简单渲染能力,能够渲染生成部分低成本的辅助渲染信息,例如Gbuffer信息、低质量渲染图等,因此根据本申请实施方式,充分利用端侧渲染资源进行端云协同渲染,即云侧生成低分辨率高质量的渲染图发送至端侧,端侧生成对应低成本高分辨率的辅助渲染信息,并借助生成的辅助渲染信息,对云侧传输的低分辨率渲染图进行高质量的超采样,得到最终的渲染图,能够提高端侧计算资源利用率,降低云侧计算压力。并且由于辅助渲染信息通过端侧直接生成,没有进行传输压缩,因此具有无损的特点,在超采样过程中可以借助该部分信息重构得到高分辨率高质量的渲染结果。
同时,云侧通过降低渲染分辨率能够提升渲染质量和渲染效率,通过对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,能够提升编解码以及网络传输效率,保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,同时显著降低带宽需求,减轻带宽压力,实现更低的时延,提升用户体验。
此外,由于端侧仅生成辅助渲染信息,成本更低,因此本方案能够用于算力水平较低的终端设备,以借助云端服务器的高渲染性能以提升端侧渲染能力,使得终端设备能够支持更大分辨率、更高渲染质量的渲染,从而允许游戏以更高的分辨率运行。
应理解,图1所示云游戏场景仅仅是一种示例,本申请实施例提供的协同渲染方法还可以应用于其他场景中,例如云手机、云设计等需要进行端侧与云侧交互渲染的应用场景,本申请实施例对此并不做限定。
应理解,本申请实施例对终端设备的形式不作限定,终端设备可以包括但不限于手机、平板电脑、笔记本电脑、膝上型计算机、台式计算机、便携式游戏机、可穿戴设备、智慧屏、个人数字助理、虚拟现实或者增强现实设备、车载设备(例如,车机,车载导航仪)等具有显示屏的且具有算力资源的电子设备,在此并不作为限定。
下面结合上述图1所示场景中的云端服务器的具体结构对本申请的技术方案进行详细描述。
以下说明作为终端设备或云端服务器的电子设备的结构。
示例性的,图3a示出了本申请一个实施例提供的电子设备的结构示意图。该电子设备310可以实现为如图1所示的云端服务器,也可以实现为其他的电子设备,如,手机、电脑等。
设备310可以包括耦合到控制器中枢313的一个或多个处理器311。对于至少一个实施例,控制器中枢313经由诸如前端总线(Front Side Bus,FSB)之类的多分支总线、诸如快速通道互连(Quick Path Interconnect,QPI)之类的点对点接口、或者类似的连接316与处理器311进行通信。处理器311执行控制一般类型的数据处理操作的指令。在一实施例中,控制器中枢313包括但不局限于,图形存储器控制器中枢(Graphics Memory ControllerHub,GMCH)(未示出)和输入/输出中枢(Input Output Hub,IOH)(其可以在分开的芯片上)(未示出),其中GMCH包括存储器和图形控制器并与IOH耦合。
设备310还可包括耦合到控制器中枢313的协处理器312和存储器314。或者,存储器和GMCH中的一个或两者可以被集成在处理器内(如本申请中所描述的),存储器314和协处理器312直接耦合到处理器311以及控制器中枢313,控制器中枢313与IOH处于单个芯片中。存储器314可以是例如动态随机存取存储器(Dynamic Random Access Memory,DRAM)、相变存储器(Phase Change Memory,PCM)或这两者的组合。在一个实施例中,协处理器312是专用处理器,诸如例如高吞吐量MIC处理器(Many Integerated Core,MIC)、网络或通信处理器、压缩引擎、图形处理器、通用图形处理器(General Purpose Computing on GPU,GPGPU)、或嵌入式处理器等等。协处理器312的任选性质用虚线表示在图3a中。
存储器314作为计算机可读存储介质,可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性计算机可读介质。例如,存储器314可以包括闪存等任何合适的非易失性存储器和/或任何合适的非易失性存储设备,例如一个或多个硬盘驱动器(Hard-DiskDrive,HDD(s)),一个或多个光盘(Compact Disc,CD)驱动器,和/或一个或多个数字通用光盘(Digital Versatile Disc,DVD)驱动器。
在本申请的一个实施例中,作为计算机可读存储介质的存储器314上存储有协同渲染方法的指令,当设备310实现为如图1所示的云端服务器时,处理器311通过运行协同渲染方法指令,使得设备310可以根据接收到的用户针对终端设备输入的控制指令,采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图以及第一非纹理化渲染图,并将该第一非纹理化渲染图发送至终端设备,以使终端设备根据该第一非纹理化渲染图进行超采样,得到当前帧画面对应的第二分辨率的第二渲染图。
此外,在本申请的另一个实施例中,当设备310实现为如图1所示的终端设备时,处理器311通过运行协同渲染方法指令,使得设备310可以采用第二分辨率对待渲染的当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,并基于接收到的云端服务器发送的第一分辨率的第一非纹理化渲染图和该第二辅助渲染信息进行超采样,得到当前帧画面对应的第二分辨率的第二渲染图。
在一个实施例中,设备310可以进一步包括网络接口(Network InterfaceController,NIC)316。网络接口316可以包括收发器,用于为设备310提供无线电接口,进而与任何其他合适的设备(如前端模块,天线等)进行通信。在各种实施例中,网络接口316可以与设备310的其他组件集成。
在本申请的一个实施例中,该网络接口316可以实现上述实施例中的通信过程。例如,通过网络接口316可以实现设备310接收用户针对终端设备输入的控制指令,也可以将生成的第一分辨率的第一非纹理化渲染图发送至终端设备。
设备310可以进一步包括输入/输出(Input/Output,I/O)设备315。I/O315可以包括:用户界面,该设计使得用户能够与设备310进行交互;外围组件接口的设计使得外围组件也能够与设备310交互;和/或传感器设计用于确定与设备310相关的环境条件和/或位置信息。
例如,设备310通过I/O315接收用户输入的控制指令,也可以通过用户界面的方式显示当前帧画面对应的第二分辨率的第二渲染图。
值得注意的是,图3a仅是示例性的。即虽然图3a中示出了设备310包括处理器311、控制器中枢313、存储器314等多个器件,但是,在实际的应用中,使用本申请各方法的设备,可以仅包括设备310各器件中的一部分器件,例如,可以仅包含处理器311和NIC316。图3a中可选器件的性质用虚线示出。
图3b示出了本申请一个实施例提供的电子设备310的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将系统分为三层,从上至下分别为页面服务层、应用服务层和数据管理层。
如图3b所示,数据管理层可以包括数据获取模块、数据存储模块等。其中,数据获取模块用于接收各种数据。例如,以图1的场景为例,当电子设备310用于实现为云端服务器时,数据获取模块用于从终端设备获取用户至少在当前时刻针对终端设备输入的控制指令;当电子设备310用于实现为终端设备时,数据获取模块用于从云端服务器获取第一分辨率的第一非纹理化渲染图和/或视觉误差估计图。数据存储模块用于存储数据获取模块获取的数据,以及应用服务层处理后的数据等。
应用服务层可以包括逻辑运算模块、图像渲染模块、编解码模块等。其中,逻辑运算模块可以包括一些预先定义的函数,例如,当电子设备310用于实现为云端服务器时,包括用于实现图像渲染算法得到对应的第一渲染图的函数,以及用于生成第一非纹理化渲染图、视觉误差估计图的函数等;当电子设备310用于实现为终端设备时,包括用于实现超采样过程得到对应的第二渲染图的函数等。图像渲染模块可以用于运行逻辑运算模块,并得到对应的逻辑结果,例如,得到第一分辨率的第一渲染图、第一非纹理化渲染图、视觉误差估计图,或者得到第二分辨率的第二渲染图等。编解码模块可以用于对数据进行编解码,例如,对第一非纹理化渲染图和/或视觉误差估计图进行编解码。
页面服务层可以包括输出模块等。其中,输出模块用于输出逻辑结果。例如,当电子设备310用于实现为云端服务器时,输出模块将第一分辨率的第一非纹理化渲染图和/或视觉误差估计图发送给终端设备;当电子设备310用于实现为终端设备时,输出模块将第二分辨率的第二渲染图进行显示。
下面结合具体的实施例来介绍协同渲染系统的结构。
图4示出了本申请一个实施例提供的一种协同渲染系统的结构示意图,该协同渲染系统可以包括终端设备110和云端服务器120,终端设备110和云端服务器120之间通过网络连接。该协同渲染系统可以实现本申请实施例所提供的协同渲染方法。
如图4所示,云端服务器120可以包括低分辨率渲染模块(作为第一渲染模块的实例)121、非纹理化渲染图生成模块(作为第一生成模块的实例)122和输出模块123。低分辨率渲染模块121,可以用于采用720p分辨率(作为第一分辨率的实例)对待渲染的当前帧画面进行渲染,得到720p分辨率的低分辨率渲染图(作为第一渲染图的实例)和低分辨率Gbuffer信息(作为第一辅助渲染信息的实例)。非纹理化渲染图生成模块122,可以用于根据低分辨率渲染图和低分辨率Gbuffer信息,生成720p分辨率的低分辨率非纹理化渲染图(作为第一非纹理化渲染图的实例),该低分辨率非纹理化渲染图为去除低分辨率渲染图中的高频信息后得到的渲染图。输出模块123,可以用于输出该低分辨率非纹理化渲染图。
如图4所示,终端设备110可以包括获取模块111、高分辨率渲染模块(作为第二渲染模块的实例)112、超采样模块(作为第二生成模块的实例)113。获取模块111,可以用于获取低分辨率非纹理化渲染图,该低分辨率非纹理化渲染图为去除低分辨率渲染图中的高频信息后得到的渲染图。高分辨率渲染模块112,可以用于采用1440p分辨率(作为第二分辨率的实例,第二分辨率高于第一分辨率)对当前帧画面进行渲染,得到1440p分辨率的高分辨率Gbuffer信息(作为第二辅助渲染信息的实例)。超采样模块113,可以用于基于低分辨率非纹理化渲染图和高分辨率Gbuffer信息进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图(作为第二渲染图的实例)。
在本申请的一个实施例中,如图4所示,终端设备110还可以包括高分辨率历史渲染图获取模块114,用于获取高分辨率历史渲染图(作为第二历史渲染图的实例),该高分辨率历史渲染图为当前帧画面的前一帧画面对应的高分辨率渲染图。相应地,超采样模块113可以用于基于低分辨率非纹理化渲染图、高分辨率Gbuffer信息和高分辨率历史渲染图进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图。
可以理解,本申请实施例通过云端服务器的低分辨率渲染模块生成低分辨率高质量的渲染图发送至终端设备,终端设备的高分辨率渲染模块生成对应低成本高分辨率的辅助渲染信息,并通过超采样模块借助端侧生成的辅助渲染信息,对云端服务器发送的低分辨率渲染图进行高质量的超采样,得到最终的渲染图,提高了端侧计算资源利用率,降低了云侧计算压力,并且提升了端云渲染质量和渲染效率。
同时,通过云端服务器的非纹理化渲染图生成模块对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,提升了编解码以及网络传输的效率,减少了传输过程中高频信息的损失,显著降低了带宽需求。
在本申请的另一个实施例中,如图4所示,云端服务器120还可以包括低分辨率历史渲染图获取模块124和视觉误差估计图生成模块125。低分辨率历史渲染图获取模块124,可以用于获取低分辨率历史渲染图(作为第一历史渲染图的实例),该低分辨率历史渲染图为当前帧画面的前一帧画面对应的低分辨率渲染图。视觉误差估计图生成模块125,可以用于根据低分辨率渲染图、低分辨率Gbuffer信息和低分辨率历史渲染图生成视觉误差估计图。输出模块123,还可以用于输出该视觉误差估计图。
相应地,终端设备110的获取模块111,还可以用于获取视觉误差估计图。超采样模块113,可以用于基于低分辨率非纹理化渲染图、视觉误差估计图和高分辨率Gbuffer信息进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图;或者,超采样模块113,可以用于基于低分辨率非纹理化渲染图、视觉误差估计图、高分辨率Gbuffer信息和高分辨率历史渲染图进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图。
在本申请的另一个实施例中,如图4所示,云端服务器120还可以包括编码压缩模块126,用于对低分辨率非纹理化渲染图和/或视觉误差估计图进行编码处理。相应地,输出模块123可以用于输出编码后的低分辨率非纹理化渲染图和/或视觉误差估计图。
相应地,终端设备110还可以包括解码模块115。获取模块111,还可以用于获取编码后的低分辨率非纹理化渲染图和/或视觉误差估计图。解码模块115,可以用于对编码后的低分辨率非纹理化渲染图和/或视觉误差估计图进行解码处理,得到解码后的低分辨率非纹理化渲染图和/或视觉误差估计图。
可以理解,本申请实施例通过云端服务器的视觉误差估计图生成模块生成视觉误差估计图发送至终端设备,并通过终端设备的超采样模块借助端侧生成的辅助渲染信息以及该视觉误差估计图,对云端服务器发送的低分辨率渲染图进行高质量的超采样,能够进一步提高超采样效果,从而进一步提高端侧渲染画面质量,以及实现整体渲染效率的提升。
下面结合具体的实施例来介绍云侧的渲染方法。图5示出了本申请一个实施例提供的一种渲染方法的流程图,该方法可以应用于如图4所示的协同渲染系统中的云端服务器,如图5所示,该方法包括以下步骤:
S510:采用720p分辨率(作为第一分辨率的实例)对待渲染的当前帧画面进行渲染,得到720p分辨率的低分辨率渲染图(作为第一渲染图的实例)和低分辨率Gbuffer信息(作为第一辅助渲染信息的实例)。
本申请实施例中,云端服务器中可以设置有云端渲染器,当用户在终端设备的网络浏览器或者客户端进入游戏时,云端服务器中的云端渲染器可以完成对应游戏资源镜像的加载。具体地,云端渲染器与终端设备中的客户端渲染器之间可以借助高效的端云同步机制进行两侧信息的同步,其中同步的信息包括端侧的相机变换矩阵信息、云侧的粒子动画、物理仿真等信息。
本申请实施例中,当在时间t时刻,用户在终端设备的网络浏览器或者客户端进行游戏操作时,终端设备可以针对该游戏操作生成对应的控制指令,并发送至云端服务器。其中,该控制指令可以包括当前时刻(以下称为t时刻)对应的相机视角信息、人物状态信息等。云端服务器接收到终端设备发送的控制指令后,可以通过云端渲染器根据对应的相机视角信息,对当前帧(记为第t帧)游戏画面进行720p分辨率下的渲染,得到渲染之后的720p分辨率的低分辨率渲染图(即低分辨率游戏画面)和720p分辨率的低分辨率Gbuffer信息。其中,该低分辨率Gbuffer信息可以包括Albedo图、法线(Normal)图和/或空间坐标(Position)图等信息。
S520:利用低分辨率Gbuffer信息对低分辨率渲染图进行分解,得到对应的720p分辨率的低分辨率非纹理化渲染图(作为第一非纹理化渲染图的实例),该低分辨率非纹理化渲染图为去除该低分辨率渲染图中的高频信息后得到的渲染图。
本申请实施例中,在云端服务器输出第t帧游戏画面对应的低分辨率渲染图之前,可以将该低分辨率渲染图中的高频信息抽出,得到分解后的低分辨率非纹理化渲染图(Untexture图),并将该低分辨率Untexture图用于编解码和网络传输。由于Untexture图包含更少的高频信息,因此可以减少编解码过程中高频信息的损失,从而减少网络传输过程中高频信息的损失。
示例性地,云端服务器可以通过将低分辨率渲染图除以Albedo图的方法计算得到对应的低分辨率Untexture图。需要说明的是,云端服务器也可以通过更加复杂的计算方法以及更多类型的Gbuffer信息(如Albedo图、Normal图和Position图等)计算得到低分辨率Untexture图,本申请实施例对此不作具体限定。
可以理解,本申请实施例中,云端服务器通过降低渲染分辨率能够提升渲染质量和渲染效率,通过对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,能够提升编解码以及网络传输的效率,保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,同时显著降低带宽需求,减轻带宽压力,实现更低的时延。
S530:输出低分辨率非纹理化渲染图。
本申请实施例中,云端服务器可以将该低分辨率非纹理化渲染图进行编码后,通过网络输出至其他设备,例如图4所示的协同渲染系统中的终端设备。
具体地,输出低分辨率非纹理化渲染图可以包括:
对该低分辨率非纹理化渲染图进行编码处理,得到编码后的低分辨率非纹理化渲染图;
输出编码后的低分辨率非纹理化渲染图。
示例性地,云端服务器可以利用H.265编解码算法对云端服务器生成的低分辨率Untexture图进行编码,并将编码后的低分辨率Untexture图通过网络输出至其他设备。
可以理解,本申请实施例通过对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,能够保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,相比于使用多渲染图层传输的方案,传输的图层更少,传输量更低。通过减小传输图层分辨率和传输图层数目,不仅能够提升编解码以及网络传输效率,还能够显著降低带宽需求,减轻带宽压力。
在一个可能的实施例中,云端服务器可以在生成低分辨率非纹理化渲染图的同时,结合历史帧渲染信息和当前帧渲染信息计算得到当前帧画面对应的视觉误差估计图,并与该低分辨率非纹理化渲染图一起输出。具体地,该渲染方法还可以包括以下步骤:
根据低分辨率渲染图、低分辨率Gbuffer信息和低分辨率历史渲染图(作为第一历史渲染图的实例)生成视觉误差估计图;其中,低分辨率历史渲染图为当前帧画面的前一帧画面对应的低分辨率渲染图;
将视觉误差估计图与低分辨率非纹理化渲染图一起输出。
具体地,云端服务器对第t帧游戏画面进行720p分辨率下的渲染,得到720p分辨率的低分辨率渲染图和低分辨率Gbuffer信息后,可以获取云端服务器中存储的,当前帧游戏画面(即第t帧游戏画面)的前一帧游戏画面(即第t-1帧游戏画面)对应的720p分辨率的渲染图,作为低分辨率历史渲染图。云端服务器可以根据该低分辨率渲染图、该低分辨率Gbuffer信息以及该低分辨率历史渲染图,基于视觉误差指标生成当前帧游戏画面对应的视觉误差估计图。
示例性地,参考图6,图6示出了本申请一个实施例提供的视觉误差估计图生成过程的示意图。如图6所示,云端服务器可以将低分辨率历史渲染图通过帧间运动矢量信息映射到当前帧,并结合当前帧游戏画面对应的低分辨率渲染图和低分辨率Gbuffer信息输入到深度神经网络模型中,得到该深度神经网络模型的输出结果,再将该输出结果经过韦伯校正、阈值化等后处理操作,最终得到与输入同尺寸的视觉误差估计图。
其中,该深度神经网络模型可以基于深度学习算法预先训练得到。例如,可以以低分辨率历史渲染图、当前帧游戏画面对应的低分辨率渲染图和低分辨率Gbuffer信息为样本特征,以确定的视觉误差估计图为样本标记,使用深度学习算法进行模型训练,以得到深度神经网络模型。本申请实施例通过使用深度学习的方法能够充分挖掘低分辨率渲染图的渲染误差,得到更加准确的视觉误差估计图。
需要说明的是,该深度神经网络模型的训练方法、对深度神经网络模型的输出结果进行韦伯校正、阈值化等后处理操作的具体内容可以参考现有技术,本申请实施例在此不再赘述。
在实际应用中,在当前帧游戏画面为第一帧的情况下,或者没有获取到低分辨率历史渲染图的的情况下,可以考虑将云端服务器渲染得到的当前帧游戏画面对应的低分辨率渲染图,同样作为低分辨率历史渲染图进行计算。
需要说明的是,上述通过深度学习技术生成视觉误差估计图的的实施方式仅为示例,也可以采用现有技术中的其他方法来生成视觉误差估计图,本申请实施例并不限定生成视觉误差估计图的具体方法。
可以理解,本申请实施例中,云端服务器在渲染得到低分辨率渲染图后,通过基于低分辨率渲染图、低分辨率Gbuffer信息以及低分辨率历史渲染图生成视觉误差估计图一起输出,能够为后续处理带来更好的渲染效果。
本申请实施例中,云端服务器可以将该低分辨率非纹理化渲染图以及该视觉误差估计图进行编码后,通过网络输出至其他设备,例如图4所示的协同渲染系统中的终端设备。
示例性地,云端服务器可以利用H.265编解码算法对云端服务器生成的低分辨率Untexture图以及视觉误差估计图进行编码,并将编码后的内容通过网络输出至其他设备。
需要说明的是,上述采用H.265编解码算法进行编解码的实施方式仅是示例性的。在实际的应用中,还可以采用其他编解码算法对低分辨率Untexture图进行编解码,例如使用其他H.26x系列编解码算法,或者也可以使用针对渲染任务专门设计的视频编码算法等,本申请实施例对使用的编解码算法不作具体限制。
下面结合具体的实施例来介绍端侧的渲染方法。图7示出了本申请一个实施例提供的一种渲染方法的流程图,该方法可以应用于如图4所示的协同渲染系统中的终端设备,如图7所示,该方法包括以下步骤:
S710:获取720p分辨率(作为第一分辨率的实例)的低分辨率非纹理化渲染图(作为第一非纹理化渲染图的实例),该低分辨率非纹理化渲染图为去除720p分辨率的低分辨率渲染图(作为第一渲染图的实例)中的高频信息后得到的渲染图。
本申请实施中,终端设备可以获取云端服务器输出的720p分辨率的低分辨率非纹理化渲染图。该低分辨率非纹理化渲染图的生成方法可以参考如图5所示的渲染方法,本申请实施例在此不再赘述。
本申请实施中,当在时间t时刻,用户在终端设备的网络浏览器或者客户端进行游戏操作时,终端设备可以针对该游戏操作生成对应的控制指令,并发送至云端服务器。其中,该控制指令可以包括当前时刻(以下称为t时刻)对应的相机视角信息、人物状态信息等。云端服务器接收到终端设备发送的控制指令后,可以通过云端渲染器根据对应的相机视角信息,对当前帧(记为第t帧)游戏画面进行720p分辨率下的渲染,并生成720p分辨率的低分辨率非纹理化渲染图并发送至该终端设备。
需要说明的是,上述通过如图5所示的渲染方法生成该低分辨率非纹理化渲染图的实施方式仅是示例,在一些可能的实施例中,该低分辨率非纹理化渲染图也可以由其他设备或者采用其他方法生成,本申请实施例对该低分辨率非纹理化渲染图的生成方法不作具体限制。
S720:采用1440p分辨率(作为第二分辨率的实例,第二分辨率高于第一分辨率)对待渲染的当前帧画面进行渲染,得到1440p分辨率的高分辨率Gbuffer信息(作为第二辅助渲染信息的实例)。
本申请实施例中,终端设备中可以设置有客户端渲染器,当用户在终端设备的网络浏览器或者客户端进入游戏时,终端设备中的客户端渲染器可以加载游戏资源,包括端侧的相机变换矩阵信息、云侧的粒子动画、物理仿真等信息。
本申请实施例中,当在时间t时刻,用户在终端设备的网络浏览器或者客户端进行游戏操作时,终端设备可以通过客户端渲染器根据当前时刻(以下称为t时刻)对应的相机视角信息,对第t帧游戏画面进行1440p分辨率下的渲染,得到渲染之后的1440p分辨率的高分辨率Gbuffer信息,该部分信息相比于最终的渲染结果,获取成本极低,因而不需要高性能渲染硬件(如CPU和GPU)的支持。该高分辨率Gbuffer信息可以包括Albedo图、Normal图和/或Position图等信息。
需要说明的是,步骤S720可以在步骤S710之后执行,也可以在步骤S710之前执行,还可以与步骤S710同时执行,本申请实施例对步骤S720的执行时间不作具体限定。
在本申请的一个实施例中,终端设备在执行步骤S720之前,还可以先确定当前的网络状态是否稳定;在确定当前的网络状态稳定的情况下,终端设备才执行步骤S720以及步骤S730。在确定当前的网络状态不稳定的情况下,终端设备启用离线模式,即仅通过客户端渲染器渲染相对低质量的高分辨率渲染图,满足游戏流畅性要求。
具体地,终端设备可以获取当前的网络丢包率,当网络丢包率小于或等于预设阈值(例如15%)时,可以确定端侧的网络状态稳定,终端设备执行步骤S720;当网络丢包率大于该预设阈值时,可以确定端侧的网络状态不稳定,终端设备启用离线模式,当端侧的网络状态恢复到正常水平后,再启用本申请实施例提供的渲染方案。其中,该预设阈值可以根据实际需要进行设置,例如可以设置为15%、20%等,本申请实施例对此不作具体限制。
可以理解,本申请实施例中,终端设备能够根据端侧网络的实时状态,适应性的切换游戏画面来源,在网络状态满足要求的情况下,才使用本申请实施方式提供的渲染方法渲染得到游戏画面,在网络状态较差的情况下,选择使用端侧渲染得到的相对低质量的高分辨率游戏画面,能够充分利用端侧渲染计算能力,确保在网络环境欠佳的情况下依然能够保证游戏的正常运行,保证端侧游戏画面显示的稳定性。
S730:基于低分辨率非纹理化渲染图和高分辨率Gbuffer信息进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图(作为第二渲染图的实例)。
本申请实施例中,终端设备可以结合获取到的720p分辨率的低分辨率Untexture图和终端设备渲染得到的1440p分辨率的高分辨率Gbuffer信息进行超采样,得到第t帧游戏画面的1440p分辨率的高分辨率渲染图(即高分辨率游戏画面)。终端设备可以对生成的高分辨率渲染图进行端侧显示。
具体地,终端设备可以先对该低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图(作为第二非纹理化渲染图的实例),然后将该高分辨率Untexture图与该高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图。
其中,终端设备对该低分辨率Untexture图进行上采样可以采用双线性插值方法、最近邻插值方法、双三次插值方法等,具体的上采样过程可以参考现有技术,本申请实施例在此不再赘述。终端设备将高分辨率Untexture图与高分辨率Gbuffer信息进行融合的过程,为上述步骤S520中对低分辨率渲染图进行分解的逆过程。
示例性地,终端设备可以采用将高分辨率Untexture图乘以高分辨率Gbuffer信息中的Albedo图的方法计算得到对应的高分辨率渲染图。需要说明的是,终端设备也可以通过更加复杂的计算方法以及更多类型的Gbuffer信息(如Albedo图、Normal图和Position图等)计算得到高分辨率渲染图,本申请实施例对此不作具体限定。
在一个可能的实施例中,终端设备还可以结合该高分辨率Gbuffer信息对该低分辨率Untexture图进行协同上采样,以得到更加准确的高分辨率Untexture图。具体地,可以通过使用高分辨率Gbuffer信息来确定该低分辨率Untexture图中待采样像素与周围像素之间的权重对应关系,从而能够实现更加精确的采样,避免采用双线性插值等方法采样引入的模糊信息。其中,具体的协同上采样过程可以参考现有技术,本申请实施例在此不再赘述。
可以理解,本申请实施例通过通过借助生成的低成本高分辨率的辅助渲染信息,对低分辨率的非纹理化渲染图进行高质量的超采样,得到最终的高质量的渲染图,能够降低渲染复杂度以及自身计算压力,提升渲染效率。并且由于辅助渲染信息通过端侧直接生成,没有进行传输压缩,因此具有无损的特点,在超采样过程中可以借助该部分信息重构得到高分辨率高质量的渲染结果。
在本申请的一个实施例中,终端设备得到高分辨率渲染图后,终端设备还可以基于高分辨率Gbuffer信息对该高分辨率渲染图进行优化处理,得到处理后的高分辨率渲染图,作为最终的高分辨率渲染图。
示例性地,终端设备可以利用深度学习技术,对低分辨率非纹理化渲染图和高分辨率Gbuffer信息进行超采样,以得到高分辨率渲染图。参考图8a,图8a示出了本申请一个实施例提供的超采样过程的示意图。如图8a所示,终端设备可以基于低分辨率Untexture图和高分辨率Gbuffer信息,使用超采样模型进行超采样,其中,该超采样模型是基于深度学习算法训练得到的。
具体地,该超采样模型可以至少包括第一特征提取分支、第二特征提取分支和重构网络,终端设备可以先对低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图,然后将该高分辨率Untexture图与端侧渲染得到的高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图,终端设备可以将得到的高分辨率渲染图输入第一特征提取分支得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,再将上述两个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率渲染图。
在一个可选的实施例中,第一特征提取分支也可以用于对低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图,再与端侧渲染得到的高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图,并进行特征提取。终端设备也可以直接将低分辨率Untexture图和端侧渲染得到的高分辨率Gbuffer信息输入该分支,得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,再将上述两个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率渲染图。
可以理解,通过使用深度学习的方法训练超采样模型,可以在拥有大量训练数据的情况下,充分挖掘低分辨率Untexture图、高分辨率Gbuffer信息和高分辨率渲染图之间的关系,从而可以利用超采样模型得到更高质量的超采样结果,进一步提高端侧渲染画面质量,以及提升整体渲染效率。
示例性地,终端设备也可以利用非深度学习的技术,对低分辨率非纹理化渲染图和高分辨率Gbuffer信息进行超采样,以得到高分辨率渲染图。参考图8b,图8b示出了本申请另一个实施例提供的超采样过程的示意图。如图8b所示,终端设备可以先通过双线性插值方法将低分辨率Untexture图上采样到1440p分辨率,得到高分辨率Untexture图,然后将端侧渲染得到的高分辨率Gbuffer信息与高分辨率Untexture图相融合,再通过高分辨率Gbuffer信息对融合之后的高分辨率渲染图进行双边联合滤波和锐化操作,得到最终的高分辨率渲染图。
需要说明的是,上述通过双线性插值方法进行上采样的实施方式仅为示例,也可以采用其他上采样方法,例如最近邻插值、双三次插值等方法将低分辨率Untexture图上采样到1440p分辨率,本申请实施例并不限定进行上采样的具体方法。
可以理解,在训练数据不足的情况下,也可以通过非深度学习的方法结合低分辨率Untexture图和高分辨率Gbuffer信息进行超采样,通过双边联合滤波和锐化等操作,来增强渲染图的细节和清晰度,保证最终得到高质量高分辨率的渲染结果。
在本申请的另一个实施例中,终端设备对低分辨率Untexture图进行上采样或者协同上采样,得到1440p分辨率的高分辨率Untexture图后,还可以基于高分辨率Gbuffer信息对该高分辨率Untexture图进行优化处理,得到处理后的高分辨率Untexture图,作为最终的高分辨率Untexture图,然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
示例性地,参考图8c,图8c示出了本申请另一个实施例提供的超采样过程的示意图。如图8c所示,终端设备可以基于低分辨率Untexture图和高分辨率Gbuffer信息,使用超采样模型进行超采样。
具体地,该超采样模型可以至少包括第一特征提取分支、第二特征提取分支和重构网络,终端设备可以先结合端侧渲染得到的高分辨率Gbuffer信息对低分辨率Untexture图进行协同上采样,得到1440p分辨率的高分辨率Untexture图,然后将该高分辨率Untexture图输入第一特征提取分支得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,再将上述两个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
在一个可选的实施例中,第一特征提取分支也可以用于结合端侧渲染得到的高分辨率Gbuffer信息对低分辨率Untexture图进行协同上采样,得到1440p分辨率的高分辨率Untexture图,并进行特征提取。终端设备也可以直接将低分辨率Untexture图和端侧渲染得到的高分辨率Gbuffer信息输入该分支,得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,再将上述两个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
可以理解,通过使用深度学习的方法训练超采样模型,可以在拥有大量训练数据的情况下,充分挖掘低分辨率Untexture图、高分辨率Gbuffer信息和高分辨率Untexture图之间的关系,从而可以利用超采样模型得到更高质量的超采样结果,进一步提高端侧渲染画面质量,以及提升整体渲染效率。
示例性地,参考图8d,图8d示出了本申请另一个实施例提供的超采样过程的示意图。如图8d所示,终端设备可以先结合端侧渲染得到的高分辨率Gbuffer信息对低分辨率Untexture图进行协同上采样,得到1440p分辨率的高分辨率Untexture图,然后通过高分辨率Gbuffer信息对该高分辨率Untexture图进行双边联合滤波和锐化操作,得到最终的高分辨率Untexture图,再将该最终的高分辨率Untexture图与高分辨率Gbuffer信息相融合,得到高分辨率渲染图。
可以理解,在训练数据不足的情况下,也可以通过非深度学习的方法结合低分辨率Untexture图和高分辨率Gbuffer信息进行超采样,通过双边联合滤波和锐化等操作,来增强渲染图的细节和清晰度,保证最终得到高质量高分辨率的渲染结果。
需要说明的是,本申请实施例中具体的协同上采样过程可以参考现有技术,本申请实施例在此不再赘述。
在本申请的一个实施例中,终端设备在接收到低分辨率非纹理化渲染图后,还可以获取当前帧游戏画面(即第t帧游戏画面)的前一帧游戏画面(即第t-1帧游戏画面)对应的1440p分辨率的渲染图,作为高分辨率历史渲染图(作为第二历史渲染图的实例)。终端设备可以基于接收到的低分辨率非纹理化渲染图、端侧渲染得到的高分辨率Gbuffer信息以及该高分辨率历史渲染图进行时空协同超采样,得到第t帧游戏画面的1440p分辨率的高分辨率渲染图(即高分辨率游戏画面)。
具体地,终端设备可以先对该低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图,然后将该高分辨率Untexture图与该高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图。终端设备还可以基于高分辨率Gbuffer信息以及高分辨率历史渲染图对融合得到的高分辨率渲染图进行时空协同超采样,得到最终的高分辨率渲染图。
在一个可能的实施例中,终端设备还可以结合该高分辨率Gbuffer信息对该低分辨率Untexture图进行协同上采样,以得到更加准确的高分辨率Untexture图。
示例性地,参考图8a,在使用超采样模型进行超采样的情况下,该超采样模型还可以包括映射(Wrap)及特征提取分支(如图8a中虚线所示),用于将高分辨率历史渲染图通过帧间运动矢量信息映射到当前帧,并对映射之后的结果进行特征提取。终端设备可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)输入Wrap及特征提取分支得到第三特征图,将该第三特征图与第一特征提取分支得到的第一特征图、以及第二特征提取分支得到的第二特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率渲染图。
示例性地,参考图8b,在使用非深度学习的技术进行超采样的情况下,终端设备还可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)通过帧间运动矢量信息映射到当前帧(如图8b中虚线所示),并将映射之后的结果与高分辨率Gbuffer信息和高分辨率Untexture图相融合后的高分辨率渲染图进行加权混合,再通过高分辨率Gbuffer信息对混合之后的信息进行双边联合滤波和锐化操作,以增强分辨率渲染图的细节和清晰度,从而得到最终的高分辨率渲染图。
可以理解,本申请实施例中,端侧在获取到的低分辨率渲染图基础上,通过借助时域信息,利用高分辨率历史帧信息和辅助渲染信息等,基于时空协同超采样来实现高质量快速超采样,以得到最终高分辨率的渲染结果,能够进一步提高端侧渲染画面质量,实现整体渲染效率的提升,从而可以实现更加高的端侧游戏画面质量和游戏稳定性。
在本申请的另一个实施例中,终端设备对低分辨率Untexture图进行上采样或者协同上采样,得到1440p分辨率的高分辨率Untexture图后,还可以基于高分辨率Gbuffer信息以及高分辨率历史渲染图对该高分辨率Untexture图进行时空协同超采样,得到最终的高分辨率Untexture图,再将该最终的高分辨率Untexture图与高分辨率Gbuffer信息进行融合,即可得到1440p分辨率的高分辨率渲染图。
示例性地,参考图8c,在使用超采样模型进行超采样的情况下,该超采样模型还可以包括映射(Wrap)及特征提取分支(如图8c中虚线所示),用于将高分辨率历史渲染图通过帧间运动矢量信息映射到当前帧,并对映射之后的结果进行特征提取。
终端设备可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)输入Wrap及特征提取分支得到第三特征图,将该第三特征图与第一特征提取分支得到的第一特征图、以及第二特征提取分支得到的第二特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
示例性地,参考图8d,在使用非深度学习的技术进行超采样的情况下,终端设备还可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)通过帧间运动矢量信息映射到当前帧(如图8d中虚线所示),并将映射之后的结果与进行协同上采样得到的1440p分辨率的高分辨率Untexture图进行加权混合,再通过高分辨率Gbuffer信息对混合之后的信息进行双边联合滤波和锐化操作,以增强分辨率渲染图的细节和清晰度,从而得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
可以理解,本申请实施例中,端侧在获取到的低分辨率渲染图基础上,通过借助时域信息,利用高分辨率历史帧信息和辅助渲染信息等,基于时空协同超采样来实现高质量快速超采样,以得到最终高分辨率的渲染结果,能够进一步提高端侧渲染画面质量,实现整体渲染效率的提升,从而可以实现更加高的端侧游戏画面质量和游戏稳定性。
上述图7至图8d所示的实施例为终端设备基于低分辨率渲染图进行超采样重构,得到高分辨率渲染图的示例性说明。在本申请另一个实施例中,终端设备在超采样重构过程中还可结合获取到的视觉误差估计图,得到更高质量的高分辨率渲染结果。下面结合图9至图10d对该实施方式进行详细描述。
图9示出了本申请另一个实施例提供的一种渲染方法的流程图,该方法可以应用于如图4所示的协同渲染系统中的终端设备,如图9所示,该方法包括以下步骤:
S910:获取720p分辨率(作为第一分辨率的实例)的低分辨率非纹理化渲染图(作为第一非纹理化渲染图的实例),该低分辨率非纹理化渲染图为去除720p分辨率的低分辨率渲染图(作为第一渲染图的实例)中的高频信息后得到的渲染图。
S920:获取视觉误差估计图,该视觉误差估计图根据该低分辨率渲染图、720p分辨率的低分辨率Gbuffer信息和720p分辨率的低分辨率历史渲染图生成。
本申请实施中,终端设备可以获取云端服务器输出的视觉误差估计图。该视觉误差估计图的生成方法可以参考如图5和图6所示的渲染方法,本申请实施例在此不再赘述。
本申请实施中,当在时间t时刻,用户在终端设备的网络浏览器或者客户端进行游戏操作时,终端设备可以针对该游戏操作生成对应的控制指令,并发送至云端服务器。其中,该控制指令可以包括当前时刻(以下称为t时刻)对应的相机视角信息、人物状态信息等。云端服务器接收到终端设备发送的控制指令后,可以通过云端渲染器根据对应的相机视角信息,对当前帧(记为第t帧)游戏画面进行720p分辨率下的渲染,并生成720p分辨率的低分辨率非纹理化渲染图和视觉误差估计图,并发送至该终端设备。
需要说明的是,上述通过如图5和图6所示的渲染方法生成该视觉误差估计图的实施方式仅是示例,在一些可能的实施例中,该视觉误差估计图也可以由其他设备或者采用其他方法生成,本申请实施例对该视觉误差估计图的生成方法不作具体限制。
S930:采用1440p分辨率(作为第二分辨率的实例,第二分辨率高于第一分辨率)对待渲染的当前帧画面进行渲染,得到1440p分辨率的高分辨率Gbuffer信息(作为第二辅助渲染信息的实例)。
需要说明的是,步骤S930可以在步骤S920之后执行,也可以在步骤S910之前执行,还可以与步骤S910或者步骤S920同时执行,本申请实施例对步骤S930的执行时间不作具体限定。
S940:基于该低分辨率非纹理化渲染图、该视觉误差估计图和高分辨率Gbuffer信息进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图(作为第二渲染图的实例)。
本申请实施例中,终端设备可以结合获取到的720p分辨率的低分辨率Untexture图、视觉误差估计图和终端设备渲染得到的1440p分辨率的高分辨率Gbuffer信息进行超采样,得到第t帧游戏画面的1440p分辨率的高分辨率渲染图(即高分辨率游戏画面)。终端设备可以对生成的高分辨率渲染图进行端侧显示。
具体地,终端设备可以先对该低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图(作为第二非纹理化渲染图的实例),然后将该高分辨率Untexture图与该高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图。终端设备还可以基于高分辨率Gbuffer信息以及视觉误差估计图对该高分辨率渲染图进行超采样,得到最终的高分辨率渲染图。
在一个可选的实施例中,终端设备还可以结合该高分辨率Gbuffer信息对该低分辨率Untexture图进行协同上采样,以得到更加准确的高分辨率Untexture图。其中,具体的协同上采样过程可以参考现有技术,本申请实施例在此不再赘述。
示例性地,终端设备可以利用深度学习技术,对低分辨率非纹理化渲染图、视觉误差估计图和高分辨率Gbuffer信息进行超采样,以得到高分辨率渲染图。参考图10a,图10a示出了本申请另一个实施例提供的超采样过程的示意图。如图10a所示,终端设备可以基于低分辨率非纹理化渲染图、视觉误差估计图和高分辨率Gbuffer信息,使用超采样模型进行超采样,其中,该超采样模型是基于深度学习算法训练得到的。
具体地,该超采样模型可以至少包括第一特征提取分支、特征提取及上采样分支、第二特征提取分支和重构网络,终端设备可以先对低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图,然后将该高分辨率Untexture图与端侧渲染得到的高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图。终端设备可以将得到的高分辨率渲染图输入第一特征提取分支得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,将视觉误差估计图输入特征提取及上采样分支得到第四特征图,再将上述三个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率渲染图。
在一个可选的实施例中,第一特征提取分支也可以用于对低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图,再与端侧渲染得到的高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图,并进行特征提取。终端设备也可以直接将低分辨率Untexture图和端侧渲染得到的高分辨率Gbuffer信息输入该分支,得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,将视觉误差估计图输入特征提取及上采样分支得到第四特征图,再将上述三个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率渲染图。
示例性地,终端设备也可以利用非深度学习的技术,对低分辨率非纹理化渲染图、视觉误差估计图和高分辨率Gbuffer信息进行超采样,以得到高分辨率渲染图。参考图10b,图10b示出了本申请另一个实施例提供的超采样过程的示意图。如图10b所示,终端设备可以先通过双线性插值方法将低分辨率Untexture图上采样到1440p分辨率,以得到高分辨率Untexture图,然后将端侧渲染得到的高分辨率Gbuffer信息与高分辨率Untexture图相融合,再通过高分辨率Gbuffer信息对融合之后的高分辨率渲染图进行双边联合滤波和锐化操作,以增强分辨率渲染图的细节和清晰度,之后可以借助上采样后的视觉误差估计图进行双边滤波以进一步提升关键细节上的信息,从而得到最终的高分辨率渲染图。
需要说明的是,上述通过双线性插值方法进行上采样的实施方式仅为示例,也可以采用其他上采样方法,例如最近邻插值、双三次插值等方法将低分辨率Untexture图上采样到1440p分辨率,本申请实施例并不限定进行上采样的具体方法。
在本申请的另一个实施例中,终端设备对低分辨率Untexture图进行上采样或者协同上采样,得到1440p分辨率的高分辨率Untexture图后,还可以基于高分辨率Gbuffer信息以及视觉误差估计图对该高分辨率Untexture图进行时空超采样,得到最终的高分辨率Untexture图,然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
示例性地,参考图10c,图10c示出了本申请另一个实施例提供的超采样过程的示意图。如图10c所示,终端设备可以基于低分辨率Untexture图、视觉误差估计图和高分辨率Gbuffer信息,使用超采样模型进行超采样。
具体地,该超采样模型可以至少包括第一特征提取分支、特征提取及上采样分支、第二特征提取分支和重构网络,终端设备可以先结合端侧渲染得到的高分辨率Gbuffer信息对低分辨率Untexture图进行协同上采样,得到1440p分辨率的高分辨率Untexture图,然后将该高分辨率Untexture图输入第一特征提取分支得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,将视觉误差估计图输入特征提取及上采样分支得到第四特征图,再将上述三个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
在一个可选的实施例中,第一特征提取分支也可以用于结合端侧渲染得到的高分辨率Gbuffer信息对低分辨率Untexture图进行协同上采样,得到1440p分辨率的高分辨率Untexture图,并进行特征提取。终端设备也可以直接将低分辨率Untexture图和端侧渲染得到的高分辨率Gbuffer信息输入该分支,得到第一特征图,将端侧渲染得到的高分辨率Gbuffer信息输入第二特征提取分支得到第二特征图,将视觉误差估计图输入特征提取及上采样分支得到第四特征图,再将上述三个分支提取得到的特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
示例性地,参考图10d,图10d示出了本申请另一个实施例提供的超采样过程的示意图。如图10d所示,终端设备可以先结合端侧渲染得到的高分辨率Gbuffer信息对低分辨率Untexture图进行协同上采样,得到1440p分辨率的高分辨率Untexture图,然后通过高分辨率Gbuffer信息对该高分辨率Untexture图进行双边联合滤波和锐化操作,以增强分辨率渲染图的细节和清晰度,之后可以借助上采样后的视觉误差估计图进行双边滤波以进一步提升关键细节上的信息,从而得到最终的高分辨率Untexture图,再将该最终的高分辨率Untexture图与高分辨率Gbuffer信息相融合,得到高分辨率渲染图。
需要说明的是,本申请实施例中具体的协同上采样过程可以参考现有技术,本申请实施例在此不再赘述。
可以理解,本申请实施例中通过在获取到的低分辨率渲染图基础上,结合视觉误差估计图和辅助渲染信息等进行高质量超采样,使得端侧能够在渲染图中误差分布更加明显的地方给予更多的关注,从而能够提升该部分的重构效果,从而提高最终超采样结果质量。
在本申请的另一个实施例中,终端设备在接收到低分辨率非纹理化渲染图和视觉误差估计图后,还可以获取当前帧游戏画面(即第t帧游戏画面)的前一帧游戏画面(即第t-1帧游戏画面)对应的1440p分辨率的渲染图,作为高分辨率历史渲染图(作为第二历史渲染图的实例)。终端设备可以基于接收到的低分辨率非纹理化渲染图和视觉误差估计图、端侧渲染得到的高分辨率Gbuffer信息以及该高分辨率历史渲染图进行时空协同超采样,得到第t帧游戏画面的1440p分辨率的高分辨率渲染图(即高分辨率游戏画面)。
具体地,终端设备可以先对该低分辨率Untexture图进行上采样,得到1440p分辨率的高分辨率Untexture图,然后将该高分辨率Untexture图与该高分辨率Gbuffer信息进行融合,得到1440p分辨率的高分辨率渲染图。终端设备还可以基于视觉误差估计图、高分辨率Gbuffer信息以及高分辨率历史渲染图对该高分辨率渲染图进行时空协同超采样,得到最终的高分辨率渲染图。
在一个可能的实施例中,终端设备还可以结合该高分辨率Gbuffer信息对该低分辨率Untexture图进行协同上采样,以得到更加准确的高分辨率Untexture图。
示例性地,参考图10a,在使用超采样模型进行超采样的情况下,该超采样模型还可以包括Wrap及特征提取分支(如图10a中虚线所示),用于将高分辨率历史渲染图通过帧间运动矢量信息映射到当前帧,并对映射之后的结果进行特征提取。终端设备可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)输入Wrap及特征提取分支得到第三特征图,将该第三特征图与第一特征提取分支得到的第一特征图、第二特征提取分支得到的第二特征图、以及特征提取及上采样分支得到的第四特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率渲染图。
示例性地,参考图10b,在使用非深度学习的技术进行超采样的情况下,终端设备还可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)通过帧间运动矢量信息映射到当前帧(如图10b中虚线所示),并将映射之后的结果与高分辨率Gbuffer信息和高分辨率Untexture图相融合后的高分辨率渲染图进行加权混合,再通过高分辨率Gbuffer信息对混合之后的信息进行双边联合滤波和锐化操作,以增强分辨率渲染图的细节和清晰度,之后可以借助上采样后的视觉误差估计图进行双边滤波以进一步提升关键细节上的信息,从而得到最终的高分辨率渲染图。
在本申请的另一个实施例中,终端设备对低分辨率Untexture图进行上采样或者协同上采样,得到1440p分辨率的高分辨率Untexture图后,还可以基于视觉误差估计图、高分辨率Gbuffer信息以及高分辨率历史渲染图对该高分辨率Untexture图进行时空协同超采样,得到最终的高分辨率Untexture图,再将该最终的高分辨率Untexture图与高分辨率Gbuffer信息进行融合,即可得到1440p分辨率的高分辨率渲染图。
示例性地,参考图10c,在使用超采样模型进行超采样的情况下,该超采样模型还可以包括映射(Wrap)及特征提取分支(如图10c中虚线所示),用于将高分辨率历史渲染图通过帧间运动矢量信息映射到当前帧,并对映射之后的结果进行特征提取。
终端设备可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)输入Wrap及特征提取分支得到第三特征图,将该第三特征图与第一特征提取分支得到的第一特征图、第二特征提取分支得到的第二特征图以及特征提取及上采样分支得到的第四特征图进行融合,得到融合之后的特征信息,最后可以将融合之后的特征信息输入重构网络,得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
示例性地,参考图10d,在使用非深度学习的技术进行超采样的情况下,终端设备还可以将获取到的高分辨率历史渲染图(即第t-1帧游戏画面对应的1440p分辨率的渲染图)通过帧间运动矢量信息映射到当前帧(如图10d中虚线所示),并将映射之后的结果与进行协同上采样得到的1440p分辨率的高分辨率Untexture图进行加权混合,再通过高分辨率Gbuffer信息对混合之后的信息进行双边联合滤波和锐化操作,以增强分辨率渲染图的细节和清晰度,之后可以借助上采样后的视觉误差估计图进行双边滤波以进一步提升关键细节上的信息,从而得到最终的高分辨率Untexture图。然后再基于该最终的高分辨率Untexture图与高分辨率Gbuffer信息融合,得到1440p分辨率的高分辨率渲染图。
可以理解,本申请实施例中,端侧在获取到的低分辨率渲染图基础上,利用高分辨率历史帧信息、视觉误差估计图和辅助渲染信息等,基于时空协同超采样来获得最终高分辨率的渲染结果,能够进一步提高超采样效果,从而进一步提高端侧渲染画面质量,以及实现整体渲染效率的提升,进而能够允许游戏以更高的分辨率运行,并显著提升同等条件下游戏画面质量。
需要说明的是,本申请实施例中步骤S910至步骤S940中的其他具体内容可以参考图7至图8d所示的实施例,本申请实施例在此不再赘述。
需要说明的是,上述图8a至图8d、图10a至图10d所示实施例提供的进行超采样的实施方式仅为示例,在实际应用中,基于低分辨率Untexture图和高分辨率Gbuffer信息(或者还包括高分辨率历史渲染图和/或视觉误差估计图)进行超采样的方法可以包括但不限于上述实施方式,本申请实施例对此不做具体限定。
下面结合具体的实施例来介绍协同渲染方法。图11示出了本申请一个实施例提供的一种协同渲染方法的流程图,该方法可以应用于如图4所示的协同渲染系统中,该协同渲染系统可以包括终端设备和云端服务器。如图11所示,该方法包括以下步骤:
S1110:云端服务器采用720p分辨率(作为第一分辨率的实例)对待渲染的当前帧画面进行渲染,得到720p分辨率的低分辨率渲染图(作为第一渲染图的实例)和低分辨率Gbuffer信息(作为第一辅助渲染信息的实例)。
参考图12,图12示出了本申请一个实施例提供的协同渲染方法的框架图。如图12所示,云端服务器中可以设置有云端渲染器,终端设备中可以设置有客户端渲染器。当用户在终端设备的网络浏览器或者客户端进入游戏时,终端设备中的客户端渲染器可以加载游戏资源,云端服务器中的云端渲染器可以同时完成对应游戏资源镜像的加载。具体地,客户端渲染器与云端渲染器之间可以借助高效的端云同步机制进行两侧信息的同步,其中同步的信息包括端侧的相机变换矩阵信息、云侧的粒子动画、物理仿真等信息。
本申请实施例中,当在时间t时刻,用户在终端设备的网络浏览器或者客户端进行游戏操作时,终端设备可以针对该游戏操作生成对应的控制指令,并发送至云端服务器。其中,该控制指令可以包括当前时刻(以下称为t时刻)对应的相机视角信息、人物状态信息等。如图12所示,云端服务器接收到终端设备发送的控制指令后,可以通过云端渲染器根据对应的相机视角信息,对当前帧(记为第t帧)游戏画面进行720p分辨率下的渲染,得到渲染之后的720p分辨率的低分辨率渲染图(即低分辨率游戏画面)和720p分辨率的低分辨率Gbuffer信息。该低分辨率Gbuffer信息可以包括Albedo图、法线(Normal)图和/或空间坐标(Position)图等信息。
S1120:云端服务器利用该低分辨率Gbuffer信息对该低分辨率渲染图进行分解,得到对应的720p分辨率的低分辨率非纹理化渲染图(作为第一非纹理化渲染图的实例),该低分辨率非纹理化渲染图为去除该低分辨率渲染图中的高频信息后得到的渲染图。
本申请实施例中,如图12所示,在云端服务器将第t帧游戏画面对应的低分辨率渲染图传输至终端设备之前,可以基于低分辨率Gbuffer信息将该低分辨率渲染图中的高频信息抽出,得到分解后的低分辨率非纹理化渲染图(Untexture图),并将该低分辨率Untexture图用于编解码和网络传输。由于Untexture图包含更少的高频信息,因此可以减少编解码过程中高频信息的损失,从而减少网络传输过程中高频信息的损失。
可以理解,本申请实施例中,云端服务器通过降低渲染分辨率能够提升渲染质量和渲染效率,通过对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,能够提升编解码以及网络传输的效率,保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,同时显著降低带宽需求,减轻带宽压力,实现更低的时延。
S1130:云端服务器将低分辨率非纹理化渲染图发送至终端设备。
本申请实施例中,云端服务器可以将该低分辨率非纹理化渲染图进行编码后,通过网络传输至该终端设备。
具体地,云端服务器将低分辨率非纹理化渲染图发送至终端设备,可以包括:
云端服务器对该低分辨率非纹理化渲染图进行编码处理,得到编码后的低分辨率非纹理化渲染图;
云端服务器将编码后的低分辨率非纹理化渲染图发送至该终端设备。
示例性地,云端服务器可以利用H.265编解码算法对云端服务器生成的低分辨率Untexture图进行编码,并将编码后的低分辨率Untexture图通过网络传输至该终端设备。
相应地,终端设备在接收到该编码后的低分辨率Untexture图后,也可以利用H.265编解码算法对该编码后的低分辨率Untexture图进行解码处理,以得到解码后的低分辨率Untexture图。
需要说明的是,上述采用H.265编解码算法进行解码的实施方式仅是示例性的。在实际的应用中,还可以采用其他编解码算法对低分辨率Untexture图进行编解码,例如使用其他H.26x系列编解码算法,或者也可以使用针对渲染任务专门设计的视频编码算法等,本申请实施例对使用的编解码算法不作具体限制。
可以理解,本申请实施例通过对渲染得到的低分辨率高质量的渲染图进行分解,得到低分辨的非材质图层进行传输,能够保证传输过程渲染信息的高保真性,减少传输过程中高频信息的损失,相比于使用多渲染图层传输的方案,传输的图层更少,传输量更低。通过减小传输图层分辨率和传输图层数目,不仅能够提升编解码以及网络传输效率,还能够显著降低带宽需求,减轻带宽压力,实现更低的游戏时延和更高的游戏质量,实现更加流畅的游戏体验。
需要说明的是,本申请实施例中步骤S1110至步骤S1130中的其他具体内容可以参考图5和图6所示的实施例,本申请实施例在此不再赘述。
S1140:终端设备采用1440p分辨率(作为第二分辨率的实例,第二分辨率高于第一分辨率)对待渲染的当前帧画面进行渲染,得到1440p分辨率的高分辨率Gbuffer信息(作为第二辅助渲染信息的实例)。
本申请实施例中,如图12所示,当在时间t时刻,用户在终端设备的网络浏览器或者客户端进行游戏操作时,终端设备可以通过客户端渲染器根据t时刻对应的相机视角信息,对第t帧游戏画面进行1440p分辨率下的渲染,得到渲染之后的1440p分辨率的高分辨率Gbuffer信息,该部分信息相比于最终的渲染结果,获取成本极低,因而不需要高性能渲染硬件(如CPU和GPU)的支持。该高分辨率Gbuffer信息可以包括Albedo图、Normal图和/或Position图等信息。
需要说明的是,步骤S1140可以在步骤S1130之后执行,也可以在步骤S1110之前执行,还可以与步骤S1110、步骤S1120或者步骤S1130同时执行,本申请实施例对步骤S1140的执行时间不作具体限定。
在本申请的一个实施例中,如图12所示,终端设备在执行步骤S1140之前,还可以先确定当前的网络状态是否稳定;在确定当前的网络状态稳定的情况下,终端设备才执行步骤S1140以及步骤S1150。在确定当前的网络状态不稳定的情况下,终端设备启用离线模式,即仅通过客户端渲染器渲染相对低质量的高分辨率渲染图,满足游戏流畅性要求。
可以理解,本申请实施例中,终端设备能够根据端侧网络的实时状态,适应性的切换游戏画面来源,在网络状态满足要求的情况下,才使用本申请实施方式提供的端云协同渲染方法渲染得到游戏画面,在网络状态较差的情况下,选择使用端侧渲染得到的相对低质量的高分辨率游戏画面,能够充分利用端侧渲染计算能力,确保在网络环境欠佳的情况下依然能够保证游戏的正常运行,保证端侧游戏画面显示的稳定性。
S1150:终端设备在接收到低分辨率非纹理化渲染图后,基于该低分辨率非纹理化渲染图和高分辨率Gbuffer信息进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图(作为第二渲染图的实例)。
本申请实施例中,如图12所示,终端设备可以结合解码得到的720p分辨率的低分辨率Untexture图和终端设备渲染得到的1440p分辨率的高分辨率Gbuffer信息进行超采样,得到第t帧游戏画面的1440p分辨率的高分辨率渲染图(即高分辨率游戏画面)。终端设备可以对生成的高分辨率渲染图进行端侧显示。
可以理解,本申请实施例充分利用端侧渲染资源进行端云协同渲染,即云侧生成低分辨率高质量的渲染图发送至端侧,端侧生成对应低成本高分辨率的辅助渲染信息,并借助生成的辅助渲染信息,对云侧传输的低分辨率渲染图进行高质量的超采样,得到最终的渲染图,能够提高端侧计算资源利用率,降低云侧计算压力。并且由于辅助渲染信息通过端侧直接生成,没有进行传输压缩,因此具有无损的特点,在超采样过程中可以借助该部分信息重构得到高分辨率高质量的渲染结果。
需要说明的是,本申请实施例中步骤S1140和步骤S1150中的其他具体内容可以参考图7至图8d所示的实施例,本申请实施例在此不再赘述。
上述图11和图12所示的实施例为云端服务器仅生成并发送低分辨率渲染图至终端设备,并由终端设备基于低分辨率渲染图进行超采样重构,得到高分辨率渲染图的示例性说明。在本申请另一个实施例中,云端服务器还可以同时生成并发送视觉误差估计图至终端设备,以使得终端设备在超采样重构过程中可以结合该视觉误差估计图,得到更高质量的高分辨率渲染结果。下面结合图13和图14对该实施方式进行详细描述。
图13示出了本申请另一个实施例提供的一种协同渲染方法的流程图,该方法可以应用于如图4所示的协同渲染系统中,该协同渲染系统可以包括终端设备和云端服务器。如图13所示,该方法包括以下步骤:
S1310:云端服务器采用720p分辨率(作为第一分辨率的实例)对待渲染的当前帧画面进行渲染,得到720p分辨率的低分辨率渲染图(作为第一渲染图的实例)和低分辨率Gbuffer信息(作为第一辅助渲染信息的实例)。
S1320:云端服务器利用该低分辨率Gbuffer信息对该低分辨率渲染图进行分解,得到对应的720p分辨率的低分辨率非纹理化渲染图(作为第一非纹理化渲染图的实例),该低分辨率非纹理化渲染图为去除该低分辨率渲染图中的高频信息后得到的渲染图。
S1330:云端服务器根据该低分辨率渲染图生成视觉误差估计图。
本申请实施例中,参考图14,图14示出了本申请另一个实施例提供的协同渲染方案的框架图。在该方案中,云端服务器可以在生成低分辨率非纹理化渲染图的同时,结合历史帧渲染信息和当前帧渲染信息计算得到当前帧画面对应的视觉误差估计图,并与该低分辨率非纹理化渲染图一起发送至终端设备,以用于辅助端侧超采样,从而提升端侧超采样重构效果。
具体地,如图14所示,云端服务器对第t帧游戏画面进行720p分辨率下的渲染,得到720p分辨率的低分辨率渲染图和低分辨率Gbuffer信息后,可以获取云端服务器中存储的,当前帧游戏画面(即第t帧游戏画面)的前一帧游戏画面(即第t-1帧游戏画面)对应的720p分辨率的渲染图,作为低分辨率历史渲染图(作为第一历史渲染图的实例)。云端服务器可以根据该低分辨率渲染图、该低分辨率Gbuffer信息以及该低分辨率历史渲染图,基于视觉误差指标生成当前帧游戏画面对应的视觉误差估计图。
需要说明的是,生成视觉误差估计图的具体方法可以参考图5和图6所示的实施例,本申请实施例在此不再赘述。
可以理解,本申请实施例中,云端服务器在渲染得到低分辨率渲染图后,通过基于低分辨率渲染图、低分辨率Gbuffer信息以及低分辨率历史渲染图生成视觉误差估计图,并发送至终端设备,以使得终端设备在超采样重构过程中可以结合该视觉误差估计图,在渲染图像中误差分布更加明显的地方给予更多的关注,从而能够提升该部分的重构效果,得到更高质量的高分辨率渲染结果。
S1340:云端服务器将视觉误差估计图与低分辨率非纹理化渲染图一起发送至终端设备。
本申请实施例中,云端服务器可以将该低分辨率非纹理化渲染图以及该视觉误差估计图进行编码后,通过网络传输至该终端设备。
示例性地,云端服务器可以利用H.265编解码算法对云端服务器生成的低分辨率Untexture图以及视觉误差估计图进行编码,并将编码后的内容通过网络传输至终端设备。
相应地,终端设备在接收到该编码后的内容后,也可以利用H.265编解码算法对该编码后的内容进行解码处理,以得到低分辨率Untexture图和视觉误差估计图。
需要说明的是,上述采用H.265编解码算法进行解码的实施方式仅是示例性的。在实际的应用中,还可以采用其他编解码算法对低分辨率Untexture图和/或视觉误差估计图进行编解码,例如使用其他H.26x系列编解码算法,或者也可以使用针对渲染任务专门设计的视频编码算法等,本申请实施例对使用的编解码算法不作具体限制。
需要说明的是,本申请实施例中步骤S1310至步骤S1340中的其他具体内容可以参考图5和图6所示的实施例,本申请实施例在此不再赘述。
S1350:终端设备采用1440p分辨率(作为第二分辨率的实例,第二分辨率高于第一分辨率)对待渲染的当前帧画面进行渲染,得到1440p分辨率的高分辨率Gbuffer信息(作为第二辅助渲染信息的实例)。
需要说明的是,步骤S1350可以在步骤S1340之后执行,也可以在步骤S1310之前执行,还可以与步骤S1310、步骤S1320、步骤S1330或者步骤S1340同时执行,本申请实施例对步骤S1350的执行时间不作具体限定。
S1360:终端设备在接收到低分辨率非纹理化渲染图和视觉误差估计图后,基于该低分辨率非纹理化渲染图、该视觉误差估计图和高分辨率Gbuffer信息进行超采样,得到当前帧画面对应的1440p分辨率的高分辨率渲染图(作为第二渲染图的实例)。
本申请实施例中,如图14所示,终端设备可以结合解码得到的720p分辨率的低分辨率Untexture图、视觉误差估计图和终端设备渲染得到的1440p分辨率的高分辨率Gbuffer信息进行超采样,得到第t帧游戏画面的1440p分辨率的高分辨率渲染图(即高分辨率游戏画面)。终端设备可以对生成的高分辨率渲染图进行端侧显示。
可以理解,本申请实施例中,端侧在云侧传输的低分辨率渲染图基础上,结合视觉误差估计图和辅助渲染信息等进行高质量超采样,使得端侧能够在渲染图中误差分布更加明显的地方给予更多的关注,从而能够提升该部分的重构效果,从而提高最终超采样结果质量,进而能够允许游戏以更高的分辨率运行,并显著提升同等条件下游戏画面质量。
需要说明的是,本申请实施例中步骤S1350和步骤S1360中的其他具体内容可以参考图7至图12所示的实施例,本申请实施例在此不再赘述。
将本申请实施例提供的协同渲染方法与其他方案进行比较,可以得到如下表2所示的对比结果:
表2
从表2中可以看出,本申请实施例提供的协同渲染方法在画面质量、端侧资源利用率和带宽需求方面存在显著优势,同时能够适用离线场景。
本申请实施例还提供一种电子设备,包括:
存储器,用于存储由设备的一个或多个处理器执行的指令,以及
处理器,用于执行上述实施例中结合图5至图14所示的方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器运行时,使得处理器执行上述实施例中图5至图14所示的方法。
本申请实施例还提供一种包含指令的计算机程序产品,当该计算机程序产品在电子设备上运行时,使得处理器执行上述实施例中图5至图14所示的方法。
现在参考图15,所示为根据本申请的一实施例的SoC(System on Chip,片上系统)1500的框图。在图15中,相似的部件具有同样的附图标记。另外,虚线框是更先进的SoC的可选特征。在图15中,SoC1500包括:互连单元1550,其被耦合至处理器1510;系统代理单元1570;总线控制器单元1580;集成存储器控制器单元1540;一组或一个或多个协处理器1520,其可包括集成图形逻辑、图像处理器、音频处理器和视频处理器;静态随机存取存储器(Static Random Access Memory,SRAM)单元1530;直接存储器存取(Direct MemoryAccess,DMA)单元1560。在一个实施例中,协处理器1520包括专用处理器,诸如例如网络或通信处理器、压缩引擎、GPGPU、高吞吐量MIC处理器、或嵌入式处理器等。
静态随机存取存储器(SRAM)单元1530中可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性计算机可读存储介质。计算机可读存储介质中可以存储有指令,具体而言,存储有该指令的暂时和永久副本。该指令可以包括:由处理器中的至少一个单元执行时使Soc1500执行根据上述实施例中的协同渲染方法,具体可参照上述实施例中图5至图14所示的方法,在此不再赘述。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(Digital Signal Processor,DSP)、微控制器、专用集成电路(Application Specific Integrated Circuit,ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、光盘只读存储器(Compact Disc Read Only Memory,CD-ROMs)、磁光盘、只读存储器(Read OnlyMemory,ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(Erasable ProgrammableRead Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically ErasableProgrammable Read Only Memory,EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如,计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明书附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其他的单元/模块。
需要说明的是,在本申请的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (25)
1.一种协同渲染方法,应用于协同渲染系统,所述系统包括终端设备和云端服务器,其特征在于,所述方法包括:
所述云端服务器采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;
所述云端服务器利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除所述第一渲染图中的高频信息后得到的渲染图;
所述云端服务器将所述第一非纹理化渲染图发送至所述终端设备;
所述终端设备在接收到所述第一非纹理化渲染图后,基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图;
其中,所述第二辅助渲染信息由所述终端设备采用第二分辨率对所述当前帧画面进行渲染得到,并且所述第二分辨率高于所述第一分辨率。
2.根据权利要求1所述的方法,其特征在于,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
所述终端设备对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
所述终端设备将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
3.根据权利要求2所述的方法,其特征在于,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
所述终端设备获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
所述终端设备基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
4.根据权利要求2所述的方法,其特征在于,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
所述终端设备获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
所述终端设备基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
其中,所述终端设备将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图,包括:
所述终端设备将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述云端服务器根据所述第一渲染图、所述第一辅助渲染信息和第一历史渲染图生成视觉误差估计图;其中,所述第一历史渲染图为所述当前帧画面的前一帧画面对应的第一分辨率的渲染图;
所述云端服务器将所述视觉误差估计图与所述第一非纹理化渲染图一起发送至所述终端设备;
所述终端设备在接收到所述第一非纹理化渲染图和所述视觉误差估计图后,基于所述第一非纹理化渲染图、所述视觉误差估计图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
6.根据权利要求5所述的方法,其特征在于,所述终端设备基于所述第一非纹理化渲染图、所述视觉误差估计图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
所述终端设备对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
所述终端设备将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图;
所述终端设备基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
7.根据权利要求5所述的方法,其特征在于,所述终端设备基于所述第一非纹理化渲染图、所述视觉误差估计图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
所述终端设备对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
所述终端设备基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
所述终端设备将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述终端设备确定当前的网络状态是否稳定;
在确定当前的网络状态稳定的情况下,所述终端设备基于所述第一非纹理化渲染图和第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
9.根据权利要求1所述的方法,其特征在于,所述云端服务器将所述第一非纹理化渲染图发送至所述终端设备,包括:
所述云端服务器对所述第一非纹理化渲染图进行编码处理,得到编码后的第一非纹理化渲染图;
所述云端服务器将编码后的第一非纹理化渲染图发送至所述终端设备;
相应地,所述终端设备在接收到所述编码后的第一非纹理化渲染图后,对所述编码后的第一非纹理化渲染图进行解码处理,得到所述第一非纹理化渲染图。
10.一种渲染方法,其特征在于,包括:
采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;
利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除所述第一渲染图中的高频信息后得到的渲染图;
输出所述第一非纹理化渲染图。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
根据所述第一渲染图、所述第一辅助渲染信息和第一历史渲染图生成视觉误差估计图;其中,所述第一历史渲染图为所述当前帧画面的前一帧画面对应的第一分辨率的渲染图;
将所述视觉误差估计图与所述第一非纹理化渲染图一起输出。
12.根据权利要求10所述的方法,其特征在于,所述输出所述第一非纹理化渲染图,包括:
对所述第一非纹理化渲染图进行编码处理,得到编码后的第一非纹理化渲染图;
输出编码后的第一非纹理化渲染图。
13.一种渲染方法,其特征在于,包括:
获取第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除第一分辨率的第一渲染图中的高频信息后得到的渲染图;
采用第二分辨率对待渲染的当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,所述第二分辨率高于所述第一分辨率;
基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
14.根据权利要求13所述的方法,其特征在于,所述基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
15.根据权利要求14所述的方法,其特征在于,所述基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
16.根据权利要求14所述的方法,其特征在于,所述基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,还包括:
获取第二历史渲染图,所述第二历史渲染图为所述当前帧画面的前一帧画面对应的渲染图;
基于所述第二辅助渲染信息以及所述第二历史渲染图对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
其中,所述将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图,包括:
将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
17.根据权利要求13所述的方法,其特征在于,所述方法还包括:
获取视觉误差估计图,所述视觉误差估计图根据所述第一渲染图、第一辅助渲染信息和第一历史渲染图生成;其中,所述第一辅助渲染信息通过采用第一分辨率对所述当前帧画面进行渲染得到,所述第一历史渲染图为所述当前帧画面的前一帧画面对应的第一分辨率的渲染图;
基于所述第一非纹理化渲染图、所述视觉误差估计图以及所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
18.根据权利要求17所述的方法,其特征在于,所述基于所述第一非纹理化渲染图、所述视觉误差估计图以及所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
将所述第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图;
基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二渲染图进行时空协同超采样,得到最终的第二渲染图。
19.根据权利要求17所述的方法,其特征在于,所述基于所述第一非纹理化渲染图、所述视觉误差估计图以及所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图,包括:
对所述第一非纹理化渲染图进行上采样,得到第二分辨率的第二非纹理化渲染图;
基于所述视觉误差估计图以及所述第二辅助渲染信息对所述第二非纹理化渲染图进行时空协同超采样,得到最终的第二非纹理化渲染图;
将所述最终的第二非纹理化渲染图与所述第二辅助渲染信息进行融合,得到第二分辨率的第二渲染图。
20.根据权利要求13所述的方法,其特征在于,所述采用第二分辨率对所述当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,包括:
确定当前的网络状态是否稳定;
在确定当前的网络状态稳定的情况下,采用第二分辨率对所述当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息。
21.一种协同渲染系统,其特征在于,包括终端设备和云端服务器,所述云端服务器用于执行权利要求1~9任一项所述的协同渲染方法中云端服务器执行的各个步骤,所述终端设备用于执行权利要求1~9任一项所述的协同渲染方法中终端设备执行的各个步骤。
22.一种渲染装置,其特征在于,包括:
第一渲染模块,用于采用第一分辨率对待渲染的当前帧画面进行渲染,得到第一分辨率的第一渲染图和第一辅助渲染信息;
第一生成模块,用于利用所述第一辅助渲染信息对所述第一渲染图进行分解,得到对应的第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除所述第一渲染图中的高频信息后得到的渲染图;
输出模块,用于输出所述第一非纹理化渲染图。
23.一种渲染装置,其特征在于,包括:
获取模块,用于获取第一分辨率的第一非纹理化渲染图,所述第一非纹理化渲染图为去除第一分辨率的第一渲染图中的高频信息后得到的渲染图;
第二渲染模块,用于采用第二分辨率对待渲染的当前帧画面进行渲染,得到第二分辨率的第二辅助渲染信息,所述第二分辨率高于所述第一分辨率;
第二生成模块,用于基于所述第一非纹理化渲染图和所述第二辅助渲染信息进行超采样,得到所述当前帧画面对应的第二分辨率的第二渲染图。
24.一种电子设备,其特征在于,包括:
存储器,用于存储由所述电子设备的一个或多个处理器执行的指令;
处理器,当所述处理器执行所述存储器中的所述指令时,可使得所述电子设备执行权利要求1~9任一项所述的协同渲染方法中终端设备执行的各个步骤或者云端服务器执行的各个步骤。
25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,该指令在计算机上执行时使得计算机执行权利要求1~9任一项所述的协同渲染方法中终端设备执行的各个步骤或者云端服务器执行的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211457393.XA CN118045347A (zh) | 2022-11-16 | 2022-11-16 | 一种协同渲染方法、系统、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211457393.XA CN118045347A (zh) | 2022-11-16 | 2022-11-16 | 一种协同渲染方法、系统、装置、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118045347A true CN118045347A (zh) | 2024-05-17 |
Family
ID=91047177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211457393.XA Pending CN118045347A (zh) | 2022-11-16 | 2022-11-16 | 一种协同渲染方法、系统、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118045347A (zh) |
-
2022
- 2022-11-16 CN CN202211457393.XA patent/CN118045347A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11295515B2 (en) | Photon-based image illumination rendering | |
CN113015021B (zh) | 云游戏的实现方法、装置、介质及电子设备 | |
CN109600666B (zh) | 游戏场景中的视频播放方法、装置、介质以及电子设备 | |
AU2011317052B2 (en) | Composite video streaming using stateless compression | |
US10699361B2 (en) | Method and apparatus for enhanced processing of three dimensional (3D) graphics data | |
KR101345379B1 (ko) | 3차원 그래픽스 데이터 렌더링 방법 및 장치 | |
US20230421796A1 (en) | Methods and apparatus for foveated compression | |
KR20220124286A (ko) | 애플리케이션 계산들의 분배를 위한 방법들 및 장치들 | |
CN112596843B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN110827380B (zh) | 图像的渲染方法、装置、电子设备及计算机可读介质 | |
CN112843676B (zh) | 数据处理方法、装置、终端、服务器及存储介质 | |
CN111586412B (zh) | 高清视频处理方法、主设备、从设备和芯片系统 | |
CN111464828A (zh) | 虚拟特效显示方法、装置、终端及存储介质 | |
WO2022218042A1 (zh) | 视频处理方法、装置、视频播放器、电子设备及可读介质 | |
CN113496465A (zh) | 图像缩放 | |
CN116762337A (zh) | 一种用于生成自适应多平面图像的方法和装置 | |
CN103634945A (zh) | 一种基于soc的高性能云终端 | |
CN118045347A (zh) | 一种协同渲染方法、系统、装置、电子设备以及存储介质 | |
US20230147244A1 (en) | Methods and apparatus for occlusion handling techniques | |
CN116170636A (zh) | 直播视频播放方法及其装置、设备、介质 | |
US11587208B2 (en) | High quality UI elements with frame extrapolation | |
CN113842635A (zh) | 提升云游戏流畅度的方法及系统 | |
CN104737225A (zh) | 用于存储器带宽有效的显示合成的系统及方法 | |
KR102666871B1 (ko) | Ar 디바이스용 대용량 3차원 모델 출력 방법 및 장치 | |
CN116843808B (zh) | 基于点云的渲染、模型训练、虚拟形象生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |