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

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

Blender 学院。CC BY 3.0。

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

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

什么是开放电影?

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

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

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

一个雄心勃勃的计划

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

由 Blender 基金会提供。 CC BY 3.0

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

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

这些都是宏伟的计划。事实上,非常宏大。为了实现这一目标,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 的各个方面都进行了一系列小的但节省时间的增强(尤其是在动画、雕刻和镜头排序工具方面)。这些都是只有在与艺术家在同一个房间工作时才能做出的重要改进。

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

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

接下来是什么?

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

不过,我们确实知道一些事情。Blender Cloud 仍在强劲发展,定期发布新内容,订阅者数量也在不断增加。接下来的直接制作精力将集中在《半杯水》短片上。Blender 的接下来一两个版本将涉及合并来自鹅莓分支的一些剩余代码,但随着 Blender 接近 2.8 版本的发布,发布节奏将略有放缓,因为开发人员将注意力转向 工作流程改进

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

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

开放
艺术

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

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

15 条评论

这些新功能中有多少真正进入了主分支?

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

回复 作者:Pep (未验证)

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

回复 作者:Jason van Gumster

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

回复 作者:Pep (未验证)

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

回复 作者: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)
光线/三角形交点现在是水密的。这有望解决错误跟踪器中相当多的报告,并且可能有助于减少某些场景中的噪点。
为具有 SSE2 支持及以上的 CPU 实现 QBVH 优化结构。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 (未验证)

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