开放电影项目《宇宙洗衣店》如何改进了Blender

还没有读者喜欢这个。
Blender film image

Blender 学院。CC BY 3.0。

在八月初——确切地说是 10 号——Blender 学院发布了其第七个开放项目(也是第六部开放电影)《宇宙洗衣店:第一周期》《宇宙洗衣店》,或者对于我们这些从一开始就关注其制作的人来说,称为“鹅莓项目”,不仅仅是一部 10 分钟的短片。它还是 Blender 学院迄今为止最雄心勃勃的项目,作为第一部完全免费和开放的动画长片的先导片。

您现在就可以观看这部电影。(友情提示:《宇宙洗衣店》是为成年人制作的动画。它适合工作场所观看,但有些人可能认为它不适合儿童。)

什么是开放电影?

如果您不熟悉 Blender 学院多年来推出的一系列开放项目,您可能不熟悉“开放电影”这个术语。简而言之,《宇宙洗衣店》不仅使用免费和开源工具(如 BlenderGIMPKritaInkscape)制作,而且电影本身及其所有资产——模型、纹理、角色绑定、动画,所有这些——都根据知识共享署名 (CC-BY) 许可提供。想看看制作角色绑定的样子吗?或者想知道巨大的彩色龙卷风是如何 созданного 吗?想在您自己的项目中使用角色(或只是道具)吗?也许您甚至想根据自己的口味重做整部电影。这是一部开放电影!您可以做到!

此外,这部电影本身也充当了用于制作它的开源工具的试验场。开发人员在现场,并且非常真实地感受到艺术家如何在实际制作环境中使用(有时是滥用)他们的工具。这不仅有利于理解用户交互,而且真正突出了痛点和瓶颈。在最好的情况下,开发人员可以在制作过程中提出快速(或至少是优先考虑的)解决方案。然而,更重要的是,这种经验为开发人员提供了在制作结束后开始的编码项目的理解和洞察力。

Blender 学院的所有开放项目都以这种方式发布,并且他们不会止步于《宇宙洗衣店》。之前开放电影的校友团队已经在计划另一部开放短片,暂定名为Glass Half

一个雄心勃勃的计划

《宇宙洗衣店》的诞生源于一个比这部 10 分钟短片更大的想法。其目标曾经是——并且在某种程度上仍然是——成为世界上第一部故事片长度的开放电影。当然,资助和制作这样一个雄心勃勃的项目绝非易事。Blender 学院之前制作的所有开放电影项目都从众筹预售中获得了很大一部分资金,其中许多项目早于 Kickstarter 和 Indiegogo 等更便捷的主流众筹平台出现之前。尽管这些项目筹集了相当可观的资金(几乎都超过 10 万欧元),但一部故事片长度的电影具有更高的财务要求和更具挑战性的制作后勤。

由 Blender 基金会提供。 CC BY 3.0

Blender 学院估计,完成一部故事片长度的开放电影的最低预算为 240 万欧元,其中大约 20% 需要在项目开始之初到位。(此时,值得注意的是,与预算远高于 1 亿美元的好莱坞大型动画制作相比,这是一个非常适度的成本。)在制作方面,计划是在阿姆斯特丹的 Blender 学院所在地进行主要制作,而电影的大部分将分解成几部分,由世界各地的十几个其他工作室制作。当然,这些工作室将使用 Blender 作为其制作流程的主要部分。

正是在这个计划中,Blender Cloud 诞生了。Blender Cloud 的主要目的是促进制作的分布式性质,充当制作资产和规划资源的中心。同时,订阅 Blender Cloud 将有助于支付 Gooseberry 项目所需的制作和软件开发成本。订阅者将获得电影制作的内部访问权限,以及 Blender 学院庞大的培训资源库(以及来自 Gooseberry 艺术家的其他教学材料)。

这些都是宏大的计划。实际上是非常宏大的。为了实现这一目标,Blender 学院需要在制作开始之初就筹集 50 万欧元。其余资金将来自持续的云订阅费,以及沿途的一些额外赞助和补贴资金。

未能达到目标,向前失败

最初的众筹活动于 2014 年 3 月启动,并持续到那个夏天。目标是为 Blender Cloud 增加 10,000 名订阅者。不幸的是,尽管社区为该项目筹集的资金比之前的任何开放项目都多,但这次活动远未达到预期的目标。不到一半。

尽管如此,这仍然是一个令人印象深刻的开始。向贡献者社区提出了一个建议:Blender 学院可以完全放弃该项目,也可以缩小该项目雄心勃勃的制作目标,以匹配实际筹集的资金。最终,社区选择了后者。故事将被截断为 10 分钟左右的先导片,而不是追求故事片长度的制作,这将让观众感受到完整电影中的内容。制作将集中在阿姆斯特丹的 Blender 学院所在地,而不是将制作分散到世界各地的工作室。Blender Cloud 仍将是电影和社区参与(通过反馈和资金)的重要组成部分。

