电影、媒体与艺术
布料、烟、人群和光,由物理模型生成,而不是手工制作动画。
在计算机出现之前,电影和动画靠钢丝装置、微缩模型和手绘画面来近似物理。如今,模拟直接提供物理:垂坠的布料、飘动的头发、不会重复的人群,以及按现实世界方式传播的光。工程和科学的方法,被用来讲一个故事,而不是造一座桥或一座反应堆。它们被调整得看起来可信,而不是在物理上精确,而且常常离线运行,逐帧计算,而不是实时。音乐和图像共享一个想法:搭好底层的过程,让结果自己涌现。
布料模拟
把织物表示为一张由点和弹簧构成的网格,在重力和运动下垂坠、折叠和撕裂。
它回答的问题: 这件衣服如何在运动的身体上活动,而不必由动画师摆出每一道褶皱?
略去了: 真实的织物对它的折痕有记忆,而大多数布料求解器忽略了这一点。
运行于:约 1012 FLOPS 粗略 渲染农场的一个节点,渲染一个镜头的布料层自: 1987 到 1987 年,早期用于计算机动画的质点弹簧布料模型
毛发和皮毛模拟
数以万计的单根发丝,各自遵循自己的弯曲和碰撞规则,受风、重力和下面身体的带动而运动。
它回答的问题: 一头浓密的头发或一身皮毛,如何一根一根地逼真运动?
略去了: 发丝与发丝之间的摩擦只是近似处理。否则每次模拟都会超出生产进度所允许的时间。
运行于:约 1012 FLOPS 粗略 渲染农场的一个节点,渲染一个角色的头发层自: 1989 到 1989 年,早期的基于发丝的头发动画研究
用于特效的流体和烟雾模拟
火、烟、水、尘和爆炸被当作流体,在网格或粒子上计算,风格上追求它们应有的观感,而不是科学上的精确。
它回答的问题: 这次爆炸、波浪或烟柱在屏幕上如何运动、看起来怎样?
略去了: 是为了在画面里好看而设计的,而不是为了精确地保持能量或质量守恒。
运行于:约 1013 FLOPS 粗略 渲染农场的一份分配,渲染一个特效繁重的镜头自: 1982 到 1982 年,早期为电影生成的计算机流体和粒子特效
破坏与碎片模拟
建筑、车辆和物体被碎成块,由刚体物理抛开,调整得让坍塌看起来壮观,而不仅仅是正确。
它回答的问题: 这个结构如何破裂,碎片会落在哪里?
略去了: 真实的材料会不可预测地失效;这些断裂图案是预先设计好、为了好看的。
运行于:约 1012 FLOPS 粗略 渲染农场的一个节点,渲染一个破坏镜头自: 1995 到 1995 年,刚体断裂模拟被用于电影特效
肌肉与皮肤变形
数字人体的皮肤和软组织在动画骨骼和肌肉之上滑动、隆起和起皱。
它回答的问题: 这个生物或角色的身体运动起来,像不像真有软组织?
略去了: 皮肤在骨头上滑动,目前大多仍是近似处理,而不是真正模拟出来的组织。
运行于:约 1012 FLOPS 粗略 渲染农场的一个节点,渲染一个角色的身体层自: 1999 到 1999 年,用于计算机动画角色的基于肌肉的形变绑定
用于动画的刚体动力学
在重力和摩擦下碰撞、堆叠、滚动并静止的固体物体,用来给道具和次级运动做动画,而不必手工设定每一次弹跳。
它回答的问题: 这堆物体受到扰动后,如何翻滚并停稳?
略去了: 物体偶尔会相互穿透或抖动,这是任何真实事物都不会有的。
运行于:约 1011 FLOPS 粗略 工作站,处理一个镜头的道具模拟自: 1988 到 1988 年,刚体物理被用于计算机动画
基于位置的动力学
布料和软体等物体通过直接调整点的位置来满足约束而运动,这样既快又稳定。
它回答的问题: 怎样才能让可变形物体的模拟快到可以交互使用?
略去了: 在物理上并不精确,刚度还取决于步数。
运行于:约 109 FLOPS 粗略 在一块 CPU 或 GPU 上实时运行自: 2007 Position based dynamics (2007) 来源
海面合成
由波谱生成的水面,用来渲染有涌浪和泡沫的开阔海面。
它回答的问题: 在给定风力和水深下,大海是什么样子?
略去了: 它模拟的是表面形状,而不是下方完整的流动或大浪的破碎。
运行于:约 1012 FLOPS 粗略 工作站,每帧数分钟自: 1986 到 1986 年,Fournier and Reeves, A simple model of ocean waves 来源
粒子系统特效
火、火花、烟和飞沫被画成成千上万个短暂存在的点,每个点都有自己的运动和外观。
它回答的问题: 模糊的事件怎样才能表现为一团各自独立运动的点?
略去了: 各点之间没有相互推挤,所以没有真正的流体行为。
运行于:约 1010 FLOPS 粗略 笔记本电脑,实时自: 1983 到 1983 年,Reeves, Particle systems(用于一面火墙特效) 来源
雪和颗粒材料模拟
雪、沙和类似材料被模拟成带有应力的点,因此会像真实材料那样堆积、断裂和结块。
它回答的问题: 雪在受到挤压时如何压实、断裂和流动?
略去了: 晶粒尺度的冰物理被一条平均化的材料定律取代。
运行于:约 1014 FLOPS 粗略 渲染农场,每个镜头数小时自: 2013 到 2013 年,Stomakhin and others, A material point method for snow simulation 来源
数字人群模拟
成千上万个单独的人物,各有简单的移动和避让规则,挤满体育场、战场或街道,而不必一个个做动画。
它回答的问题: 这么大规模的人群,如何作为一个整体移动、逃散或战斗?
略去了: 后排的每个人物,往往移动得都有点太相似。
运行于:约 1012 FLOPS 粗略 渲染农场的一份分配,渲染一个人群镜头自: 1997 到 1997 年,基于智能体的人群系统被用于故事片的战斗场面
数字人与面部
面部的肌肉、皮肤和微表情被建模得足够好,可以让合成表演看起来像真人。
它回答的问题: 这张合成的脸,能否像它所依据的真实面孔那样令人信服地传达情绪?
略去了: 眼睛和嘴角仍是最难令人信服地重现的区域。
运行于:约 1013 FLOPS 粗略 渲染农场的一份分配,渲染一个主角的面部自: 2001 到 2001 年,用于电影的高分辨率面部捕捉与模拟
程序化城市与地貌
街道、建筑、地形和植被由规则和随机性根据少量参数生成,而不是人工布置。
它回答的问题: 一整座城市或一整个大陆,如何用无法逐一手工摆放的细节填满?
略去了: 生成的城市在统计上往往合理,却没有任何具体的历史。
运行于:约 1012 FLOPS 粗略 工作站或渲染农场节点,构建一个环境自: 1982 到 1982 年,计算机图形学中使用的分形地形生成
虚拟制片棚
计算机生成的环境实时显示在演员身后的大屏幕上,用摄影机拍摄,场景会随镜头的移动而变化。
它回答的问题: 背景能否实时响应摄像机,而不必事后再添加?
略去了: 真实演员与其身后屏幕之间的光照匹配仍不完美。
运行于:约 1013 FLOPS 粗略 一组游戏 GPU 集群,实时驱动舞台屏幕自: 2019 到 2019 年,大型 LED 虚拟制作摄影棚被广泛使用
数字生态系统与植被
森林、草原和动物种群被一起生成并制作动画,植物争夺光照,动物在其中穿行。
它回答的问题: 由植物和生物组成的整片模拟景观,看起来和动起来是什么样子?
略去了: 模拟的生态系统被调得郁郁葱葱,而不是像真实的那样保持平衡。
运行于:约 1012 FLOPS 粗略 渲染农场的一个节点,渲染一个环境的生态层自: 2000 到 2000 年,用于电影环境的程序化植被和生态系统工具
大气与天空模拟
云、雾、雨和天空的颜色,由光散射和水汽的物理模型生成,用于场景的天气,而不是真实的天气。
它回答的问题: 不必挑对的日子去拍摄,这个镜头里的天空和天气应该是什么样?
略去了: 调校的是天空应该看起来的样子,而不是真正的大气物理。
运行于:约 1012 FLOPS 粗略 渲染农场的一个节点,渲染一个环境的天空层自: 1986 到 1986 年,基于物理的天空和云渲染模型
神经虚拟形象
在一个人的多相机拍摄数据上训练的神经网络,渲染出逼真、可做动画的面部或身体。
它回答的问题: 虚拟人物能否被渲染得与真人无法区分?
略去了: 需要采集每个受试者,而且行为不是生成出来的。
运行于:约 1013 FLOPS 粗略 每人一份训练自: 2018 Deep appearance models for face rendering (2018) 来源
虚拟偶像与网红
一个用计算机图形渲染的虚构表演者,被当作名人来运营,出现在媒体和社交动态里。
它回答的问题: 观众会对一个没有身体的表演者产生依恋吗?
略去了: 这个角色是由团队写出来的;没有模拟任何自主的内心生活。
运行于:约 1011 FLOPS 粗略 工作站,近乎实时地渲染自: 1996 到 1996 年,伊达杏子(Kyoko Date),由 Horipro 推出的 3D CG 偶像 来源
虚拟演唱会
在共享的虚拟世界或游戏引擎中举办的现场演出,有虚拟形象、舞台效果和远程观众。
它回答的问题: 观众只以虚拟形象在场,能否共同分享一场音乐会?
略去了: 观众反应和人群的临场感,与真实场馆相比很单薄。
运行于:约 1012 FLOPS 粗略 数据中心,实时运行,服务数千名观众自: 2006 到 2006 年,Duran Duran 乐队在 Second Life 中演出 来源
数字祛龄
演员的脸被重建成三维,并重定向到更年轻或更年老的年龄,由演员自己的表演驱动。
它回答的问题: 能否在保留演员表情的同时,让一张脸呈现另一个年龄?
略去了: 结果是一个外观模型;没有模拟任何衰老的生物学。
运行于:约 1013 FLOPS 粗略 渲染农场,每个镜头数小时自: 2008 到 2008 年,《本杰明·巴顿奇事》,由 Digital Domain 制作特效 来源
表演捕捉的数字角色
计算机生成的角色,由演员录制的身体和面部动作驱动,合成进实拍画面。
它回答的问题: 演员的动作能否驱动一个看上去与人毫不相似的生物?
略去了: 没有为肌肉和思维建模,只有捕捉到的动作。
运行于:约 1011 FLOPS 粗略 工作站,每个镜头数小时自: 2002 到 2002 年,《指环王:双塔奇兵》中的咕噜 来源
L 系统植物建模
通过不断把一串符号改写成分枝结构来生长植物的形状,再画成树和叶。
它回答的问题: 什么样的简单重写规则能产生给定的分支形状?
略去了: 这些规则拟合的是形状;推动真实生长的化学和光照竞争并不存在。
运行于:约 108 FLOPS 粗略 笔记本电脑,数秒自: 1968 到 1968 年,Lindenmayer, Mathematical models for cellular interactions in development 来源
机器电影
通过在实时游戏引擎里指挥角色和摄像机来拍摄的电影,而不是用实体摄影机或离线渲染器。
它回答的问题: 在一个只存在于游戏引擎里的世界中,能拍出什么?
略去了: 引擎决定能展示什么;行动只限于它的控制所允许的范围。
运行于:约 1011 FLOPS 粗略 游戏电脑,实时自: 1996 到 1996 年,Diary of a Camper,用 Quake 引擎制作的短片 来源
机械电子人偶
由电机驱动的人和动物机械人偶,表演预先设定好的动作和言语。
它回答的问题: 机器能多逼真地扮演一个活生生的生物?
略去了: 动作是从录制内容重放的;没有感知或决策。
运行于:没有任何计算机。机械控制器,不涉及计算自: 1963 到 1963 年,迪士尼的 Audio-Animatronics,Enchanted Tiki Birds 来源
基于物理的角色控制
在物理引擎里,用强化学习训练一个有关节和肌肉的虚拟身体去移动、跳跃或格斗,模仿动作捕捉的片段。
它回答的问题: 一个角色能否不靠手工动画,自然地保持平衡和移动,并对推搡做出反应?
略去了: 风格只来自它所复制的片段,罕见的动作和精细的手部工作处理得很差。
运行于:约 1015 FLOPS 粗略 每项技能在 GPU 工作站上数天。自: 2018 Peng 及同事的 DeepMimic,以示例引导的深度强化学习获得基于物理的角色技能。 来源
基于物理的光传输
从相机出发反向追踪光线,让光线在每个表面上反射、穿透,计算出物理上自洽的图像。
它回答的问题: 光在这个场景里如何一次次反弹,而不是被近似处理?
略去了: 收敛很慢,所以噪声仍然靠启发式方法压制,而不是靠取更多样本。
运行于:约 1014 FLOPS 粗略 渲染农场的一份分配,跨多个节点,渲染一帧自: 1986 Kajiya 1986 年的路径追踪算法
声传播与声学
声波在虚拟的房间、城市街道或战场中反射、吸收和衍射,被追踪或建模,用于电影和游戏音频。
它回答的问题: 考虑到形状和其中的材料,这个空间实际上听起来应该是什么样的?
略去了: 真实的耳朵和房间有各种特质,而声学模型通常把它们理想化了。
运行于:约 1011 FLOPS 粗略 工作站,处理一个场景的声学层自: 1968 到 1968 年,基于射线的室内声学建模
乐器的物理建模合成
把弦、簧片、鼓皮或管当作振动的物理对象来建模,直接计算来产生它的声音,而不是录制或采样。
它回答的问题: 这件乐器的声音听起来会怎样,是根据它的物理计算出来的,而不是录下来的?
略去了: 捕捉到的是乐器的物理,而不是演奏者数十年的技巧。
运行于:约 1010 FLOPS 粗略 在笔记本电脑或合成器上实时运行自: 1983 到 1983 年,振动弦的数字波导模型
生成艺术系统
让规则、随机性或简单主体向前运行,生成图像、图案或作品。光凭规则并不能事先完全写明结果。
它回答的问题: 如果只是任由这个过程运行,它会呈现什么形状?
略去了: 艺术家选择保留哪些随机运行的结果,所以“生成式”作品仍然包含大量的人工筛选。
运行于:约 109 FLOPS 粗略 在笔记本电脑上运行数秒到数分钟自: 1965 到 1965 年,早期依据算法规则生成的计算机艺术
程序化与生成式音乐
让音乐规则、马尔可夫链或简单主体向前运行,生成旋律、和声或不断演变的配乐,并对屏幕上发生的事作出反应。
它回答的问题: 如果这套规则不断生成,而不是由作曲家选择每个音符,它会产生什么音乐?
略去了: 听起来往往称职,却很少让人意外,而这正是规则所允许的。
运行于:约 109 FLOPS 粗略 在笔记本电脑上实时运行自: 1957 伊利亚克组曲,一部早期基于规则的计算机作曲
程序化纹理与材质生成
木纹、锈迹、皮肤毛孔或岩层之类的表面图案,由噪声和简单的物理规则生成,而不是手绘或拍摄。
它回答的问题: 这个表面近看应该是什么样子,用生成的而不是拍摄的?
略去了: 基于噪声的纹理可能在某个尺度上看起来均匀,而真实表面绝不会这样。
运行于:约 1010 FLOPS 粗略 工作站,为一个资产生成纹理自: 1985 到 1985 年,计算机图形学中 Perlin 式的程序化噪声纹理
基于物理的音效
撞击声、滚动声和刮擦声由模拟物体的形状、材质和接触方式合成,而不是播放录音。
它回答的问题: 这种材质的物体撞到那个表面时,会发出什么声音?
略去了: 振型模型是靠耳朵调出来的,没有考虑向真实房间的辐射。
运行于:约 109 FLOPS 粗略 笔记本电脑,实时自: 2001 到 2001 年,van den Doel, Kry and Pai, FoleyAutomatic 来源
现场编码的音乐与视觉
表演者当着观众的面编写并修改正在运行的代码,所以声音或图像会随着程序的编辑而演变。
它回答的问题: 在演奏时改写规则,音乐会有什么变化?
略去了: 模拟就是程序本身;没有对任何实物建模。
运行于:约 108 FLOPS 粗略 笔记本电脑,实时自: 2004 到 2004 年,TOPLAP 小组成立,旨在联合现场编码社区 来源
神经场景渲染
用一组照片拟合的神经网络存储场景的光照和密度,因此可以从任意相机位置渲染出新视角。
它回答的问题: 从没人拍过照片的角度看,这个地方是什么样子?
略去了: 它在照片之间插值,并在没有拍摄的地方凭空编造细节,所以远离原始照片的视角不可靠。
运行于:约 1015 FLOPS 粗略 一个场景需要数小时的 GPU 时间,大型场景要一天。自: 2020 Mildenhall 及同事的 NeRF,把场景表示为神经辐射场,用于视图合成。 来源