数据块

任何 Blender 项目的基本单元都是数据块。例如:网格(meshes)、物体(objects)、材质(materials)、纹理(textures)、节点树(node-trees)、场景(scenes)、文本(texts)、笔刷(brushes) ,甚至是屏幕(screens)。

../_images/files_data-blocks_outliner-blender-file-view.png

Blender 文件的大纲视图。

一个数据块是不同类型数据的一种通用抽象,具有一组共同的基本特征,属性和行为。

通用特性:

  • 各种数据块是组成 .blend 文件的主要内容。

  • 可以互相关联,以便于重复利用和实例化(父/子、物体/物体数据,材质/图像,以及修改器和约束等方式)。

  • 对于同一个 .blend 文件中的给定的数据块类型,其名字是唯一的。

  • 允许添加、删除、修改和复制。

  • 数据块能在文件之间相互关联(仅限部分数据块)。

  • 可以有自己的动画数据。

  • They can have Custom Properties.

用户通常会与更高级别的数据类型(对象、网格等)进行交互。在执行更复杂的项目时,管理数据块变得更加重要,尤其是在相互链接混合文档时。主编是 大纲

并非 Blender 中的每个数据都是数据块,例如骨骼、序列剪辑或顶点组就不是数据块,它们分别属于骨架,场景和网格类型。

数据块类型

../_images/files_data-blocks_id-types.png

数据块类型及其图标。

这里有一张表格,列出了 .blend 文件中存储的数据类型,仅供参考。

关联

库关联,支持关联到其他 .blend 文件中。

打包(Pack)

文件打包,支持将文件内容打包到混合文件中( 适用于大多数没有文件参考的数据块)。

类型

关联

打包(Pack)

描述:

动作(Action)

Stores animation F-curves.
用作动画数据,
以及非线性动画编辑器。

骨架(Armature)

带动网格形变的骨架。
用作骨架物体的数据,以及骨架修改器(Armature Modifier)。

笔刷(Brush)

用于绘制工具。

相机(Camera)

用于相机物体的数据。

缓存文件(Cache File)

用于网格缓存修改器。

曲线(Curve)

用作曲线,字体和曲面物体的数据。

字体(Font)

字体文件引用。
文本物体的曲线数据。

蜡笔(Grease Pencil)

Grease Pencil 物体使用的2D / 3D草图数据。
在3D视窗,图像、序列&影片剪辑编辑器中
3D视口,图像,序列器和影片剪辑编辑器。

集合(Collection)

把场景中的物体分组整理。
用于实例物体和库链接。

图像(Image)

图像文件。
用于着色节点和贴图。

形态键(Keys)(Shape Keys)

存储几何形状的形变信息,用于动画。
用于网格,曲线和晶格物体。

灯光(Light)

用作灯光物体的数据。

关联库(Library)

对外部 .blend 文件的引用。
从大纲视图的 Blender文件 视图访问。

线条样式(Line Style)

用于 FreeStyle 渲染引擎。

晶格(Lattice)

基于网格的晶格变形。
用作晶格物体的数据,用于晶格修改器。

遮罩(Mask)

平面动画遮罩曲线。
用于合成节点与序列编辑器。

材质(Material)

设置阴影和纹理的渲染属性。
用于物体,网格与曲线。

融球(Metaball)

三维的等值曲面。
用于融球物体的数据。

网格(Mesh)

由顶点/边/面生成的几何体。
用于网格物体的数据。

影片剪辑(Movie Clip)

引用图片序列或视频文件。
用于 影片剪辑编辑器

节点树(Node Tree)

可复用的节点组。
用于节点编辑器。

物体(Object)

包含场景中位置,
缩放和旋转的实体。
被用于场景和集合。

绘制曲线(Paint Curve)

保存一个绘制或雕刻的笔划数据。
从绘图工具中访问。

调色板(Palette)

存储预设的颜色。
从绘图工具中访问。

粒子(Particle)

粒子设置。
用于粒子系统。

光照探头(Light Probe)

帮助在Eevee中实现复杂的实时照明。

场景(Scene)

主要存储所有的显示和动画数据。
是物体和动画的最高存储单位。

声音(Sounds)

参考的声音文件。
用于扬声器物体数据。

扬声器(Speaker)

三维场景的发声源。
用于扬声器物体数据。

文本(Text)

文本数据.
用于 Python 脚本和 OSL shader。

贴图(Texture)

2D/3D 纹理。
用于笔刷和修改器。

窗口管理器(Window Manager)

所有Blender用户界面的总体管理器。
包含工作区、通知系统、操作和键位映射。

世界(World)

定义全局渲染环境的设置项。

工作区(Workspace)

界面布局。
用于每个有自己的工作区的窗口。

生存期

每个数据块都有其使用计数(引用计数),当有多个数据块时,您可以在界面中其名称右侧看到数据块的当前用户数。Blender遵循一般规则,即未使用的数据最终被删除。

由于在工作时添加和删除大量数据是很常见的,因此这样做的好处是不必手动管理每个数据块。这通过在写入混合文档时跳过零用户数据块来实现。