那么我们得到了什么?

由 Blender 基金会提供。 CC BY 3.0

大约一年后,制作完成。根据 Blender 学院和 Blender 基金会的负责人 Ton Roosendaal 的说法,制作成本略低于 40 万欧元。这支付了一切费用,包括三名全职开发人员、两名为期三个月的开发人员、七名为期 10 个月的艺术家和四名为期三个月的艺术家。结果呢?除了视觉盛宴般的电影和引人入胜的故事开端外,还有一些开发里程碑:

  • 改进的头发/毛发模拟和渲染
  • 增强的 3D 视图(具有屏幕空间环境光遮蔽和景深等炫酷效果)
  • 绘画功能和性能提升(包括空腔蒙版)
  • 更新/改进的依赖关系图
  • Forceviz 力场可视化
  • 文件浏览器图像序列预览(包括播放)
  • 粘性键
  • 集成开源库的进展,如 OpenVBD(体积数据)、Alembic(网格缓存)和 Ptex(高细节纹理)
  • 两个 Blender 外部工具,用于渲染和流程管理,Flamenco 和 ATTRACT
  • 大量错误修复
  • 当然,还有 Blender 各处的各种小而省时的增强功能(尤其是在动画、雕刻和镜头排序工具中)。这些是只有在与艺术家在同一个房间工作时才能做出的重要改进。

最近在 Gooseberry 博客上发布了更深入的开发贡献列表。当然,这些功能中的许多功能仍处于 Gooseberry 开发分支中,可能需要在迁移到主分支之前进行一些改进和润色。例如,尽管 Blender 现有的头发和毛发系统有很多改进,但这些代码块更像是为了方便《宇宙洗衣店》制作的权宜之计,可能不会直接与主分支合并。相反,为实际制作编写该代码的经验和教训将成为在不久的将来重构头发和毛发系统的基础,从而产生更好、更稳定、更易于控制且更适合生产的结果。

还值得一提的是,在制作《宇宙洗衣店》的那一年里,Blender 继续获得了与电影制作无关的额外开发精力。Blender 的常规快节奏开发仍在继续,在那段时间内发布了不少于 4 个主要版本。

接下来是什么?

正如短片的小标题所示,这仅仅是第一个周期。希望和计划是以分集的方式完成这部电影。具体何时以及如何实现这一点还有待观察。Gooseberry 团队在过去几周一直非常忙于电影的发布,参加 SIGGRAPH,并在梦工厂和皮克斯等大型好莱坞动画工作室现场放映他们的电影。他们应该好好休息一下了。

不过,我们确实知道一些事情。Blender Cloud 仍然发展势头强劲,定期发布新内容,订阅者基础也在不断增长。下一个直接的制作精力将集中在《Glass Half》短片上。Blender 的下一个或两个版本将涉及合并 Gooseberry 分支中的一些剩余代码,但随着 Blender 接近 2.8 版本的发布,发布速度将稍微放缓,因为开发人员将注意力转向 工作流程改进

我们何时能看到第二个周期?它会制作出来吗?这很难说。根据 最近的博文,剧本已经“编写、设计,并且大部分都完成了故事板”。首选方案是尽可能坚持原计划,或许通过世界各地基于 Blender 的制作公司转播电影的每个分集片段的制作(在 Blender 学院的统一指导和指导下)。

无论如何,对于开源创意工具来说,这是一个激动人心的时刻。《宇宙洗衣店》展示了它们的能力。谁知道呢?也许将成为制作电影下一部分的人。毕竟,这是一部开放电影。难道这不是它的全部意义所在吗?

开放
艺术

本文是 Jason van Gumster 的 开放艺术专栏 的一部分。您是否有关于开源艺术工具或项目的故事想法? 提交您的文章想法.

User profile image.
Jason van Gumster 主要编造东西。他写作、制作动画,偶尔也教书,所有这些都使用开源工具。他经营一家小型独立动画工作室,撰写了《Blender For Dummies》和《GIMP Bible》,并继续在 [有时] 每周播客《Open Source Creative Podcast》中脱口而出他的经历。在 @monsterjavaguns 上的冒险(和谎言)。

15 条评论

这些新功能中有多少实际上进入了主分支?

Gooseberry 博客的链接(在功能列表下)提供了更好的说明,但凭记忆:3D 视图增强、绘画改进、粘性键、饼状菜单、更新的依赖关系图(尽管默认情况下仍处于禁用状态)、VSE 改进,我确定我遗漏了一些。

回复 ,作者:Pep (未验证)

