首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

提高Blender渲染效率的几大妙招

对于所有的3D动画制作来说,耗时最长的往往不是建模和着色,而是一帧一帧地等待动画渲染,要知道哪怕一条只有5分钟的动画,如果是30帧/秒,也意味着有9000帧需要渲染,如果哪怕渲染每一帧都只需要1秒,也要等待2.5小时才能完成,要知道现实中的动画渲染,单帧不可能达到这么高的效率,如果遇到复杂场景,5分钟的动画短片渲染一周都不算稀奇,所以,如何节约渲染时间,提高工作效率就成了各位动画爱好者从一开始就应该学习的重点。

01

GPU加速

选OptiX,不选CUDA,记得取消CPU加速

Blender的Cycles渲染器可以使用GPU加速功能,在“编辑”菜单下的“偏好设置”里可以找到“系统”设置,此时如图1所示可以看到“Cycles渲染设备”有多个选项,这时候我们就要小心选择了,对于大多数NVIDIA显卡玩家来说,可能会优先选择CUDA,毕竟这是NVIDIA的招牌技术之一,名气很大。而且在渲染设备里可以同时勾选GPU和CPU,从逻辑上来说“一个好汉三个帮”,让它俩同时工作,效率应该就是最高的,但果真如此么?

图1   

我们用实际测试来进行对比吧,分别采用CUDA加速同时勾选CPU+GPU和只选择GPU,以及另一个大家可能没听说过的OptiX加速,同样是同时勾选CPU+GPU和只选择GPU,其他设置一概不动。从测试成绩表1可以看到,CUDA加速的速度比OptiX慢,而同时勾选GPU+CPU要比只勾选GPU更慢,有没有一种很“反直觉”的感觉?

事实上,大家没怎么听说过的OptiX加速,才是更适合Cycles渲染器的加速模式,因为相对于通用型的CUDA,OptiX专为光线追踪设计,能够更充分地利用NVIDIA RTX系列GPU中的RT Core进行高效的光线追踪计算,更适合处理具有复杂光照效果的场景,能够在渲染时提供更精确的光照和阴影效果,而且显著提高渲染速度。因此我们在选择Cycles GPU加速时,NVIDIA显卡用户一定要首选OptiX加速,AMD显卡用户相对简单一些,只需要选择HIP加速即可。

至于CPU+GPU模式的不足,就是典型的1+1<2的代表,因为图形渲染注重并行算力,这恰恰是CPU不擅长的部分,让它参与到渲染流程就意味着GPU反倒需要放慢节奏来等CPU完成工作,从而导致渲染速度下降,所以大家在进行Blender渲染硬件时一定不要贪心,只选择GPU即可。

图2,CUDA加速,CPU+GPU同时勾选,速度最慢 

图3,OptiX加速,GPU单独输出,效率翻倍

综合来看,效率差距可以达到1倍左右,还是以刚刚那个5分钟动画渲染为例,哪怕单帧从1秒变2秒,也意味着要多等待足足2.5小时,更何况这还是单帧12秒和6秒的差距,如果你做的是时长更长的动画呢?所以正确选择加速设备和方式非常非常重要!

Blender的Cycles渲染可以通过降低采样精度来提高速度,但并不是采样精度越低越好,因为采样精度也直接关系到渲染画质,如果你是渲染单帧静态图片就不需要去大幅降低采样精度,但如果是渲染动画,考虑到观众在观看动态画面时,对细节精度的注意力其实基本都集中在画面主体上,所以我们完全可以一定幅度地降低采样精度,只要保证看得过去就行。 

以图4为例,我们将采样精度从16下调到8,不细看的情况下其实差别不大,如果是动画短片,这种画质区别就更难以被观众感知到了,最重要的是单帧渲染时长从36秒下降到了21秒,整体工作效率大幅提升。

图4

除此之外,渲染降噪器其实也需要正确选择,Blender默认会选择OpenImageDenoise降噪器,但这个降噪器的工作效率其实并不是最高的,图4的样张,它需要22秒多才能完成,而效率最高的降噪器还是咱们已经认识的OptiX降噪器,21秒即可搞定,虽然差距不像调整采样精度或硬件加速器来得那么直观,但还是那句话——当你需要渲染非常多帧动画的时候,每一帧节约一秒,总体就能节约几小时,这就是规模效应。

03

整理顶点数量,调低模型复杂程度

模型复杂度其实也是直观影响渲染效率的核心要素之一,这也是为什么我们在制作骨骼绑定动画时一定要选择低精度模型来操作的原因,只有这样才能保证制作、调整、修改的流程会更加高效。

图5

渲染也是同样的道理,以图5为例,当我们将内部的体积立方体分辨率设置为256,256,256时,整个场景有83000个顶点,此时使用最佳渲染设置只需要15秒就能完成渲染。

但如果将体积立方体的分辨率增加到384,384,384,此时的场景顶点总数来到了21万个,此时再进行渲染,单帧所需时长就增加到了23秒。而从画面观感来说,两者虽有差别,但如果是渲染动画的情况下,不至于为了这一点画质提升就在效率上进行妥协。

图6

所以如果你的模型也比较复杂,建议就通过一些合理手段来降低它的顶点数量,比如降低细分登记,如果没有采用细分,或者已经应用了细分,那么也可以使用“精简”修改器的“塌陷”功能,按比例减少顶点数量,如图6所示,猴头在未使用“精简”修改器之前足足有12万个顶点,而在0.2倍塌陷设置下,顶点数量下降到了2.5万,渲染效率大幅提升的情况下,面型也保持在没有瑕疵的状态,比较理想地去除了额外的算力负担,值得大家在自己的项目里多多研究。 

微信订阅

邮发代号:77-19

单价:8元,年价:408元

编辑|张毅

审核|吴新

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OTrkL1UBgp-l2cBGg495pp0Q0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券