新智元报道

来源:Dhruv Govil    编辑:小匀

【导读】当谈论特效电影时,Python常常被我们所忽略,特效工作者小哥Dhruv Govil要为Python「平反」,他写了篇博客讲述了在动画电影制作的每一个环节,Python都能为特效师们提供极大的便利!

谁说程序员都是没有感情的代码机器?

其实,电影工业的技术方面就是程序员艺术性的一面。

一个从事影视后期的pipeline开发者小哥写了篇博客,讲述Python如何被特效电影所「重用」!

Python:动画故事片的幕后操作手

Python是一种易于读写的编程语言,在过去几年里,它已经成为电影制作过程中不可或缺的一部分。几乎在所有动画长片或视觉特效电影中,Python都发挥了很大的作用。

今天的电影产业在很大程度上仍然依赖于Python 2.7。

此后会完全过渡到Python 3。

在后期制作中,Python的最大用途是在故事片pipeline中。

下图形象地描述了工作室的流水线。pipeline是将每个部门连接在一起的箭头,确保每一步都能很好地协同工作。(不同工作室之间可能略有不同,但大体都是如此)

电影制作流水线概述:Storyboard /Footage/Previs(分镜脚本等)是我们获取故事资源的途径,而Compositing/Lighting(合成/照明)则是电影的最后阶段。但视觉效果电影与动画电影略有不同,因为你以分镜的形式额外添加电影镜头元素。

如果你觉得图标不够直观,那这部《料理鼠王》的后期制作过程就能帮你get到,注意看右下角的标注:

在各个环节中,Python可以说是给后期人员提供了大大的便利。

建模Modeling

建模负责创建其他部门使用的3D源几何图形。这里将涉及到相当多的几何图形,常常令后期师们眼花缭乱。

这就是 Python 派上用场的地方。大多数3D软件包都有一个 Python API,可以让你手动编写所有需要编写的程序。

使用Python创建自定义变形器或交互式工具会变得更加复杂,如下图演示的一样:

一些非常有趣的基于Python的建模工具

套索Rigging

套索工具负责创建一个人物几何骨架,就像一个真正的人一样变形。

Python在操纵中起着不可或缺的作用。以下是一些用法:

  • 开发自定义变形器或节点来执行非应用程序本地的操作。

  • 制造自动化的套索工具。无需手动完成所有工作,可以使用代码组合平台,这使得它们易于重用。

  • 为动画师开发在模式或控件之间切换的支持脚本。

动画Animation

动画,本质上是一个创造虚拟演员的工作。

但这个过程会包含很多重复性的动作,利用Python脚本,这些动作可以被处理掉,或者简化掉。

比如:

  • 选择控制器。把杂乱无章界面变得整洁

  • 创建键。特别是中间键。在2D时代,动画师会定义在键之间(在姿势之间赋予动作的键)作为一个姿势的权重。在3D中,我们可以使用工具来帮助动画师设定新键比旧键重30%的权重

  • 设置约束.。角色会拿起某些道具,因此动画师必须保证角色和手中的道具被捆绑在一起。

我们开发的大多数工具都是用Python来做这类事情的,但大多数用户界面都是通过PyQt或Pyside来完成的。

角色特技Character FX

现在,我们已经完成了基础性工作,下一步,我们要考虑肌肉,头发和布料这些深层次的视觉效果了。

从《长发公主》里飘逸的裙子,到《精灵旅社》里疯狂的发型,再到《自杀小队》里的肌肉模拟,这些都是由FX处理的。

这是使角色逼真最重要的一步。

《精灵旅社2》中的服装是如何被模拟的

就像之前的工作一样,Python在这里也大有用途。

例如:

  • 设置模拟

  • 将多次模拟结合起来

  • 创建全新的程序化工作流

特效FX

这是一个与角色 FX 完全不同的工作, 破坏建筑物,爆炸,魔法粒子,甚至整个海洋。这里也在很多方面使用 Python,包括设置过程效果图和脚本参数,否则手工操作会很耗时。

Python甚至可以用来创建产生有趣效果的整个过程节点,这是非常强大的。

照明Lighting

现在所有的3D几何图形都已经创建好了,我们需要把它转换成可以在屏幕上显示的图像,但是如果我们直接这样做,画面会是黑色的。

皮克斯开发的渲染引擎

即使在这里,Python也是非常有用的,因为一个场景可能有很多很多的灯光和很多很多的3D资源。在这里,我们可以创建帮助管理这些场景的UI。

通常一个场景中会有数十亿,甚至数万亿的对象,这些对象可以被提炼成简单的用户界面。

合成Compositing

终于到合成了。

人们通常认为视觉效果是夸张的爆炸或奇奇怪怪的生物,但它也可以是一些细微的东西,比如背景替换,或者增加人群。

大多数人都没有意识到,即使是像《阿甘正传》这样看似简单的画面,也要花费多少工作

合成不是单纯的组合,而是使画面具有整体感,这一点并不容易。

Python可用于在Nuke等应用程序中自动设置合成节点图,但也可用于使用OpenColorIO或Pillow等库本身执行整个图像处理操作。

我们甚至可以使用 Python for Computer Vision 来帮助跟踪场景中的对象。

在动画电影中,Python经常被忽视,因为看起来它似乎不是艺术过程的一部分。

