写在前面:足球比赛精彩瞬间稍纵即逝,受限于观赛条件,球员们精彩表现常常无法被捕捉到最佳角度。在2022年卡塔尔世界杯中,基于自研的分布式离线云渲染技术,中国移动咪咕公司通过MFX虚拟环拍技术,在三维环境中重现球员姿态、运球轨迹、球门关系等专业裁判组才能看到的高维度信息,将高光时刻的可视化效果呈现给广大球迷这一期我们就一起了解背后的分布式离线云渲染技术。
全文约4500字,预计阅读12分钟
    背 景 篇    
本次世界杯中,卡塔尔官方基于“元宇宙”概念推出了3D动画宣传片。动画中,拉伊卜来自于一个虚拟宇宙——吉祥物宇宙,那里面有很多重大赛事的吉祥物,它们一起共同生活在这个平行宇宙中。 憨态可掬的拉伊卜形象、与其他吉祥物的有趣互动情节......萌翻了不少网友,社交媒体评论区关于这个可爱“饺子皮”的讨论,迅速登上热搜。可想要制作出这样细节满满、灵动有趣的3D短片,  背后离不开强大的“黑科技”——离线渲染技术的加持。
图1 离线渲染的应用
想要实现离线渲染,首先需要对物体建模,建模就是3D设计师在本地电脑利用三维设计软件对现实世界的人或物进行模拟,用点、线、面、贴图、材质、光影、特效等元素共同构建逼真的3D场景模型。之后,利用计算资源将3D模型转换为一张2D的图或是视频,呈现在屏幕上,这个过程我们称为离线渲染。
在整个3D短片制作周期中,3D设计师们需要进行多次的内容建模-渲染-调整-再渲染的工作周期。虽然渲染只是制作过程中的一个环节,但渲染时间通常会占到整个内容制作时间的一半,严重影响生产效率。
图2 3D短片制作周期
而随着行业渲染需求剧增的发展趋势,各种模型制作越来越复杂,越来越逼真,渲染所占用的时间在整个内容制作过程中比重将会进一步加大。传统的离线渲染早已无法满足行业发展需求,所以离线“云渲染”应运而生。
“云渲染”是近十年兴起的一项技术,主要服务于包括电脑动画、影视特效、建筑设计可视化、游戏以及商业广告等在内的CG制作企业,这些应用场景可分为两类:离线云渲染和实时云渲染。离线云渲染(也称为分布式离线云渲染),简单说就是我们不需要实时地看到渲染效果的场景,多见于上面所说的影视动画渲染,离线渲染的每帧画面都是由设计师预先绘制好的,然后每帧甚至可以再花数小时进行渲染。而实时渲染是需要实时观看画面的,计算机边计算绘制一帧画面边输出画面至显示器,更常用于3D游戏渲染,一般会为了实时交互体验而牺牲画面细节。本文主要是介绍离线云渲染的相关技术。
图3 传统渲染 VS 云渲染
和传统离线渲染方式相比,离线云渲染有很多优势。传统离线渲染一般只能依靠自身的一台机器进行作业,一旦某个作业开始渲染,你的电脑基本无法执行其他的工作。而离线云渲染是在云渲染平台的服务器集群上进行渲染,通俗一点讲,你只需要把本地电脑制作好但需要渲染的3D场景文件上传到云渲染平台,云渲染平台会调度多台,上百、上千甚至上万台云端高配置服务器同时帮你完成场景的渲染工作,其渲染速度是传统离线渲染的成百上千倍,能让设计师减少等待渲染的时长,及时交稿,赶上工期。比如,一组图片,平均每一张图片需要用1个小时的渲染时长,如果设计师提交100张图片,拿传统的离线渲染方式来讲,日夜兼程地渲染也需要100个小时才能完成。但若用离线云渲染的方式,100台服务器同时渲染这100张图片,1个小时就可完成渲染,直接节省了99个小时,而在这99小时里,设计师又可以创作更多的图片。接下来就带大家了解下离线云渲染背后的关键技术。
    技术篇    
