物体父子关系

创建父级

参考

模式:物体模式
菜单:Object ‣ Parent
快捷键:Ctrl-P

当创建复杂的对象,例如一只手表,你可以选择模型的不同部分作为单独的物体创建。但是,最后所有的零件可以互相结合。在这样情况下,你想要指定一个物体为所有物体的父级。移动、 旋转或缩放的父级也会影响子级。

要创建父级(建立父子关系)物体,请至少选择两个物体(首先选择 子物体,然后选择 父物体),然后按 Ctrl-P 。将弹出 设定父级目标 菜单,允许你从几种可能的不同的父子类型中选择一种。选择 设定父级目标 中的一个条目进行确认,并创建父/子关系。

所选的最后一个物体将 活动物体 (如亮橙色表示),并且还将是 父物体。如果你在选择父物体之前选定的多个物体,如果你在选择父物体之前选择了多个物体,则它们将全部是父物体的子物体,并且将处于层次结构的同一级别(它们是“同级”)。

弹出的 设定父级目标 菜单是上下文相关(语境)的菜单,这意味着它显示的条目数量是根据使用 Ctrl-P 快捷方式时选择的物体不同而不同。

对于非反模式,请按 Shift-Ctrl-P 。这将创建一个可选的父子关系,其中子物体完全存在于父物体的坐标系中。例如,这对于CAD而言是更好的选择。

移动、 旋转或缩放父级意味着也同时移动/旋转/缩放的子级物体。然而移动/旋转/缩放的子级不会导致父级的移动/旋转/缩放。换句话说,影响的方向是从父级到子级和而不是子级到父级。

通常,在使用 Ctrl-P3D View Header ‣ Object ‣ Parent 创建父级时,子级物体 只能有一个 父级物体。如果一个 子级物体 已经有一个 父级物体 并且你给它另一个父级物体,那么Blender将删除以前的父子关系。

Blender支持许多不同类型的父子关系,如下所示:

  • 物体
  • 骨骼
  • 顶点
  • 顶点 (三角面)

设置

除了选择的物体父子关系之外,它还为子级物体添加了一个修改器或约束,并将父级作为目标物体或激活父级属性,例如 跟随路径

物体的父级

物体父级 是Blender支持的最普遍的父子关系形式。如果使最后一个选定物体成为 父级物体,而所有其他选定物体将成为 子级物体。子级物体将继承父级物体的变换。父级物体可以是任何类型。

物体 (保持变换)父级

Object (Keep Transform) Parent works in a very similar way to Object Parent. The major difference is in whether the Child Objects will remember any previous transformations applied to them from the previous Parent Object.

由于以简单易懂的技术方式来解释这一点很难,所以使用示例来演示。

假设我们有一个由三个物体组成的场景,它们是名为“EmptyA”和“EmptyB”的两个空物体,以及一个猴头物体。图 没有父子关系的场景。 显示了三个没有父子关系的物体。

../../../../../_images/editors_3dview_object_properties_relations_parents_keep-transform-a.png

没有父子关系的场景。

如果通过单击:kbd:RMB 选择猴头物体,然后 Shift-RMB 单击“EmptyA”物体并按下 Ctrl-P 并最终从弹出的 设定父级目标 菜单选择 物体。这将导致“EmptyA”物体成为猴头物体的 * 父级物体* 。仅选择“EmptyA”旋转/缩放/移动将导致猴头物体也分别跟着被改变。

缩放“EmptyA”物体,使猴头变小并向左移动一点。

../../../../../_images/editors_3dview_object_properties_relations_parents_keep-transform-b.png

猴头是“EmptyA”的子级物体。

如果你仅通过 RMB 单击方式选择猴头物体,然后 Shift-RMB 单击“EmptyB”物体并按下 Ctrl-P 并从弹出的 设定父级目标 菜单选择 物体。这将导致“EmptyB”物体成为猴头物体的 父级物体。请注意,当你更改猴头的父级时,猴头的比例发生了变化(变回原来大小)。

