业界 | 皮克斯经典动画电影怎样炼成?离不开数学、模型和算法

简介:

Pixar用技术带领动画师摆脱简单多边形的束缚,用几何学把故事描述得更加完美。

82ef1b6e7c0ceb578b44beadd626a01b48902213

Tony DeRose在纽约数学博物馆讲厅的坐席间不断穿梭。他身着花哨的带扣T恤,一身Pixar员工的标准打扮,横竖看起来都不像印象中的刻板科学家。

他向观众席问好,其间坐着一群技术宅气质的小孩子、他们的爸爸妈妈、爷爷奶奶、数学老师、科学老师,当然还有年龄一把的数学宅及其朋友们。

一个二十来岁的小伙子,曾经在《汽车总动员2》的群体动画中有所贡献,把自己妈妈也带到了现场。这位母亲想见识一下DeRose是怎样带领团队把她儿子所做的工作搬上大荧幕的。

Derose说:“看到这么多各型各色的人都来听今天的演讲,感觉很棒。”登上讲台后,他问:“你们当中有多少人看过皮克斯(Pixar)的电影?”全场的人都举手了。“看过三五部的有多少人?”他停顿了一下,“那看过全部的呢?”最终有几十个观众举了手,差不多占到全场人数的四分之一。

动画师和游戏设计师也要研究微积分和组合数学

DeRose今天演讲的主题是“电影中的数学”。该主题就是他的本职工作:将算数、几何和代数的理论应用到软件中,从而渲染出物体或者驱动物理引擎。他解释说,无论是在皮克斯还是在其他电脑动画或电子游戏工作室,这道流程几乎是差不多的。

他今天在这儿的目的之一就是告诉大家,动画师和游戏设计师如果对事业有更高的追求,那么数学基础一定要扎实。

作为皮克斯的资深科学家,DeRose可不止是数学功底过硬,他还拥有计算机科学的博士学位,专攻计算物理学,曾在华盛顿大学做过十年的计算机科学与工程学教授。

DeRose此次演讲,是数字博物馆在曼哈顿中城新园区举办的“数学奇遇”系列演讲(Math Encounters lecture series)的首场。

在此之前,DeRose已经做过数次类似的演讲了,他每次都会分享皮克斯技术的新进展,回应粉丝们对新电影的期待。

8086e9b4066d2d0c25223443ec0f867f69f2f799

在皮克斯动画制作中,头发、衣服、液体和气状物(比如云、烟雾和火)都有各自的物理引擎。这些基础引擎会根据具体情况进一步得到增强,以生成更为精确的效果。

DeRose说,“模拟水不难,难的是,怎样让模拟出来的水更像真实的水,可以被引导着向某方向流动。”

在动画《勇敢传说(Brave)》中,女主角梅莉达那满头浓密的动感十足的亮红色卷发就需要全新的物理引擎来模拟。

工作室的动画师绞尽脑汁,要让梅莉达的头发漂亮、富于表现力,甚至比真头发还要真。当然,这样的秀发模型所需的计算量还得在计算机能承受的范围之内。

动画电影里的头发、衣服、液体和气体都有各自的物理引擎

DeRose说:“在现实世界里,发丝一直在发生着碰撞,这样才显得头发富有弹性且很浓密。梅莉达的头发包含了10万个单独的有限元。如果你懂点组合数学的话,就会知道,如果有n个物体,就会产生出n²种碰撞的可能。”

对于梅莉达的头发,那就是100亿种碰撞的可能了。怎样才能在短时间里渲染出这么多种头发碰撞的情形呢?

对此,皮克斯设计出了一个新的空间数据结构,在不会过度损耗的情况下剔除无用的碰撞可能。

皮克斯就是要针对头发模拟创造出PNG或FLAC这种高水准的压缩算法,摒弃MP3或JPEG这类虽然省时间但是很粗糙的算法。

620a981bb54f931c13bb5dc08366e71846e6bb29

DeRose提到,计算机动画通常要模拟超大规模且又十分精细的物理模型,与物理学家平时进行的科学计算相比有过之而无不及。他的主要工作就是为物理模拟寻找更优的算法,在保证规模的同时还要兼顾细节。

DeRose说,“导演经常说‘唉,这只是背景里一个很细微的东西,看不到的。’导演其实是在撒谎。”

如果导演哪天又冒出新点子,致使物体或角色的物理机制发生改变,整个模拟过程就得重头再来,那样即使皮克斯所有的四个团队同时开工,也没法保证一年出一部片子。