好的,我看到了 Gooseberry 博客文章。有很多功能没有进入主分支。总而言之,考虑到花了一年时间以及(很可能)40 万欧元预算中的相当一部分,这似乎在开发方面进展甚微。

回复 ,作者:Jason van Gumster

请记住,博客文章只是其中一位开发人员的说法。另请注意,对于该预算,艺术家的数量是开发人员的两倍。开放电影的最大改进来自更微妙的事情,例如工作流程加速和解决开发人员可能不知道(或不相信)存在的日常效率低下问题。

回复 ,作者:Pep (未验证)

正如 Jason 已经说过的,这只是其中一位开发人员的说法。通读 Blender 本身的发布日志,您会发现 Cycles 渲染引擎的大量优化也源于 Gooseberry,但由另外两位开发人员完成。

回复 ,作者:Pep (未验证)

感谢您的信息,Gottfried。这很有趣,但有点太模糊了。您能提供一些例子吗?我无法摆脱这种感觉,尽管 Blender 社区中的每个人都在试图说服我们相信相反的说法,但资助开放电影只是那样:资助电影。我对那没有任何问题,我也真的没有发现完成的结果有任何问题(也没有特别喜欢,只是不合我的口味)。这些开放电影对于在世界各地展示 Blender 非常有用且必要,但我真的怀疑它们对开发有那么大的好处。至于艺术家和开发人员在同一个房间……嗯,我确信这很有帮助,但如果这对于软件的进步真的是必要的,那么商业软件根本就无法使用,对吧?还有其他成本较低的方式来获得用户反馈。

回复 ,作者:Gottfried Hofmann (未验证)

这部特定的开放电影可能没有像之前的开放电影那样具有“哇”功能开发(Blender 的合成器来自《大象之梦》,《大雄兔》改进了动画工具以及头发/毛发,《钢铁之泪》为运动跟踪器带来了大量开发,Cycles 渲染器本身就是从该制作中吸取的教训的直接结果),但我们所获得的仍然意义重大。而且,与之前的项目一样,开发人员在项目期间学到的东西很可能会在未来的功能/升级中出现。

回复 ,作者:Pep (未验证)

你看,Jason,这就是我认为问题所在的地方。与之前的电影相比,筹集了更多的资金,但换来的却是工具上的进展如此之小,这可能(而且很可能会)给社区留下这样的印象:Blender 基金会主要将资金用于艺术家,而远离开发人员,仅仅是为了追求某人的艺术目标。

要求人们资助免费开源工具的开发和维护是一回事,要求他们资助别人的艺术事业本身就是一件非常不同的事情。虽然有很多人不在乎资助这两件事,但可能有一部分 Blender 用户群只想资助 Blender 开发,而不希望参与 Blender 基金会制作的电影。如果事实证明这是众筹活动最初失败的原因之一(如果不是主要原因),我不会感到惊讶。

通过将开发(至少部分地)与强调艺术胜过开发的开放电影项目联系起来,Blender 基金会最终可能会赶走只想改进工具而不对资助他人艺术感兴趣的潜在支持者。

我的意见?BI 应该回到规模更小、成本更低的开放电影项目,这些项目有助于解决工作流程问题和非常具体的功能的开发,同时考虑到艺术质量,以便自豪地展示 Blender 在最终产品中的功能,但要明确强调工具开发。我可能是错的,但从长远来看,否则可能会损害 BF 的可持续性。

回复 ,作者:Jason van Gumster

我想这就是区别所在。我不认为它是“进展如此之小”。当然,其他开放电影项目见证了大型新功能的诞生。但是,这些功能中的大多数功能直到项目结束后才得到润色和改进……并从经验中获得启发。同样,这正是 Cycles 的起步方式。更不用说在制作过程中添加的所有小修复和省时功能。

另请注意,*已经*有一种方法可以让人们在开放项目之外为 Blender 开发做出贡献。那就是 Blender 开发基金。它仍然存在并且稳定运行。Blender Cloud 订阅人数一直在增加而不是减少这一事实倾向于表明,有很大一部分用户实际上对 BI 和 BF 的发展方向感到满意。

回复 ,作者:Pep (未验证)

将 40 万美元用于开发人员和艺术家……他们制作了一部短片,并在同时改进了软件环境……与微软花费约 50 万美元(用于好莱坞制作团队)制作 Windows 10 的桌面背景图像进行比较。哪个价值更高?

回复 ,作者:Pep (未验证)

你好,Pep,

软件的润色和优化问题在于,它不是闪亮的大功能,而是必要的小东西。润色使软件能够满足专业人士的需求,但它不是什么闪亮的东西。而且,润色和优化比破解闪亮的东西需要更多的时间和精力。在这方面,GB 团队做得非常好。
让我们以 Cycles 为例。在 Blender 2.76 中,您可以渲染比 Blender 2.71 中可能渲染的场景大得多的场景。而且在 CPU 上渲染速度也会快得多。