../../../../../_images/editors_3dview_object_properties_relations_parents_keep-transform-c.png

猴头是“EmptyB”的子级物体。

发生这种情况是因为猴头物体从来没有直接改变其缩放,所以变化是因为它是“EmptyA”的子级物体,跟随其缩放发生了变化。由于“EmptyB”没有改变其缩放,因此将猴头的父级更改为“EmptyB”导致这些间接的缩放变化被移除。

这通常是必需的行为,但是有时如果你更改 父级物体,那么 子级物体 会保留从旧 父级物体 获得的任何先前变换也很有用。相反,如果将猴头的 父级物体 从“EmptyA”更改为“EmptyB”,我们选择了父子类型 物体(保持变换),那么猴头将保留其从旧父级“EmptyA”获取的缩放信息它被分配给新的父级“EmptyB”;

../../../../../_images/editors_3dview_object_properties_relations_parents_keep-transform-d.png

物体 (保持变换)父级模式。

如果你想要跟随上面的描述来建立blend文件 可以使用 物体 (保持变换) 建立父子的方法:

File:Parent_-_Object_(Keep_Transform)_(Demo_File).blend.

骨骼父级

骨骼父子关系允许你在骨架上的某些骨骼中是另一个物体的父级物体。这意味着,当变换一个骨架时,子物体只会跟随着特定的骨骼移动。

../../../../../_images/editors_3dview_object_properties_relations_parents_bone1.png

有四个骨骼的骨架的三个图片。

在图中 有四个骨骼的骨架的三个图片。,第二个骨骼是立方体物体的父级。立方体只有在第一或第二块骨骼的情况下才会变形。注意改变第三和第四根骨头对立方体没有影响。

要使用骨骼父子关系,必须首先选择你希望指向特定父级骨骼的所有子物体,然后 Shift-RMB 选择骨架物体并将其切换到姿势模式,然后 RMB 选择你所需成为父级骨骼的特定骨骼。完成后按 Ctrl-P 并出弹出的设定父级目标菜单中选择骨骼。

现在在姿势模式下变换骨骼会导致子物体也会产生变形。

相对父子关系

骨骼相对父子关系是你可以为每个骨骼切换的选项。这和骨骼父子一样,但有一点不同。

对于骨骼父子关系,如果你已经为某些子物体赋予骨骼,并选择该骨骼并将其切换到编辑模式,然后变换该骨骼;当你在该骨骼上切换回姿势模式时,以骨骼为父级的子物体将在姿势模式中回弹到骨骼的位置。

../../../../../_images/editors_3dview_object_properties_relations_parents_bone2.png

使用骨骼父子关系具有子级立方体物体的单个骨架骨骼。

在图 使用骨骼父子关系具有子级立方体物体的单个骨架骨骼。 中,第一张图片显示骨骼在编辑模式下移动之前立方体和骨架的位置。第二张照片显示了在编辑模式中选择骨骼后,移动并切换回姿势模式后立方体和骨架的位置。注意,子级物体移动到姿势骨骼的新位置。

骨骼相对父子关系的工作方式侧不同; 如果你在编辑模式下移动父级骨骼,当你切换回姿势模式时,子物体将不会移动到姿势骨骼的新位置。

../../../../../_images/editors_3dview_object_properties_relations_parents_bone3.png

立方体使用相对父子链接到单一骨骼。

在图 立方体使用相对父子链接到单一骨骼。 中,第一张图片显示骨骼在编辑模式下移动之前立方体和骨架的位置。第二张照片显示了在编辑模式中选择骨骼后,移动并切换回“姿势模式”后立方体和骨架的位置。请注意,子物体不会移动到姿势骨骼的新位置。

顶点父级

对于曲线,曲面,网格和晶格类型的物体,可以将其顶点或点用作其他物体的父级。你可以将一个物体父级到一个顶点或一组的三个顶点,这样,当父网格变形时,子级将会随之移动。