分布式离线云渲染借助云计算思想,依托“一点接入、即取即用”的算力服务,基于分布式架构动态调度云端高性能算力集群,将1(算力)x100(小时)渲染任务转化为100(算力)*1(小时)进行渲染,大大提升渲染效率,且整体的渲染效率随渲染节点的增多而线性增加。下面我们详细看下分布式离线云渲染的架构、算力资源管理策略及分布式渲染技术。
1 整体架构
首先介绍下分布式离线云渲染的一般通用性架构。以云端算力为底座支撑,建设了文件管理、渲染任务的管理、渲染资源的管理等功能模块。根据渲染引擎对渲染任务进行分析,结合渲染任务大小,采样率、资源等维度将渲染任务进行智能拆分,统一调度多云异构的CPU、GPU等渲染资源,针对市面上众多主流渲染软件的进行松耦合集成,可满足不同的应用场景。
图4 云渲染架构图
接着介绍下离线云渲染的整个工作流程,如下图所示,可大致分为4步。首先用户上传素材文件至云端存储。然后用户再将任务提交至云渲染平台,云渲染平台调度多台云端服务器中的调度节点,调度节点会根据多维规则智能动态拆分渲染任务,再将渲染任务下发至空闲且可以满足渲染需求的渲染算力集群,完成渲染工作,并将结果回传给用户。最后,用户将渲染结果下载至本地,即可拿到最终渲染效果,所有的工作全部由云端处理完成。
图5 私有云/公有云渲染架构图
上图是云渲染的私有云或者公有云的架构模式,但是针对本地已有私有云机房的情况,当无法满足现有业务需求时,云渲染平台构建基于本地私有云,延伸到公有云的混合架构,统一调度利用公有云服务器的高性能与高弹性特点,按需弹性调度计算资源,灵活应对各类需求。
图6 混合云渲染架构图
2 算力资源管理
云渲染的一个核心关键就是算力资源管理调度能力,针对上面提到的私有云、公有云、混合云等不同的解决方案架构, 需要多云算力治理能力,调度不同的算力资源,屏蔽底层算力的差异,抹平不同业务对于算力的使用需求。
图7 算力调度示意图
云渲染平台创新自研的算力调度技术,将边缘计算节点、云计算节点以及含广域网在内的各类网络资源深度融合在一起,对各种计算资源如GPU计算资源,CPU计算资源,存储资源,网络资源等进行统一的建模抽象,使平台算力大脑与算力基座解耦,可以基于统一的模型对算力进行智能编排。
另外由于渲染业务的离散性,业务需求曲线呈明显的波动性,容易出现高峰时资源紧缺,低谷时资源冗余的难题。
图8 业务需求波动算力弹性伸缩示意图(源自阿里云
云渲染平台通过弹性伸缩调度能力,基于用户及云渲染平台整体的算力需求,动态调整从IaaS层获取的算力资源数量,在用户无需对系统、环境和数据做任何变更的情况下,自动对其实际需要的算力资源进行缩扩容,打破单节点的算力限制,提升应用并行计算可用的算力规模, 提升算力整体的使用效率。
在弹性伸缩能力应用上,一方面可以快速响应上层业务算力需求,另一方面也能够减少机器空耗,减少资源的浪费,节省业务运营成本,提高算力资源利用率。
3 分布式渲染
如何做到真正的高清高效分布式渲染,是云渲染最重要的竞争力之一,分布式渲染的前提就是任务拆分,任务拆分一般有分帧、分块、分层三种方式。
3.1 分帧渲染
根据用户提交的不同渲染引擎,任务大小,渲染分辨率、采样率的不同,结合云端算力规格和数量等多维度拆分规则,通过模型测算,智能动态的给出最优的帧序列拆分和编排,实现最优的分布式渲染,提升渲染效率。
图9 分帧渲染示意图
3.2 分块渲染
将待渲染区域划分成多块然后并行渲染的方式称为分块渲染,对视频图像进行拆分后,用多台机器同时渲染,可以实现在最短的时间看到超写实复杂单帧图像的最终的渲染效果。
图10 分块渲染示意图
分块渲染相较于传统的立即渲染增加了一个片上缓存(Tile buffer)。该片上缓存包含渲染这个方块所需要的颜色缓冲区、深度模板缓冲区。所以,渲染该方块的缓冲区访问都是片上操作,并且渲染完成后,只需要回写颜色缓冲区到显存(Frame buffer)即可,深度模板缓冲区不必写回。这样既提升了访存效率,又减少了访存操作。
3.3 分层渲染
CG(Computer Graphics计算机动画)生产中,最终渲染输出的时候几乎都要用到分层渲染。不同层指定不同材质,相同属性可以独立编辑,不同层指定不同渲染器,便于效果处理和修改。合理的分层渲染不仅能提高速度,而且可以方便地在后期渲染中进行多层并行的渲染提高渲染效率,因此分层渲染是生产流程中必不可少的一步。
图11 分层渲染示意图
通过分帧分块分层的模型拆分技术,切实地带来了渲染效率的提升,根据实测我们渲染效率随着资源数量呈线性的提升,例如一帧画面拆分4块同时进行渲染,时间缩短了4倍。一个视频拆分成50帧同时进行渲染,时间可以缩短50倍。
    应用篇    
离线云渲染主要应用于广告制作、影视动画、建筑模型等场景。其关注的重点是在美学和视觉效果,它追求的是“照片级的真实质感”,为了达到真实质感,设计师会耗费大量的时间在渲染上,在渲染过程中可以为了视觉的美感将模型的细节做得非常丰富,将贴图纹理、灯光等设计做到以假乱真的效果。
目前市场上离线云渲染的产品已经比较成熟。国内深耕行业多年且比较大型的离线渲染平台有瑞云、炫云、渲云等。这三家公司在影视特效、三维动画、家装设计等领域均有成功的渲染案例,如国内很多大火的影视作品《哪吒之魔童降世》、《长津湖》、《我和我的祖国》等,几乎都是由这几家老牌公司提供离线渲染服务。
图12 离线云渲染应用场景
现阶段,我们自研的分布式离线渲染、算力资源管理等技术,已经应用到了实际的生产工作,在卡塔尔世界杯中为内容生产提供了渲染支撑,最大化调度云端资源为世界杯精彩节目渲染提速增效。如“MFX虚拟环拍技术”再现世界杯高光瞬间的视频中,创作者在三维环境中再现球员姿态、运球轨迹、球门关系等可视化效果,并经过二次内容包装,将视频提交至我们的云渲染平台进行渲染,大大缩短了虚拟内容的渲染时长,让创作者能紧跟世界杯赛事热点,及时发布,让球迷们沉浸式感受世界杯球场上的精彩瞬间。
图13 我们的云渲染平台应用场景
    展望篇    
从行业发展来看,随着CG行业发展以及三维可视化在多领域的应用逐渐扩大,越来越多的行业需要提供可视化的服务,也促使云渲染行业有了很大的进步。比如房地产在云渲染的帮助下,可实现逼真的虚拟导游带客户去看房型;建筑行业创建手绘草图或模型成过去式,通过3D设计建筑师与客户能完美解决沟通的问题,还有室内设计、医疗、游戏等等行业。未来随着技术的更迭,通过云渲染等技术构建完美的“平行世界”。
现阶段,依托中国移动正在建设的算力网络,咪咕离线云渲染能更体现其基础设施优势、编排管理特点。目前咪咕公司与中国移动研究院正在协同参与Akraino的泛在算力调度开源社区项目,为离线云渲染在多云平台、边缘节点、端内计算等泛在计算环境提供了更加广泛和灵活的运算策略,并为离线云渲染与实时云渲染的协同计算提供技术支撑。
而近两年,随着“元宇宙”热度的不断升温,人们对虚拟世界的强烈渴望,激发了大众对其背后渲染等技术能力的关注和展望,同时也对“云渲染”提出了实时沉浸式交互体验这一更高的追求,对低延迟、高画质、云同步的挑战也空前加强。
相信在不久的将来,随着VR、元宇宙等应用的普及,底层硬件的进步,加上现有行业本身日益提升的需求,实时渲染技术的研发以及实时渲染稳定性的领先会是云渲染在未来元宇宙市场的立足之本,整个云渲染行业也会面临新一轮的起飞。
作者:晓艳、李圆圆郑彬戈、李小海、李琳、徐嵩、陈亚军、孙凯、毕蕾
编辑:张涛
审核:单华琦

卡塔尔世界杯科技系列往期回顾:

算力网络为赛事直播保驾护航

HDR Vivid 色彩光影的极致表现

智能字幕与数智人手语
智能搜索助精彩赛事精准直达
继续阅读
阅读原文