你很少能在屏幕上看到它的直接结果,但是,它是一个越来越有价值的工具,让日益复杂的电影登上屏幕。

参考链接:

https://www.gfx.dev/python-for-feature-film

由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:

(1)点击页面最上方“小詹学Python”,进入公众号主页。
(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。
感谢支持,比心。

皮克斯动画特效太好,但特效师容易「手抖」,还好Python来帮忙相关推荐

  1. 宋祖儿和张新成配音《疯狂元素城》,皮克斯动画新作将于6月16日登陆中国内地...

    美通社消息,由中影发行,迪士尼·皮克斯动画工作室出品的全新力作<疯狂元素城>(Elemental)即将于6月16日登陆中国内地,影片中文配音阵容正式公布,两位新生代人气演员宋祖儿和张新成分 ...

  2. Pixar Shorts 皮克斯动画短片全集

    [原创短片](Theatrical Shorts)16部 <安德鲁和威利冒险记><顽皮跳跳灯><红色的梦><锡铁小兵><小雪人大行动>< ...

  3. 自导自演皮克斯动画,这个工具太神了!

    来源:机器之心 这个框架能将人物视频转成动画,还是高清.高度可控的. 在社交网络.短视频平台上使用卡通头像录制视频是很多人喜欢的玩法,但我们也会发现一些问题,比如头像调整范围比较窄,和本人没有那么像等 ...

  4. 太卷了!人大附中「内卷」到了美国?华裔家长抗议中国学生持F1签证抢占美国IMO名额...

      视学算法报道   来源:weibo 编辑:yaxin [新智元导读]近日,一封华裔家长的抗议公开信引发热议.他/她在信中抗议持F1签证的中国留学生入选美国IMO国家队. 国内的严重「内卷」慢慢卷到 ...

  5. 找论文太难?试试这款「文本生成」论文搜索工具

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 子豪 发自 凹非寺 量子位 报道 | 公众号 QbitAI NLP工 ...

  6. 找论文太难?试试这款「文本生成」论文搜索工具丨开源

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要3分钟 Follow小博主,每天更新前沿干货 转载自:量子位 NLP工作者,尤其是文本生成领域的工作者们,你们福音来了! ArXiv Text ...

  7. 吉林大学计算机图形学实验_32年后,计算机图形学再获图灵奖,皮克斯大佬推动3D动画发展...

    机器之心报道 机器之心编辑部 我们经常在奥斯卡颁奖礼上感受到皮克斯的力量,但这一次,它的创始成员登上了图灵奖的颁奖台. 昨日,ACM(国际计算机协会)宣布,将 2019 图灵奖荣誉授予两位皮克斯联合创 ...

  8. 2019年图灵奖公布!从阿凡达到图灵奖,皮克斯元老的动画梦

    编辑:张佳.白峰.鹏飞 来源:acm 去年,图灵奖颁给了熬过寒冬的人:今年,图灵奖颁给了点亮创意之光的人.斯坦福大学计算机图形学实验室教授Patrick Hanrahan和计算机科学家.皮克斯动画工作 ...

  9. 皮克斯理论:每一个动画角色都存在于同一个时空中

    乔恩·尼格罗尼花了一年的时间揭开了深藏在皮克斯动画片中的秘密世界.此文(全文如下)最初出现在他本人的博客上,并迅速引起轰动.根据读者有趣的反馈,尼格罗尼不断更新他的研究. 几个月之前,我在Cracke ...

最新文章

  1. Bootstrap 基本模板
  2. 对GET/POST请求返回cookie中的键值对进行重新组合
  3. java 颜色比较_我该如何比较Java中的颜色?
  4. 博士申请 | 美国布兰迪斯大学张初旭教授招收机器学习方向全奖博士生
  5. 嵌入式 开发板 Linux 挂载ubifs
  6. MATLAB字符串和ASCII码的转换
  7. Oracle事务处理
  8. 【网络小说推荐】纨绔才子
  9. RPC入门总结(一)RPC定义和原理
  10. ios uiwindow弹窗_iOS-UIWindow详解
  11. mysql 性能问题_mysql 性能问题
  12. 用JavaScript怎么写Windows的状态栏
  13. android在adb下刷机教程,adb sideload刷机教程
  14. 网络邻居上的计算机没权限,WinXP打开网上邻居提示“您可能没有权限使用网络资源”怎么办?...
  15. 我不曾忘记的初心-屌丝逆袭
  16. 英式英语和美式英语的差异1-用词
  17. 会议OA之签名和审批
  18. c++笔记(class)练手项目:暗网杀手排名系统
  19. DSP的DMA流程详解(状态图)
  20. Python对百亿条(100GB)数据进行查重

热门文章

  1. Web端直接播放 .ts 视频及mux.js播放ts视频没有声音
  2. JS数据类型存贮位置
  3. Notion待办如何自动同步滴答清单
  4. android批量安装,[已解决]分享Android apk 批量安装脚本
  5. 【CDH】该主机与 Cloudera Manager Server 失去联系的时间过长。该主机未与 Host Monitor 建立联系。
  6. 12.22 大湾区.NET Meet 大会
  7. VC串口通信(Windows API)
  8. element 手机适配_解决vue移动端适配问题
  9. 布置到linux的文件,免费的Office套件,如何在Linux中部署OnlyOffice桌面文档编辑器...
  10. 【数据库】数据库索引原理