皮克斯华人CG老鸟深圳创业!低代码实现好莱坞大片特效,北大图形学大牛:绝代双骄CG产业聚首

金磊 杨净 发自 凹非寺

量子位 报道 | 公众号 QbitAI

嘿!瞧这行云流水的飘移,还有这丝滑的运镜,很飒啊。

友友们,是不是好奇它是咋拍出来的,又是经哪位大导执手?

但真相往往令人不可思议。

它,并不是拍出来的,而是CG技术搞出来的!

别急,还有更意外的。

是连“高中生”都能hold得住的那种!

这就是来自国产特效开发系统ZENO的力作,也即将在SIGGRAPH ASIA 2021中亮相。

效果之惊艳,甚至被会议的reviewers评价道:

推动了视觉领域的新SOTA!

Push the new visual SOTA!

这项研究背后团队,更是不容小觑——计算机图形学大牛张心欣创办的泽森科技(ZenusTech)

一作则是来自KAUST,以及还有来自UCLA的科研人员。

北京大学陈宝权教授曾经这样评价道:

中国CG-物理模拟领域有两位新秀,一南一北,很是热闹。

改变视觉SOTA的效果

现在先来仔细回忆一个事儿:

是不是在我们看大片的时候,船只在海上的镜头,经常是处于近景状态?

例如这样的:

△《加勒比海盗3》截选片段

而且在特效电影中,很少会有镜头给到中景或是远景。

就更不要提从近景到远景一气呵成的那种了。

这其中非常重要的原因就是,视觉特效的仿真模拟计算,只能在有限的区域内进行计算:

例如上图所示的那样,现在仿真技术只能是在“有界”(bounded)内,处理三维水体运动形态解算。

换言之,镜头若是一旦超过了这个范围,那就会造成我们经常说的“穿帮”了。

而张心欣团队的工作,之所以能得到reviewers们如此高度的评价,就是解决了这一痛点:

构造出了目前已知能仿真最大体积大范围海水的方法。

而且采用的还是最高效的计算手段。

也正是通过这样的方法,研究者们成功将原本只能在近景产生的逼真效果,传递到了一个“无穷大”的海面上。

不仅如此,还真实地创造了一个比三维解算深得多的“深海”, 给近海面处水体的运动, 提供了正确的运动边界条件。

那么顶级影视公司采用的技术,不好用吗?

可以做一个对比来看下效果。

左右两侧的效果,与中间的参考解相比,可以说是有肉眼可见的差距了。

而与更多的其它方法做对比后,也明显可以发现,该项研究中的方法,既能得到准确的波形,也能得到更多的水流细节。

现在再来回头看下本文最初的那个特效,在基于这样的方法之下,可以看到前面的船产生的浪花,甚至会影响到后面船体产生的浪花形态。

对于这样的效果,用张心欣的话来说就是:

化有界为无界,便可以追求拟真的更高境界。

如何实现逼真动画?

要想回答这个问题,就需要先了解一下边界元技术。

这个技术通常对流体运动做有势无旋的假设,把大规模水体的NS方程(纳维-斯托克斯方程),简化成了伯努利方程

这就使原本需要在三维网格求解方程的问题,转变成只需在水体表面上定义和求解拉普拉斯方程。

再简单来说,就是把原先复杂的三维问题,降到了二维层面来解决。

但流体相比于刚体等,自身就是属于最难的那种场景,加之理论上又存在于诸多局限性。

所以边界元方法即便是处理流体问题,也不会在复杂的情况下多见。

例如因为积分的奇点、控制方程的非线性,、拓扑变化难以处理等问题,就算是数学论文中的BEM,通常只能求解到波峰开始破碎的时刻。

怎么破?

理论不足,“工程来凑”:

该项研究提出的解决办法,将边界元方法发展成了一种具备稳定性,独立地就能模拟复杂水体动力学的技术。

具体而言,就是将边界元技术与传统的FLIP水体仿真方法,进行融会贯通。

例如在上面这个例子中,就不存在三维仿真解算的问题。

所有的计算未知量、计算的时间积分量,都仅仅存在于水体表面网格上。

这样一来,就大大减少了计算的内存或时间消耗。

也正是基于这样的计算优势,这种方法就非常适用于大面积、大范围、大体积水体运动的仿真。

△左侧为混合BEM-FLIP的案例, 右侧为纯三维仿真的参照。

除了技术理论上的研究,泽森的研究人员们为了让更多人能够实现诸如此类的特效,还特意打造了一个特效开发系统——ZENO

这个系统不仅仅支持大量先进高级编程语言特性,更大的亮点就是低代码

像文章开头的那张特效,甚至不需要敲任何代码就可以实现!

而操作方面也是极度舒适,是“连连看”的那种:

甚至连ZENO中的流体动力学、固体动力学、分子动力学解算器,都是ZENO团队自己用节点编辑器,而非C++代码开发出来的。

苦特效从业者久矣的另一个问题,就是开发高性能GPU代码。

这一点上,ZENO也提出了自己独特的尝试(此处特别赞扬@archibate, @littlemine)

它内置的脚本语言是ZFX,结合ZENO的wrangler一起使用,可以在CPU和GPU上无差别运行

此外,ZENO还提供了一系列好用的工具来帮助人们快速地构建场景。

对于几何形状的CSG操作:

对中间的开发步骤进行可视化:

从几何形状产生大量仿真运算的粒子:

并且,ZENO还具备完整的嵌入式计算开发工具链。

同样是在无需代码的情况下,就可以把ZENO编辑器开发的计算图,直接导入到C++交互式项目中使用,以此来处理物理计算部分:

不仅如此,在移动端(安卓)也可以进行高精度高性能计算!

而且ZENO团队还非常贴心地附上了案例使用教程

感兴趣的友友们,文末自提哦~

从皮克斯走出来的CG大神

能实现如此逼真效果,团队实力自然不容小觑。

那么最后,就再来说道说道背后的灵魂人物张心欣,以及他的初创公司——泽森科工

与CG(计算机图形学)的缘起,得从张心欣的高中时期说起。

跟如今常提到的天才少年不同,他是个严重偏科的游戏小子。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://didaima.org/?id=617

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。