保护

由于零用户的数据块不会被保存,但有时你可能想要强制保留这些数据,而无需关心其使用者。

如果要构建一个 blend 文档作为要链接到其他文档和从其他文档链接的资源库,则需要确保它们不会意外地从库文档中删除。

要保护数据块,请使用其名称旁边带有盾牌图标的按钮。然后,Blender将永远不会静默删除数据块,但如果需要,您仍然可以手动删除它。

共享

数据块可以在其他数据块之间共享。

常见共享数据情形如下:

  • 材质之间共享贴图。

  • 物体(实例)间共享网格数据。

  • 物体间共享动画动作,比如让所有的灯光同时变暗。

数据块可以在文件之间共享,见 关联库

生成单用户

在多个用户之间共享数据块时,可以通过单击其名称右侧的用户计数按钮为指定的用户生成数据块的副本。这会复制该数据块并将新创建的副本分配给这个用法。

Note

对象具有一组更高级的操作,可以成为单用户,请参阅 其文档

删除数据块

Life Time 中所述,当数据块不再使用时,通常会将其删除。它们也可以手动 取消链接删除

取消链接数据块意味着其用户将不再使用它。这可以通过单击数据块名称旁边的 "X"图标来实现。如果您取消与所有用户的链接数据块,则最终将被Blender删除,如上所述(除非它是受保护的)。

删除数据块将直接从 .blend 文件中删除它,自动将其与所有用户断开连接。 这可以通过在其名称旁边的 "X"图标上点击 Shift-LMB 来实现。

Warning

删除某些数据块可能会导致某些用户被删除,如果没有这些数据块这些用户将无效。 常见的例子比如删除物体数据(如网格,曲线,相机……)也将删除使用它的所有物体。

这两种操作也可以在上下文菜单中使用 RMB - 单击 大纲视图 中的数据块。

自定义属性

../_images/files_data-blocks_add.png

自定义属性面板。

自定义属性是一种在 Blender 的数据块中存储您自己的数据的方法。它可用于绑定(骨骼和对象可以具有驱动其他属性的自定义属性)和 Python 脚本,其中定义Blender中不可用的新设置是很常见的。还可以通过 属性节点 从材质访问自定义属性。

只有这些数据支持自定义属性:

To add a custom property, search for the Custom Properties panel, found at the bottom of most Properties or Sidebar region, and hit Add.

编辑属性

用户界面

Custom properties can be edited using the panel available for data types that support it.

../_images/files_data-blocks_edit.png

编辑自定义属性的弹框。

属性名

The name of the custom property.

Property Value

This does two things: first it sets the current value of the custom property, and second, it defines the data type of the property.

Custom properties can be of the following types: integers, floats, strings, Boolean values, colors, or vectors of integers or floats.

See the table below for a list of examples for each:

整数

1, 2, 3, 4,

浮动

3.141, 5.0, or 6.125

字符串型

any text

布尔

True or False

矢量

[1, 2, 3] or [1.0, 2.0, 3.0]

颜色

[1.0, 1.0, 1.0] or [1.0, 1.0, 1.0, 1.0] (must specify Subtype)

Note

Boolean values are handled very similar to integers and only work when using Min/Max values that are integers and that are no more than 1 apart.

At this point, the Boolean values will still look like integers but behave like a Boolean having one lower, off, value and a higher, on, value.

默认值

This sets the default value of the property used by the Reset to Default Value operator.

Warning

默认值用作 NLA 混合 的基础,而用于作为关键帧的属性上的无意义默认值(例如,用于缩放的属性为 0)可能会导致问题。

最小值,最大值

自定义属性可以采用的最小/最大值。

../_images/files_data-blocks_edit-color.png

Custom Property settings for a color with alpha.

Is Library Overridable

当数据块链接时,允许属性为 覆盖

Use Soft Limits

开启通过滑块调整 属性值 的限制,而无需以数字方式输入值。

角度最小,最大

钳制 节点用于将数值钳制在最小值和最大值之间的范围内。

提示

允许你为你的自定义属性编写 提示

子类型

Specifies the type of data the property contains, which affects how it appears in the user interface. In order for this property to appear the Property Value must be a vector of floats. For either of the color subtypes to work the Property Value must be a vector with three or four values depending on the availability of an Alpha Channel.

边角定位节点为图像平面弯曲变换指定明确的边角值。工作方式有些像平面追踪变形节点,区别是不在剪辑编辑器中使用 "平面追踪" 数据。

数据值没有任何特殊行为。

场景线性色彩空间

场景线性色彩空间

伽玛校正颜色

伽玛校正色彩空间中的颜色。

欧拉角度

Euler Rotation 角度。

四元数角度。

Quaternion Rotation 角度。

Python 脚本访问

可以通过与 字典 类似的方式访问自定义属性,其中键值只能是字符串,而值只能是字符串,数字,数组或嵌套属性。

有关详细信息,请参阅 "API 文档 <https://docs.blender.org/api/current/info_quickstart.html#custom-properties>`__。