Blender3.x路线图

Blender3.x路线图

https://code.blender.org/2021/10/blender-3-x-roadmap/

2000 年 8 月,Blender 2.0 在 SIGGRAPH 展会上发布。这意味着 Blender 2 系列已经运行了二十年多一点!我们当然不希望 3 系列需要跑那么长时间。从 Blender 3.0 开始,将使用新的版本编号[https://code.blender.org/2020/02/release-planning-2020-2025/]约定,计划每两年发布一次主要版本。根据新的规划,在未来两年内将发布八个 Blender 3.x 次要版本,其中两个作为长期支持 (LTS) 版本。

本文旨在为 Blender 3.x 路线图提供一个大纲。它已经在几个核心贡献者的参与下进行了审查。像往常一样非常欢迎反馈,这段时间这个文档将是动态修改的。

总体重点:建立在 2.8 UI 和工作流的基础上,并进一步改进。

一般准则是保持 Blender 在功能上与 2.8x 及更高版本兼容。现有的工作流程或可用性习惯不应该在没有充分理由的情况下被打破——在普遍同意并提前明确沟通的情况下才能改。

在 3.0 发布之前,所有模块团队[https://code.blender.org/2019/04/module-teams/]将检查审查正在进行的实现和工作流程,并提供带有需求的设计文档,概述我们接受修改的内容以及我们现在不改的内容。 

模块团队应该明确哪些变化将发生,用户的利益是什么,我们将如何保持以前保存的工作的兼容性,以及(最后但并非最不重要的)如何作为贡献者参与进来。 

Blender 中的大多数领域都相当稳定,但在某些领域,预计会有更大的变化:对于物理、“万物节点”、雕刻/绘画、纹理和角色绑定。不过,这些更改都不会违反 2.8 中列出的路线图。

核心开发

核心模块将被授权更严格地管理Blender代码中各处的代码标准和工程实践(请写文档并提供测试!)。架构和代码的持续改进将继续进行,旨在实现更好的模块化和性能。

任何影响核心 Blender 功能的东西,如 ID 管理、Blender 文件、DNA 数据设计、Python API、撤消、依赖图、覆盖和 API 都是为了获得好的规范和功能文档,让贡献者知道如何有效地使用它. 未经核心模块所有者审查,不得提交此模块。

Python 脚本和附加组件

Python 模块致力于保持 API 工作并兼容所有 3.x 系列。API 的一些重大更改是不可避免的,这些更改将始终在发布前至少 6 周在Python 发布日志[https://wiki.blender.org/wiki/Reference/Release_Notes]页面上进行传达。3.x 版本之一的最大变化是 BGL 将被完全弃用并由 GPU 模块取代。

建模

Blender 中的建模工具将得到维护并保持兼容。管理海量数据集(大型场景或大型模型)的加速仍然是需要更多开发的关键主题。

雕刻/绘制

目前正在审查混合雕刻/绘制工作流程的提案[https://code.blender.org/2021/06/asset-creation-pipeline-design/]。这将消除对多分辨率的需求,并引入一种将传统(三角形偏移)雕刻与基于着色器的纹理置换相结合的新方法。这样做的好处是可以获得极其精细分辨率,而无需消耗大量多边形数据集、内存使用和巨型文件。

与该提案相关的是使 Blender 当前的编辑模式具有原子性和灵活性,允许工具设计人员将多种编辑模式组合在一起以实现更高效的工作流程。

关于提案和编辑模式的最终决定正在等待有贡献者参与的设计和审查研讨会,这个事情待定。

纹理

Blender的程序纹理系统急需升级。现代工作流程提供基于节点的程序纹理,可以分层以执行类似于图像纹理或更好的操作。在 Blender 中,我们可以通过在 Eevee、Cycles、视口绘图和绘画工具中完全集成对这些纹理的支持来做到这一点。

设计仍然是一个开放的话题。

动画工具

角色装配也需要认真升级。“动画2020”项目因情况而推迟,但在“22”中应该会重新提上日程。 

关键词是:基于节点、分层、调试工具、速度、人群、动作捕捉支持、肌肉和物理自动化系统。

Blender 工作室 将通过让行业资深人士参与设计和实施来领导该项目。新的装配系统预计将使用类似的骨骼或姿势概念,但预计不会与功能兼容。出于这个原因,我们希望旧装配和新装配共存一段时间。

用户界面/用户界面[UI/UX]

UI 团队将审查 2.8 工作流程(工具栏、快捷方式、布局),并提供设计文档,为开发人员提供重点和指导方针,让每个人了解以何种方式为 Blender 中合理的高质量和一致的 UI 做出贡献。

UI模块目前需要高级UIX工程师和设计师。在分配这些角色之前,UI 模块团队成员将主要协助其他模块保持其 UI 和工作流程的平衡和一致。

资产

资产浏览和管理是 3.0 的重要新功能之一。Blender 中这方面的工作将持续一段时间。期望 Blender 中好的资产工具将有助于配置高效的工作流程;适用于制作领域的专业艺术家和初学者。Asset 和 UI 项目的一部分是发布(一系列)Blender Bundles;具有预设、基元和资产库的相对较大的下载量 (1+ GB)。

Blender 101(应用程序模板)

能够为个人工作流程配置 Blender 是 Blender 的一个关键目标,它是 2.8 项目的一部分。 

为了使配置更进一步,.blend 文件可用于替换标准启动文件——以这种方式创建 Blender 的“自定义版本”。这些模板将允许完全配置 UI 布局、定义自定义键盘映射并启用加载项以在启动时运行。一个聪明的 Python 脚本编写者可以使用 vanilla Blender 版本以这种方式设计完整的新应用程序。作为原型,该团队将发布几个简单的模板:一个视频播放器审查工具和 100% 简化的“Monkey Blender”。

以这种方式使用的模板将被称为“Blender 应用程序模板”或简称为“Blender App”。经过贡献者和模块团队的广泛测试和审查后,计划将其作为 Blender 3.1 的测试版。

Cycles

Cycles 现在已有 10 年的历史,并且在过去 6 个月内进行了一次重大改写,即 Cycles X 项目。这包括重要的架构重新设计,从而显着提高了 Blender 3.0 中的 GPU 渲染性能和交互性。Blender 发布后将以此为基础,添加新的 Cycles 制作功能并改进复杂场景的处理。

EEVEE

我们的高质量实时 3D 渲染引擎也在升级。新设计带来了屏幕空间全局照明、更高效的着色、改进的体积渲染、全景相机和紧密的蜡笔集成。它还为通过 Vulkan 进行 GPU 光线追踪铺平了道路。

我们还计划了一个实时合成系统,将合成节点带入 3D 视口。新的 Eevee 将被设计为高效输出渲染通道和图层以进行交互式合成,其他渲染器也将能够插入该系统。

合成

正如在 2019 年 Blender 大会上所承诺的那样,合成再次受到开发人员的关注。主要目标是保持稳定并解决性能瓶颈。新功能是使用画布原则支持稳定的协作系统。

VSE

Blender 视频编辑器越来越受到开发人员的关注,尤其是在改进 UI 和可用性方面。值得注意的是条带中的新预览图像。VSE 模块将花时间明确路线图和要求,以使社区能够与公认的 VSE 设计原则保持一致,从而有效地做出贡献。

视口

Blender 中的 3D 视口是发力重点所在;将更多工具移动到 3D 的 2.8 策略(不是作为按钮或面板,而是通过精心设计的 3D 小部件或面组)将继续进行。 

3.x 系列的一个大目标是让 Blender 完全使用 Vulkan 开放标准。Blender 的 GPU API 的 Vulkan 和 Metal 后端正在开发中。我们预计这些将在 2022 年底之前准备好取代 OpenGL 后端。

CPU/GPU 支持

Blender 现在得到了所有主要芯片制造商的支持:英特尔、AMD、英伟达和苹果。开发人员与硬件行业密切合作,以确保为使用 Blender 的艺术家提供平等且完全兼容的体验,不论是在哪个平台或操作系统。每个人都可以在 Blender 的Open Data 网站[http://opendata.blender.org/]上监控或提交性能报告,该网站[http://opendata.blender.org/]将在 3.0 发布时更新。

增强现实/虚拟现实[AR/VR]

Blender 支持实时立体视口,用于使用行业标准 OpenXR 库与 VR 设备进行通信。3.0 中添加了对 VR 控制器的支持。3.x 的一个可能项目是为 AR 和虚拟场景添加实时摄像机跟踪。

万物节点

2.9x 的几何节点是一个巨大的成功,可以看作是 Blender 中“万物节点”的概念证明。接下来的规划是引入求解器作为节点,添加基于点的节点(粒子)和物理模拟节点。 

毛发系统是一个单独的主题;在毛发系统中,模拟优先级低于艺术控制和相关工具的。基于节点的毛发系统的规格和设计是待办事项。

物体级(动画)节点也是一个开放的话题。

物理

Blender 3.x 将继续使用旧的物理系统,例如 Bullet,以及 Mantaflow、Softbody 和 Cloth 的修改器。将添加 OpenVDB 修改器。其余的,新的开发将转到基于节点的求解器。见上一点。

实时模式

物理模拟和 VR 观看已经需要 Blender 中的一个新概念——“时间”。可以独立于用于渲染或动画的帧输出来处理连续的时间流逝。Blender 为此需要一个正式的设计概念;使 Blender 的所有工具和选项始终有效,无论是实时播放还是静止播放。设计挑战与动画播放、依赖、缓存和优化有关。理想情况下,实时视口可用于原型设计和设计实时环境或体验。设计主题:基于节点的事件、逻辑和状态编辑器。

蜡笔

3.x 的 蜡笔 项目是:使用 序列编辑器 片段编辑的故事板工作流程,更好地支持 Eevee,资产浏览器支持。

随着 蜡笔 被业界大量使用,也用于最终渲染,我们预计会增加对该领域的开发关注。

NPR

线条艺术将获得进一步的性能调整和功能。虽然速度是一个主要焦点,但路线图上也将生成更高质量的生产线。

生产流水线和 IO

Blender 将继续致力于其他行业标准,例如 OpenVDB、OpenEXR、OpenTimeline、OpenColorIO、OpenSubdiv 和 OpenShadingLanguage。对 MaterialX 的支持在要讨论的列表中。

Blender 3.x 将与 USD 进一步集成,以实现混合工作流。来自行业的工作室将需要更多(设计和代码)贡献。

由 Blender Studio 团队协调的完整和 100% 免费/开源工作流的工作也将继续进行。未来几年的挑战仍然是确保个人和小团队可以使用 Blender 和其他 FLOSS 工具创建和管理复杂的行业级 3D 媒体项目。

Blender 和互联网:“元”

Blender 的一个核心原则是它不需要互联网即可工作。Blender 开发人员仍然坚定地致力于提供完整的离线用户体验。但是,Blender 应该能够连接到网络以使用其他功能。例如:向用户发送新版本的信号、更新附加组件、浏览资产存储库、与他人共享数据或设置协作环境。

Blender 将为此启动一个新模块:名为 Meta(如“Beyond Blender”)。模块所有权和成员资格将公开且可访问,确保仅添加具有普遍共识的内容,从而直接使用户受益。 

将建立一个专门的网站和服务器 meta.blender.org,用于概念验证和推出在线功能。根据原则和设计,这里只会添加对所有人免费和开放的服务(只需要一个帐户登录)。这意味着可能的商业附加组件(如存储、版本控制、库)需要由外部和独立供应商提供。元项目可以为其提供 API,并帮助保持它的安全和稳定。

3.0 发布后,Blender 基金会将在 Blender.org 建立元项目,开始初步设计讨论并招募贡献者成员。

研究

作为一个免费的开源项目,我们还需要不断寻找能够定义 3D 工具未来的主题。我们特别欢迎来自该领域的研究实验室或大学的贡献。

我们需要解决的一个重要话题是 AI 工具——有用的“助手”,可以加速创建过程中的重复任务。

使命

去年,Blender 致力于定义明确的使命宣言。这就是推动 blender.org 项目并保持焦点的原因:

我们为艺术家提供世界上最好的 3D 技术开源工具。

或者简而言之:我们捍卫并促进创造的自由。

激动人心的时刻就在眼前!

谢谢阅读,

阿姆斯特丹 2021 年 10 月

Ton Roosendaal,Blender 基金会主席。