来自编辑模式的顶点父级

物体模式 中,选择子/子级,然后选择父级物体。 Tab 切换到 编辑模式 并在父物体上选择一个定义单个点的顶点,或者选择三个顶点定义一个区域(三个顶点不必形成一个完整的面;它们可以是父物体的任意三个顶点),然后按下 Ctrl-P 并确认。

此时,如果选择了单个顶点,则将从顶点向子/子级绘制关系/父子线。如果选择了三个顶点,则从(父级物体的)三个点的平均中心向子/子级绘制关系/父子线。现在,当父级网格变形并且所选父顶点/顶点移动时,子/子级也将移动。

来自物体模式的顶点父级

可以在物体象模式下执行顶点父级,这可以像普通对象父级一样完成。在物体模式中按 Ctrl-P 并选择 顶点*或 *顶点(三角形)

每个物体都会使用最近的顶点,这通常是你想要的。

父级顶点例子。
../../../../../_images/editors_3dview_object_properties_relations_parents_object-mode-example-1.png

可以使用设置到父级上下文菜单中的“顶点(三角形)”,将每个小立方体自动父级到棱角球上的三角形附近的顶点。

../../../../../_images/editors_3dview_object_properties_relations_parents_object-mode-example-2.png

在编辑模式下重新塑造物体,意味着每个立方体都分别跟随其顶点父级变换。

../../../../../_images/editors_3dview_object_properties_relations_parents_object-mode-example-3.png

在物体模式下重新缩放父级棱角球意味着子级立方体也按预期重新缩放。

设定父级上下文菜单项意味着用户可以快速设置大量顶点父级关系,并避免单独建立每个父 - 子顶点关系的繁琐工作。

Note

它实际上是一种“反转”的 hook

选项

移动子级

通过清除它的原点,你可以将一个子物体 移动 到它的父物体上。父级与子级之间的关系不受影响。选择子物体并按下 Alt-O。通过确认子物体将捕捉到父级的位置。使用 大纲 视图来验证子物体是否仍然是存在父级物体。

清空父级

参考

模式:物体模式
菜单:Object ‣ Parent
快捷键:Alt-P

你可以通过 Alt-P 方式 删除 父级 - 子级关系。

清空父级
如果只选择组中的父级,则不做任何事情。如果选择了一个子级或多个子级,他们就会与父级分离,或者被释放,并且他们会返回他们原来的位置,旋转和大小。
清除并保持变换结果

从父级那里解散子级,但 保留 父级给他们的位置,旋转和大小。

Non-Uniform Scale 这可能适用于这里。

清除父级反校正

把子级放在父级的位置上,就像他们被放在全局参考中一样。这有效地清除了父级对子级的变换。层次关系是不会被删除,但(''父级反向”)是从选定的物体校正矩阵。

例如,如果父级沿着X轴移动了10个单位,并调用 清除父级反校正,则所有选定的子级都被释放并沿着X轴移回-10个单位。 “反向”仅使用最后的变换;如果父母移动两次,每次10个单位,共20个单位,那么“反向”只会将孩子移回10个单位,而不是20个。

提示

../../../../../_images/editors_3dview_object_properties_relations_parents_outliner-view.png

大纲视图。

还有一种方法可以查看组中的父子关系,也就是使用 Outliner editor大纲 视图。图 大纲视图。大纲 视图在以下示例中 物体的父级 示例的图形。立方体A的物体名称是“Cube_Parent”,立方体B是“Cube_Child”。

已知局限

非均匀缩放

与其子级相比,父级的缩放和旋转不均匀可能会导致 shear 效应。

虽然父子关系支持这种做法,但是当父级被清除后, shear(剪切)将会丢失,因为它不能用位置,缩放和旋转。

如果 清除并保持变换结果 移动物体,则非均匀缩放是最可能的原因。