从多边形到曲面

DeRose对计算机动画制作最重要的贡献,就是设计出可快速生成高还原度的平滑曲线的算法,“主要问题就是将复杂的形状分解为计算机可以生成的图形。”

多年来,在计算机动画和电子游戏制中,都是用平面或多边形来表示三维物体。

然而,使用多边形的问题在于,放大细节看时还是能分辨出一个个多边形的棱角,尤其当略过单帧画面或个别像素时,就更容易产生这种错觉。业界的趋势是用曲面取代多边形,因为曲面在放大缩小画面时候都是平滑连续的。

但曲面仍然需要被迅速拆解成有限个数的点或者平面。对此,数学家发明了各种能快速生成平滑曲面的方法。这些曲面通常称为“细分曲面”(subdivision surfaces),因为他们是通过不断对线段取中点并连接而得出的。

206839848bafea71bb1aa8409928a74dd6eb674d

细分曲面在皮克斯出品的《棋逢敌手(Geri's Game)》中首次得到应用。这部动画获得了1997年奥斯卡最佳短片奖。相较于先前以多边形为基础的动画,这部动画实现了惊天动地的飞跃,一举奠定了“皮克斯风格”。

DeRose改进自己对多维曲面上小波计算的研究成果,设计出一个生成曲面的新算法。这一算法起初只是用来应对制作特别棘手的动画形象,比如老人的鼻子、衣服褶皱的摆动等。如今皮克斯电影里几乎所有物体都运用了细分曲面。

DeRose展示了《超人总动员(The Incredibles)》的一幅剧照,他指着画面背景说:“这座建筑、每一扇窗户,这些所有物体的细节都是用细分曲面生成的,也许你会为此感到惊讶。”

从Derose与其他计算机科学家在学术界做出的应用性研究,到个别动画短片的尝试,而今曲面细分算法已然成为CG动画的行业标准。

皮克斯、开源、和动画的未来

DeRose和他的皮克斯研究团队仍在持续发论文,并将新技术应用于他们的动画引擎。然而,皮克斯今非昔比,它的研发部门和专利软件已经不似从前在业界一枝独秀了。

以前,一个角色模型的光照和着色、定义各种动作的参数等问题,首先是数学上的难题,然后是写代码上的挑战。

但是如今,像Blender这样的开源软件,几乎可以媲美皮克斯自主研发的软件可以直接做这些了。2012年夏天,皮克斯竟然将自己细分曲面的代码库开源了。

对此,DeRose解释:“过去十年,我们皮克斯领先业界,但现在,我们得依靠大家的贡献才能创造更大的价值。”

皮克斯最大的竞争优势在于,它擅长以数学驱动技术,不满足于制作出更漂亮的图形,还要讲出更动人的故事。

DeRose和皮克斯并没有躺在已有的成就上睡大觉。DeRose对着观众席的孩子和大人说:“在某个地方的某个车库里,一个聪明的孩子和朋友们正在搞大事呢。他们不仅在用Blender这样的工具,还在改进工具。他们,将成为下一个皮克斯。”



原文发布时间为:2018-04-10

本文作者:文摘菌

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“大数据文摘”微信公众号

目录
打赏
0
0
0
0
73529
分享
相关文章
基于CS模型和CV模型的多目标协同滤波跟踪算法matlab仿真
本项目基于CS模型和CV模型的多目标协同滤波跟踪算法,旨在提高复杂场景下多个移动目标的跟踪精度和鲁棒性。通过融合目标间的关系和数据关联性,优化跟踪结果。程序在MATLAB2022A上运行,展示了真实轨迹与滤波轨迹的对比、位置及速度误差均值和均方误差等关键指标。核心代码包括对目标轨迹、速度及误差的详细绘图分析,验证了算法的有效性。该算法结合CS模型的初步聚类和CV模型的投票机制,增强了目标状态估计的准确性,尤其适用于遮挡、重叠和快速运动等复杂场景。
扩散模型=进化算法!生物学大佬用数学揭示本质
在机器学习与生物学交叉领域,Tufts和Harvard大学研究人员揭示了扩散模型与进化算法的深刻联系。研究表明,扩散模型本质上是一种进化算法,通过逐步去噪生成数据点,类似于进化中的变异和选择机制。这一发现不仅在理论上具有重要意义,还提出了扩散进化方法,能够高效识别多解、处理高维复杂参数空间,并显著减少计算步骤,为图像生成、视频合成及神经网络优化等应用带来广泛潜力。论文地址:https://arxiv.org/pdf/2410.02543。
39 21
一级倒立摆平衡控制系统MATLAB仿真,可显示倒立摆平衡动画,对比极点配置,线性二次型,PID,PI及PD五种算法
本课题基于MATLAB对一级倒立摆控制系统进行升级仿真,增加了PI、PD控制器,并对比了极点配置、线性二次型、PID、PI及PD五种算法的控制效果。通过GUI界面显示倒立摆动画和控制输出曲线,展示了不同控制器在偏转角和小车位移变化上的性能差异。理论部分介绍了倒立摆系统的力学模型,包括小车和杆的动力学方程。核心程序实现了不同控制算法的选择与仿真结果的可视化。
42 15
单纯接入第三方模型就无需算法备案了么?
随着人工智能的发展,企业接入第三方模型提升业务能力的现象日益普遍,但算法备案问题引发诸多讨论。根据相关法规,无论使用自研或第三方模型,只要涉及向中国境内公众提供算法推荐服务,企业均需履行备案义务。这不仅因为服务性质未变,风险依然存在,也符合监管要求。备案内容涵盖模型基本信息、算法优化目标等,且需动态管理。未备案可能面临法律和运营风险。建议企业提前规划、合规管理和积极沟通,确保合法合规运营。
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
382 13
机器学习算法的优化与改进:提升模型性能的策略与方法
Transformer打破三十年数学猜想!Meta研究者用AI给出反例,算法杀手攻克数学难题
《PatternBoost: Constructions in Mathematics with a Little Help from AI》提出了一种结合传统搜索算法和Transformer神经网络的PatternBoost算法,通过局部搜索和全局优化交替进行,成功应用于组合数学问题。该算法在图论中的Ramsey数研究中找到了更小的反例,推翻了一个30年的猜想,展示了AI在数学研究中的巨大潜力,但也面临可解释性和通用性的挑战。论文地址:https://arxiv.org/abs/2411.00566
93 13
深度强化学习中SAC算法:数学原理、网络架构及其PyTorch实现
软演员-评论家算法(Soft Actor-Critic, SAC)是深度强化学习领域的重要进展,基于最大熵框架优化策略,在探索与利用之间实现动态平衡。SAC通过双Q网络设计和自适应温度参数,提升了训练稳定性和样本效率。本文详细解析了SAC的数学原理、网络架构及PyTorch实现,涵盖演员网络的动作采样与对数概率计算、评论家网络的Q值估计及其损失函数,并介绍了完整的SAC智能体实现流程。SAC在连续动作空间中表现出色,具有高样本效率和稳定的训练过程,适合实际应用场景。
323 7
深度强化学习中SAC算法:数学原理、网络架构及其PyTorch实现
基于模糊PI控制算法的龙格库塔CSTR模型控制系统simulink建模与仿真
本项目基于MATLAB2022a,采用模糊PI控制算法结合龙格-库塔方法,对CSTR模型进行Simulink建模与仿真。通过模糊控制处理误差及变化率,实现精确控制。核心在于将模糊逻辑与经典数值方法融合,提升系统性能。
基于GRU网络的MQAM调制信号检测算法matlab仿真,对比LSTM
本研究基于MATLAB 2022a,使用GRU网络对QAM调制信号进行检测。QAM是一种高效调制技术,广泛应用于现代通信系统。传统方法在复杂环境下性能下降,而GRU通过门控机制有效提取时间序列特征,实现16QAM、32QAM、64QAM、128QAM的准确检测。仿真结果显示,GRU在低SNR下表现优异,且训练速度快,参数少。核心程序包括模型预测、误检率和漏检率计算,并绘制准确率图。
83 65
基于GRU网络的MQAM调制信号检测算法matlab仿真,对比LSTM
基于PSO粒子群优化的CNN-LSTM-SAM网络时间序列回归预测算法matlab仿真
本项目展示了基于PSO优化的CNN-LSTM-SAM网络时间序列预测算法。使用Matlab2022a开发,完整代码含中文注释及操作视频。算法结合卷积层提取局部特征、LSTM处理长期依赖、自注意力机制捕捉全局特征,通过粒子群优化提升预测精度。适用于金融市场、气象预报等领域,提供高效准确的预测结果。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等