对于 GB 来说,这是第一次不需要合成,因为他们可以直接渲染在视口中看到的一切,就像好莱坞的“大人物”那样。因为一切都更好地放入 RAM 中,并且现在渲染速度更快。

我将从发布说明 (http://wiki.blender.org/index.php/Dev:Ref/Release_Notes) 中提供 Cycles 优化的示例(GB 需要这些优化),从 2.76 向后推。请注意,这些只是 Cycles 的优化,我没有列出动画、VSE、通用工作流程的改进,我没有列出新功能,也没有列出错误修复

相机空间对象剔除
空间分割 BVH 构建时间优化
释放同步对象使用的缓存
在细分之后释放多边形,以减少峰值内存使用量
在使用锁定的界面渲染时释放未使用的图像
通过在将派生网格转换为网格时传递数据所有权,减少场景同步的峰值内存使用量
在构建 BVH 后同步图像,从而减少生产文件中的峰值内存使用量
通过将 BVH 节点存储拆分为内部节点和叶节点,避免 BVH 叶节点的不良内存使用
世界 MIS 表构建现在是多线程的,从而减少了场景启动/更新时间。
跳过体积解耦射线行进代码中的连续空步骤。
使材质预览渲染对于复杂的着色器更具响应性
如果颜色或强度为 0,则从图中删除发射着色器。(67eb2c789718)
记录 SSS 和相机检查的所有可能的体积交点 (b3def11f5b75)
为 Haswell CPU 使用本机 float->half 转换指令 (2ec221aa281d)
射线/三角形交点现在是水密的。预计这将解决错误跟踪器中相当多的报告,此外,它可能有助于减少某些场景中的噪点。
为 CPU 实现 QBVH 优化结构,支持 SSE2 及更高版本。GPU 渲染、非 SSE 和 32 位处理器仍使用常规 BVH。(03f28553ff07)
优化黑色世界背景 (cd723967970e)
优化没有链接到单个值节点的矢量数学节点。(43421e9c5354)
减少着色器树修改和视口渲染之间的延迟 (2dfe5e3)
从命令行渲染时回退到底部到顶部平铺顺序 (bb08502)
优化创建网格属性时的内存使用量 (1862fbf)
减少背景光更新使用的内存 (0f65250)
通过更早地释放中间 BVH 矢量使用的内存,优化 BVH 构建期间的内存使用量 (3bc9ac1)
为预览渲染使用较低的渐进式更新超时,提供更即时的材质反馈
Mix RGB 着色器(混合混合模式)的优化,当因子为 0.0 或 1.0 时
这减少了内存使用量,并稍微提高了性能。(cbffc7499ef8)
优化没有链接到单个值节点的数学节点 (6a4a911fc39ffc)
更快地渲染均匀体积,当使用解耦射线行进时
异构体积的几项性能改进。
光泽和各向异性 BSDF 的重要性采样得到了改进,这导致每个样本的噪点更少。这也增加了渲染时间,但通常可以通过减少噪点来弥补。
减少渲染期间的内存使用量。(49df707496e5, 0ce3a755f83b)
支持 AVX2 的 CPU(例如 Intel Haswell)渲染速度快几个百分点。

回复 ,作者:Pep (未验证)

创建生产就绪工具的唯一方法是在生产中使用它。真实世界的测试非常宝贵,即使只是为了将开发工作重点放在实际影响用户的功能上,而不是开发人员的个人项目。“测试场景”不足以创建可用的产品。

回复 ,作者:Pep (未验证)

您不必聘请艺术家并在同一个房间里才能知道要改进什么。在许多领域,这很明显。或者您认为 Blender 如此完美?拜托..

我作为 TD 在工作室工作,每天使用 Blender 8 小时。我可以谈论很多天要改进什么。而且我也会告诉您您也想到的相同以及更多的东西。

40 万欧元用于这么小的进展 - 是的,您浪费了它们。

这里真正令人遗憾的是,您说您已经知道需要进行这些改进,但显然没有将这些改进传达给您在生产中使用的工具的开发人员。

您说您知道可以进一步改进,那么,坐下来写下它们并将其传达给开发人员。请记住,对您来说显而易见的事情对其他人来说并不显而易见,因此请避免犯这个错误。

顺便说一句:从我的角度来看,您是在吹嘘自己什么都没做,而您本可以提供帮助,这反映了您的不良形象。我也鼓励任何可以提供帮助的人这样做,因为它最终也有利于您。

回复 ,作者:Jerry (未验证)

@Jerry:所以,为什么不向开发人员提交错误报告/增强请求,而不是在这里抱怨。

回复 ,作者:Jerry (未验证)

Creative Commons License本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.