2026-06-16

Blender-Tank-Tracks

1. Continuous track
2. 使用Blender模拟履带运动
	2.1 履带建模-曲线阵列
	2.2 约束-关系-子级
	2.3 约束-关系-轴心
	2.4 copy
	2.5 轮子
	2.6 输出简单动画
	2.7 复杂道路行驶问题
	2.8 小结
3. 使用Blender物理系统模拟履带运动
	3.1 刚体参数表
	3.2 刚体约束参数表
	3.3 不平整地面
	3.4 轮子建模
	3.5 履带建模
	3.6 复制另一侧的轮子和履带。
	3.7 炮管
	3.8 摄像机
	3.9 输出动画

1. Continuous track

履带(英语:Continuous tracks,字面意思“连续轨道”)是一种使用于坦克车、工程车等运输工具的装置,用来使这些机器移动。
履带的构造有两大类别:
  • 以坚硬的材料制成,并由许多小片段组合而成。重型车辆,但重量及行驶时的噪音较大
  • 以类似橡胶的柔软材质制作,一体成形。重量噪音俱小,但只能用于轻型车辆。
履带可以将车辆的重量平均分散在地面,防止车辆沉入地面,履带表面可完整贴于地面。
相较于四轮车辆,装上履带带动后,可增加百分之八十八的抓地力,因此可在较恶劣的地表行驶。

2. 使用Blender模拟履带运动

2.1 履带建模-曲线阵列

新建一个 曲线环 ,编辑为履带循环运动的路径。
新建一个 Cube,编辑为履带上的一块板。
新建一个 平面,大小和上面的 履带板 相当。作为履带环绕曲线阵列的载体。
依次选取 履带板,平面,Ctrl P,设置 平面 为 履带板 的父对象。
选取 平面,添加阵列修改器,添加曲线修改器,选择上方的曲线环。(适当调整阵列方向,阵列间距与数量)
选取 平面,右侧属性区域,实例化,选择面。下方显示实例:取消勾选 视图和渲染。
选择 履带板 本体,H,隐藏。画面里就只剩下履带环了... 
为了方便选择被履带覆盖的曲线,新建一个 空对象,作为曲线的父对象,选择空对象,顺着履带的方向(本例是Y轴)拖动即可看到履带直线运动。 但若是偏离了Y轴,履带也会脱离曲线束缚... 
图3:履带板直接曲线阵列会弯曲,(不使用中间平面)

图2:履带;

图1: 一块履带板;

2.2 约束-关系-子级

选择曲线阵列的 平面,添加约束: 关系\子级,对象选曲线
选中曲线,G 朝履带方向移动,履带会随曲线同步移动,但不再滑动。
回到平面约束子级上,关闭履带方向的 [位置] 轴向即可 (本例为位置:Y轴,履带在Y轴方向移动)
选中曲线,G 朝履带方向移动,履带会随曲线移动并在曲线上滑动。偏离Y轴也正常。
绕Z轴旋转,履带还是会偏离曲线。

2.3 约束-关系-轴心

选择曲线阵列的 平面,添加约束: 关系\轴心,对象选曲线
  • 添加约束: 关系\轴心,目标选曲线,旋转范围选Z轴,旋转范围:( Z) 轴旋转。
  • 添加约束: 关系\轴心,目标选曲线,旋转范围选Z轴,旋转范围:(-Z) 轴旋转。
再选择空对象,旋转,曲线和履带不再偏离。

2.4 copy

截至目前,所有建模原始位置都在原点。全选,Shift D 复制一份。
选中其中一个空对象向 X轴 方向移动2单位。
选中另外一个空对象向 -X轴 方向移动2单位。
分别选中2条曲线,Alt P,取消父对象,并保持变换。
删除一个空对象,将剩下的一个空对象移动到原点。
选中2条曲线,再选择空对象,Ctrl P, 将原点的空对象作为2测的共同父对象。
选中 空对象,移动,Z轴旋转。正常则继续。

2.5 轮子

填充履带中间的轮子,2侧各3个轮子。
选中轮子,对应的曲线,Ctrl P 保持变换。轮子会随之平移,但不会转动。
选中轮子,添加约束:变换\变换
目标:空对象,世界空间。勾选 延伸。(勾选后可持续旋转,否则只转一圈。)
拥有者:局部空间。
映射自\位置\Y最小值:-πr,Y最大值:πr。(使之与轮子周长匹配。)
映射到\旋转\X源轴:Y,最小值:180°,最大值:-180°. (上面填πr,就是半圈,匹配这里的180°)
选中 空对象,移动,Z轴旋转。轮子和履带能同步运动了。

2.6 输出简单动画

到此为止,选中空对象 G 前后移动 履带,轮子配合移动。
选中空对象 R Z 旋转,履带,轮子配合也能配合旋转。原地旋转时,2个履带一前一后,反方向转动。轮子也跟随履带转动。看似很完美。
制作一些简单的片段动画,这就够了。

2.7 复杂道路行驶问题

新增一条蜿蜒曲折的曲线,作为履带行进的路径。
选中 空对象,再选择 曲线道路,Ctrl P 选择 跟随路径。
将 摄像机 移动到 履带 侧上方,可以清晰观察 2条履带,以及轮子转动的位置。
选中 摄像机 再选择 空对象,Ctrl P 设置父关系,摄像机会始终跟随履带同步移动,可以持续观察运动。
曲线道路大致是个椭圆形,起初的直线和弯道都很正常,弯道外侧比内测转动更快,看似完美。
半个弯道后,2个履带旋转和道路行进不再匹配... 再过到下一个弯道的一半后,回归正常。

2.8 小结

整体操作简单,对建模也没有要求。但有缺陷尚待解决。
方向偏离Y正向开始减速,到垂直Y轴,速度降低到0,继续转向,则负方向逐渐加速... 

正常的部分: 可以直行,倒车,原地小角度转弯,行进过程中小角度转弯。
这里的小角度转弯,转弯外侧转动快于内测,虽然有逐渐减速,若转弯角度不大,则减速不明显,勉强可以接受。

缺陷:大角度转弯,掉头就会出现明显的减速及反转异常。

3. 使用Blender物理系统模拟履带运动

先说结论,和上面的方法相比,操作较为复杂。但能模拟复杂道路行驶。
不平整的路面,小坡道,小沟壑,转弯,掉头,倒车。都可以模拟。
以下操作参考如下视频教程: 
Blender Tank Tracks Tutorial Part 2| Physics, Suspension, Constraints (Arijan)

3.1 刚体参数表

对象 Object 刚体类型 刚体形状 重量 补充说明
地面 Plane 被动 网格 细分后添加置换修改器,纹理类型选择 Clouts 云絮。
车体 Cube 活动项 方框 10 车体使用一个长方体,可以将所有表面删除,只留下线框。
车轮 Cylinder 活动项 柱体 3 地面承重轮,上方驱动轮
履带 Cube 活动项 网格 0.1 履带板添加阵列和曲线修改器,并应用修改器。

3.2 刚体约束参数表

空对象 生成步骤 左下角编辑面板 刚体约束 属性设置 补充说明 空对象
悬挂系统
Generic Spring
(地面轮子)
选择1 (选中项): 地面轮 类型: 泛型弹簧 限制-角度: (?) Y,Z (0:0) 车轮滚动轴X 悬挂系统
Generic Spring
(地面轮子)
选择2 (活动项): 车体 位置: 选中项 限制-线性: (?) X,Y (0:0) 只允许上下移动
物体菜单: 刚体– 连接 关联模式: 选中项 到 活动项 弹性-线性: (?) Z (300:15) 弹性系数
悬挂系统
Generic Spring
(上方轮子)
选择1 (选中项): 地面轮 类型: 泛型弹簧 限制-角度: (?) Y,Z (0:0) 车轮滚动轴X 悬挂系统
Generic Spring
(上方轮子)
选择2 (活动项): 车体 位置: 选中项 限制-线性: (?) X,Y,Z (0:0) 上方轮子不接触地面
物体菜单: 刚体– 连接 关联模式: 选中项 到 活动项 弹性-线性: 不设置
动力系统
Motor
(2侧各1个轮子)
选择1 (选中项): 驱动轮 类型: Motor 机动-角度: (?) 勾选角度 motor 的 X 轴
必须与旋转轴对齐
动力系统
Motor
(2侧各1个轮子)
选择2 (活动项): 车体 位置: 选中项 目标速度: 3
物体菜单: 刚体– 连接 关联模式: 选中项 到 活动项 最大脉冲: 5
履带-铰链
Hinge
(所有履带)
选择1 (选中项): 所有履带 类型: Hinge hinge 的 Z 轴
必须与旋转轴对齐
履带-铰链
Hinge
(所有履带)
选择2 (活动项): 位置: 中心
物体菜单: 刚体– 连接 关联模式: 按距离链式连接
空对象 生成步骤 左下角编辑面板 刚体约束 属性设置 补充说明 空对象

用于机动及悬挂的刚体约束,要绑定到对应的轮子上。依次选择空物体,轮子,Ctrl P,保持变换。
驱动轮会绑定2个空物体,一个悬挂,一个机动。

3.3 不平整地面

新增平面。
编辑模式,平面,放大,细分多次,
物体模式,给平面添加,置换修改器,Deform\Displace。新建一个新纹理。
右侧属性编辑器,切换到纹理页签,类型选择云絮,Clouts.
返回修改器页签,修改强度为0.2,高低不规则的地面形成了。(调为0,则为平整地面。)
属性区物理页签,设置刚体类型为被动项,形状为网格。

3.4 轮子建模

新建一个轮子,设置好刚体。添加悬挂系统的刚体约束。
然后选择刚体约束的空物体,再选择轮子,Ctrl P 设置父对象,选保持变换。
然后再选择空物体和轮子,Shift D 复制为同侧的其他轮子。
上方,前后各有一个轮子,悬挂设置稍有不同。如上参数表。
上方的前后2个轮子,只有一个是驱动轮,通常为坦克后方,给该轮子添加刚体约束,机动。
提示: 建立3个集合,分别存放以下3类物体。方便全选统一修改。
  • 存放所有刚体轮子;
  • 存放所有用于悬挂的刚体约束的空物体;
  • 存放用于动力的刚体约束 的空物体;

3.5 履带建模

建模方式同第二章类似,建立一个履带板,勾勒一圈曲线。然后给履带板添加阵列,曲线修改器。
不习惯编辑曲线的,也可以用网格画曲线形状,然后将网格转化为曲线。
最后要将履带板的阵列修改器,曲线修改器都应用。曲线不再需要。
建立一个集合,用于存放履带。
选择 履带 编辑模式,全选,P 按离散分离。将一个履带对象分离为几十个单独的履带板。
全选所有履带板,物体菜单-设置原点- (原点 → 几何中心)。 

履带-添加刚体约束-铰链
全选所有履带板,按前面的参数表添加刚体约束,操作完成后,沿着履带板生成了一圈空物体。
仔细观察,会发现有1个空位,缺少一个空物体。
选择这个空位2侧的履带板,物体菜单-刚体-连接,重复前面建立铰链的操作。补充了这一个刚体约束,所有履带板的铰链约束就完整了。
新建一个集合,用于存放用于铰链的刚体约束空物体。

3.6 复制另一侧的轮子和履带。

复制前的环境设定: 
Shift C 将游标归位。
上方枢轴点选择3D游标。
右上角选项小菜单,勾选位置。注意: 复制完成后,别忘了取消这里的勾选。(作用: 仅变换物体位置,而不影响旋转或缩放)
选择这一侧的所有轮子,履带及对应的刚体约束。Shift D 复制一份。S Y -1,移动到另一侧。
右上角选项小菜单,取消勾选位置。

3.7 炮管

新增一个圆柱体,作为坦克前方的炮管。不需要设置刚体属性,将他绑定到车体上即可。
空格播放,若在崎岖的路面行驶,炮管也会上下摇晃,一会儿指向天,一会儿指向地面。
给炮管添加约束: 旋转限制. 勾选X轴,轮子滚动的轴向。
播放,炮管会随着崎岖路面上下颠簸,但方向不会变,始终指向前方。

3.8 摄像机

摄像机移动到侧后偏上位置,方便观察坦克履带运转。
将摄像机绑定到前面的炮管上。
播放时,摄像机也会跟随移动,持续近距离观察履带运转。

3.9 输出动画




2026-06-04

Blender-Curve

1. Curve
2. 曲线结构 Curve Structure
	2.1 样条线 Splines
	2.2 样条线类型
3. 基本体
	3.1 曲线基本体
	3.2 空白毛发
	3.3 毛发
4. 路径动画
	4.1 月球围绕地球旋转
	4.2 摩天轮
	4.3 摄像头旋转拍摄
	4.4 其他
	4.5 跟随路径约束
5. 曲线建模
	5.1 曲面和管状
	5.2 几何数据-倒角-轮廓
	5.3 几何数据-倒角-物体
	5.4 阵列-曲线
	5.5 阵列-曲线-平面

1. Curve

本章是阅读Blender相关手册页的笔记。
曲线 Curves 和曲面 Surfaces 是 Blender 物体的特殊类型。
Blender 同时提供贝塞尔 Bézier 和 NURBS。

贝塞尔曲线和 NURBS 曲线都是根据它们的数学定义命名的,在它们之间进行选择时通常更重要的是考虑它们如何在后台计算,而不是它们在建模者面前如何显示。
贝塞尔曲线通常更直观,因为它们从您设置的控制点开始和结束,但是当曲线中有许多曲折时,NURBS 曲线对于计算机计算更有效。

使用曲线代替多边形网格的主要优点是,曲线由更少的数据定义,因此可以在建模时使用更少的内存和存储空间来生成结果。
然而,这种处理表面的过程方法会增加对渲染时间的需求。

某些建模技术,如沿路径挤出轮廓,只能使用曲线。
另一方面,当使用曲线时,顶点级控制更加困难,如果需要精细控制,网格编辑可能是更好的建模选择。

贝塞尔曲线是设计字母或 logo 时最常用的曲线。

它们在动画中也被广泛使用,可用作物体的移动路径(见下文中的约束)和随时间改变物体属性的函数曲线。

2. 曲线结构 Curve Structure

2.1 样条线 Splines

样条是曲线物体的基本组成部分,定义了曲线的形状。
一个曲线物体可以由多个样条组成,就像一个网格物体可以包含多个互不关联的网格一样。
每个样条的形状由其控制点决定。
样条线有多种类型:多段线、贝塞尔和 NURBS,每种都有各自的曲线表示算法,如样条线类型部分所述。
样条具有独特的属性,可以在编辑模式下通过活动样条线面板进行调整。

控制点
样条线由控制点组成,控制点连接起来形成样条线。
控制点可以选择和变换,以调整样条线的形状。这类似于网格物体中的顶点。

2.2 样条线类型

1 多段线
多段样条线是最简单的类型,控制点之间没有插值。
它们用于将网格转换为曲线,可精确表示原始网格。
虽然多段样条线是精确的,但对于平滑的曲线来说,贝塞尔样条或 NURBS 样条通常是首选。

2 贝塞尔
贝塞尔样条线使用控制点和控制柄来定义其形状。
曲线段存在于两个控制点之间,由控制柄控制曲率。
每个控制点有2个向外延伸的控制柄。
编辑模式下,3D视图右上角 曲线编辑模式叠加层,可以勾选显示曲线法向箭头,表示方向和倾斜度。

控制柄类型
贝塞尔曲线支持四种控制柄类型,可以通过 [V] 进行更改:
自动: 自动调节控制柄长度和方向,以获得最平滑的曲线。显示为黄色控制柄。移动时会转换为 对齐 类型。
矢量: 控制柄直接指向相邻的控制点,可实现直线或锐角。显示为绿色控制柄。移动时会转换为 自由 类型。
对齐: 控制柄保持在一条直线上,确保曲线平滑、连续。显示为紫色
自由: 控制柄可独立移动,实现不对称曲线。显示为黑色

Note:控制点被选中后,其控制柄会以 红色突出显示,改变其通常的颜色。
例如,矢量控制柄(通常为绿色)在被选中时显示为黄色,这可能会与自动控制柄相混淆。
要禁用此效果,请在主题偏好设置下的 3D 视图 ‣ 活动样条线 中调整颜色设置。

3 NURBS
NURBS (Non-Uniform Rational B-Splines) (非均匀有理B样条)是数学上精确的样条曲线,能够呈现精确的形状。
与贝塞尔曲线不同,贝塞尔曲线只能近似形状(例如,贝塞尔圆近似于一个完美的圆),而 NURBS 可以表示精确的几何形状。

更多信息可参考维基百科页面。

NURBS 控制点有一个独特的权重属性,决定了它们对曲线的影响。
这个权重与软体模拟中使用的目标权重不同。权重可以在变换面板的 W 字段中调整。

Note:如果所有控制点的权重相同,它们的影响就会抵消。 权重的不同会导致曲线向特定控制点移动或远离特定控制点。

3. 基本体

3.1 曲线基本体

Note: 最终,所有原始曲线都将被替换为与毛发曲线相同的曲线系统。
在做到这一点之前,它们的特性将发生分歧。
它们可以互相转换,以获得全方位的编辑和雕刻功能。

在物体/编辑模式下,添加曲线 菜单提供了一些不同的曲线基本体:
  • 贝塞尔曲线: 添加一段由二个控制点构成的开放2D贝塞尔曲线。
  • 贝塞尔圆环: 添加一个闭合的2D贝塞尔圆环(由四个控制点构成)。
  • NURBS 曲线: 添加一段由四个控制点构成的开放2D NURBS 曲线,其结点 均匀 分布。
  • NURBS 圆环: 添加一个2D NURBS 闭合圆环(由八个控制点构成)。
  • 路径: 添加一段由五个对齐的控制点构成的开放3D NURBS 曲线,并启用 端点 结点和 曲线路径 设置。

3.2 空白毛发

添加一个空白的高性能曲线物体,并自动:
将活动物体指定为表面。
设置表面物体为新物体的父级。
添加一个几何节点修改器,使表面上的曲线发生变形。

3.3 毛发

为选中的物体添加毛发配置。
毛发配置基于几何节点并使用毛发节点组构建,后者是 Blender 的捆绑资产。

可参阅快速毛发获取更多信息。

4. 路径动画

路径动画 设置可用于确定子物体如何沿着特定路径移动。
Note 这个特性是不推荐的,但它仍然可用。一个更适合使用的方法是跟随路径约束。
右侧 属性编辑器 \ 曲线数据 \ 路径动画 参数: 
  • 帧:(速度) 遍历路径所需的帧数,定义 估算时刻 设置的最大值。
  • 估算时刻:沿曲线长度方向的参数位置,即追踪对象应处于的位置(该位置通过除以 帧 值进行评估)。 默认情况下,它与全局帧数相关联,但也可以通过关键帧对路径动画进行更多控制。
  • 钳制:(若是圆环,就只转1圈) 钳制曲线路径的子级,使他们不能超过曲线的起始点/结束点。
  • 跟随:(平移或始终朝向路径方向) 使曲线路径的子物体沿路径的曲率旋转。

4.1 月球围绕地球旋转

新建一个BézierCircle代表月球公转的轨道, 在Bézier圆环中心新建一个代表地球的球体, 在Bézier圆环边缘新建一个代表月球的球体。
选择月球,再选择Bézier圆环,Ctrl P,选择跟随路径。空格播放。
月球会围绕地球旋转,且月球始终只有一面面向地球。

4.2 摩天轮

同上一个例子,只是吧代表月球的球体,改成代表吊篮的方块。
选择方块,再选择Bézier圆环,Ctrl P,选择跟随路径。空格播放。
曲线的数据属性面板里的[跟随]默认情况下是勾选的,所以这时候,代表吊篮的方块也会旋转。 这个例子里,只需取消勾选[跟随]即可。
一个方块改好了,只需要Shift D 复制方块,绕圆环圆心绕30°,复制多份,完成。

4.3 摄像头旋转拍摄

也同前面的例子差不多,只是把月球改成摄像机。
对于摄像机,再增加一个标准跟踪,目标选择被拍摄的物体即可。

4.4 其他

轨道小车,输送带,履带车,缆车,滑轮,模拟鱼儿游泳的路径,蛇行进的方式... 都可以使用路径动画。 操作也很简单,只需Ctrl P 设置曲线为物体的父对象(选择跟随路径)即可。
也是因为简单,所以没有更多的参数可以设置,不能变速,或许这也是帮助文件里提到不推荐的原因之一。

4.5 跟随路径约束

上面所有的例子,都可以改为 跟随路径约束 ,好处是可以通过设置关键帧,改变速度。
跟随路径约束 面板,勾选 固定位置。偏移系数填写(0~1)的数值。
比如: 200帧的动画,曲线数据面板\路径动画的帧数也是200。那么通常会匀速绕完1周,可以循环播放的约8秒动画。
  • 第0帧,偏移系数=0,表示起点位置,I,插入关键帧。
  • 第50帧,偏移系数=0.25,表示绕 1/4圈,I,插入关键帧。
  • 第100帧,偏移系数=0.75,表示绕 2/4圈,I,插入关键帧。同样的50帧,这个区间速度会加快
  • 第200帧,偏移系数=1,表示绕完1圈,回到起点,I,插入关键帧。
这个过程也可以打开 曲线编辑器,直接修改曲线。
跟随路径约束 面板 \ 跟随曲线:  勾选 跟随曲线 表示始终朝向曲线的行进方向,比如月球同步自转。 取消勾选 就是平移模式,比如摩天轮的吊篮。
(这个和路径动画在 属性编辑器 \ 曲线数据 \ 路径动画 下的跟随作用相同。)

5. 曲线建模

5.1 曲面和管状

选中曲线,右侧属性区域,曲线数据面板\几何数据: 
挤出,可以将曲线变成曲面。

属性编辑器 \ 曲线数据 \ 几何数据 \ 倒角 \ 图形 \ 深度 (圆管)
倒角\图形\深度:可以将曲线变成管状。在轮廓页签下有一个默认为线性的曲线可以编辑。改变管子的形状。
设置好的管子,可以转换为网格,然后继续编辑。

5.2 几何数据-倒角-轮廓

新建一个Cube,删除所有面,只保留边。或者选中所有边,不包含面,Shift D.
得到一个线条的框架,这个是没法上色渲染的。
物体模式下,将其转换为曲线,然后用上一节的方法将曲线变成管子。这时,框架由圆形的管子构成。

属性编辑器 \ 曲线数据 \ 几何数据 \ 倒角 \ 轮廓 \ 下方的曲线编辑区域: (要调整为方形,只需充满整个区域即可)
选中最中间的点,拉到右上角,填满整个区域,将左下角默认的 自动型控制柄 改为 矢量型控制柄。多余的端点可以删除。框架截面就变成方形了。
之后只需要设当的配色,就可以让这个框架看起来像是木制框架,或铝合金框架。

5.3 几何数据-倒角-物体

属性编辑器 \ 曲线数据 \ 几何数据 \ 倒角 \ 物体 \ 选择另一条曲线: (任意形状)
2组曲线配合建模,与上一节类似的做法,相比调整轮廓曲线,这次使用另一个曲线作为轮廓。更加自由,更容易编辑。
新建一个曲线,编辑为期望的形状,然后在 属性编辑器 \ 曲线数据 \ 几何数据 \ 倒角 \ 物体 下选中该曲线即可。

5.4 阵列-曲线

比如铁道的建模,只需要建立一根横木和上方2段铁轨。
添加整列修改器,再添加曲线修改器。使其在沿着曲线不断延申阵列即可。

Möbius strip
莫比乌斯环/带(Möbius strip,也称Möbius band或Möbius loop )是一种由纸条两端扭转半圈连接而成的曲面。
新建一个 Bézier 圆环 ,再新建 一个Cube,编辑为长条状 木板。
给 木板,依次添加整列修改器;添加曲线修改器,选择 Bézier 圆环,不要应用。
整列修改器 ,顺着曲线圆环的方向,适当调整 旋转角度,这里的木板阵列大约34次,填满一圈。且正好旋转180°.
这时会发现,旋转一圈的木板,中间部分是平整的,但2端则呈现阶梯状。
木板,编辑模式,分别扭转2侧的表面。扭转的过程,观察和旁边阵列的变化,很容易就能调整为平顺的状态。

5.5 阵列-曲线-平面

上面的阵列加曲线可以创建道路,铁路,波纹管,莫比乌斯环等等... 
但若用同样的方式创建 类似,珍珠项链,佛珠手环,这些时,会发现阵列的珍珠会在曲线弯曲的地方变形。
这种时候需要添加一个可以被隐藏的平面,用来承受变形。
新建,曲线,球体,平面 Plane,平面大小和球体相当。将原本在球体上新增的2个修改器,阵列和曲线变形,添加到平面上。
选择 球体,平面,Crtl P. 
选择 平面,新建 阵列修改器。新建曲线变形修改器,选择曲线图形。
选择 平面,属性区,展开实例化。将视图和渲染关闭。最后,别忘了隐藏 球体 的原体。






2026-05-30

Bézier-curve

1. Bézier
	1.1 应用
	1.2 复合贝塞尔曲线
	1.3 有理贝塞尔曲线 Rational Bézier curves
	1.4 Degree 阶数与控制点
	1.5 Bézier 曲线示意图
2. B-spline
3. NURBS

 以下是维基百科笔记,更详细的内容请看各章开头的维基百科链接。

1. Bézier

Bézier curve 贝塞尔曲线(/ˈbɛz.i.eɪ/,法语发音:[ bezje ] )是一种参数曲线,广泛应用于计算机图形学及相关领域。
一组离散的“控制点”通过公式定义了一条光滑连续的曲线。
贝塞尔曲线以法国工程师皮埃尔·贝塞尔(Pierre Bézier,1910-1999)的名字命名,他在20世纪60年代将其用于雷诺汽车车身曲线的设计。贝塞尔曲线于1962年,由皮埃尔·贝兹所广泛发表。
贝塞尔曲线最初由保尔·德·卡斯特里奥于1959年运用德卡斯特里奥算法开发,以稳定数值的方法求出贝塞尔曲线。

通常,贝塞尔曲线用于近似现实世界中没有数学表示、表示方法未知或过于复杂的形状。
贝塞尔曲线可以组合形成贝塞尔样条曲线 Bézier spline,也可以推广到更高维度形成贝塞尔曲面 Bézier surfaces。
更高维度的广泛化贝塞尔曲线就称作贝兹曲面,其中贝兹三角 Bézier triangle 是一种特殊的实例。

1.1 应用

  • 电脑绘图,贝塞尔曲线是矢量图形 vector graphics 文件和相应软件(如PostScript、PDF等)能够处理的唯一曲线,用于光滑地近似其他曲线。
  • 电脑动画,贝塞尔曲线常用于定义 3D 路径以及用于关键帧插值的 2D 曲线,应用程序会创建物体沿该路径运动所需的帧。。
  • 贝塞尔曲线现在非常常用于控制CSS、JavaScript、JavaFX和Flutter SDK中的动画缓动效果。
  • 机器人技术,例如,焊接臂的运动应该平稳,以避免不必要的磨损。
  • 字体
    • TrueType字体使用由二次贝塞尔曲线组成的复合贝塞尔曲线。
    • 其他语言和图像工具(例如PostScript、Asymptote、Metafont和SVG)使用由三次贝塞尔曲线组成的复合贝塞尔曲线来绘制曲线形状。
    • OpenType字体可以使用任何类型的曲线,具体取决于 OpenType 封装器所采用的字体技术。

1.2 复合贝塞尔曲线

高阶曲线的计算成本更高。当需要更复杂的形状时,可以将低阶贝塞尔曲线拼接在一起,生成复合贝塞尔曲线。
在矢量图形语言(如PostScript)、矢量图形标准(如SVG)和矢量图形程序(如Artline、Timeworks Publisher、Adobe Illustrator、CorelDraw、Inkscape和Allegro)中,复合贝塞尔曲线通常被称为“路径”path。
路径不受栅格化图像的限制,并且易于修改。

转换
对贝塞尔曲线进行扫描转换(栅格化)的最简单方法是在多个紧密排列的点上评估曲线,然后对近似的线段序列进行扫描转换。
然而,这种方法并不能保证栅格化输出足够平滑,因为点之间的间距可能过大。
反之,在曲线接近直线的区域,这种方法可能会生成过多的点。

1.3 有理贝塞尔曲线 Rational Bézier curves

有理贝塞尔曲线通过添加可调节的权重来更精确地逼近任意形状。该权重定义了该点对曲线的“吸引力”。
其分子是加权伯恩斯坦形式的贝塞尔曲线,分母是伯恩斯坦多项式的加权和。
有理贝塞尔曲线的用途之一是精确表示圆锥曲线的线段,包括圆弧。
普通贝塞尔曲线是有理贝塞尔曲线的一种特殊情况,其中所有权重都相等。
有理贝塞尔曲线为设计者提供了更多选择,但代价是算法更复杂,需要跟踪更多数据。

1.4 Degree 阶数与控制点

  • Bézier 曲线的控制点,可以理解为端点,但只有2头的端点作为曲线的起始和终止点,其他中间端点通常不在曲线上。
  • Bézier 曲线的Degree 阶数,或翻译为次数,这里的“次”指的是用于贝塞尔曲线的多项式混合函数中的最高指数。

贝塞尔曲线可以是任意次数的。一次曲线是一条简单的直线,有两个控制点。
二次曲线是一条圆弧,有三个控制点。次数越高,控制点越多,可以绘制出越复杂的形状。
但同时,由于每个控制点都会影响整条曲线,因此使用起来也更加困难。

1.5 Bézier 曲线示意图

控制点 Degree 阶数 Gif 补充说明 Bézier/贝塞尔/贝兹 构造描述
2 一阶 / 线性
linear /
First-order
直线 line 随时间变化(0~1) 从控制点1向控制点2移动描绘出的曲线。
3 二 阶/次
quadratic /
Second-order
抛物线 parabola
圆锥弧 conic arcs
字体: TrunType
设置2个随时间移动的中间点,
模拟2段随时间变化的线性曲线.
4 三 阶/次
cubic /
Third-order
字体: PostScript, Metafont, SVG… 设置3个随时间移动的中间点,
模拟出随时间变化的2次曲线,
再在模拟的2次曲线上:
(…重复二阶的动态构造过程…)
5 四 阶/次
quartic /
fourth-order
Higher-order
高阶曲线
计算成本更高!
使用更加困难!
(只能全局修改)
牵一发而动全身
设置4个随时间移动的中间点,
模拟出随时间变化的3次曲线,
再在模拟的3次曲线上:
(…重复三阶的动态构造过程…)
6 五 阶/次
fifth-order
设置5个随时间移动的中间点,
模拟出随时间变化的4次曲线,
再在模拟的4次曲线上:
(…重复四阶的动态构造过程…)

(运动轨迹使用德卡斯特里奥算法计算)
每个控制点都会影响整条曲线,图上可看出,曲线轨迹会受到所有控制点的影响。
如上,使用递归降阶的方式动态计算描绘出曲线,阶数越高计算量越高,因此,最常用的是2阶和3阶。
更高阶的需求会使用多段低阶曲线组合成复合曲线,比如B样条。

2. B-spline

B样条的概念可以追溯到19世纪,当时尼古拉·罗巴切夫斯基在俄罗斯喀山大学探索了类似的想法 ,尽管“B样条”一词是由艾萨克·雅各布·勋伯格于1967年创造的,反映了它们作为基函数的作用。

B样条曲线广泛应用于计算机辅助设计(CAD)和计算机图形学等领域,使用等距节点 equidistant knots,通过一组控制点来塑造曲线和曲面;此外,它还可用于数据分析,例如曲线拟合和实验数据的数值微分。
从汽车车身设计到噪声测量数据的平滑处理,B样条曲线提供了一种灵活且精确地表示复杂形状和函数的方法。

De Boor算法是一个数值上稳定的计算B样条的方法。
术语 B-spline B样条是Isaac Jacob Schoenberg创造的,B 是基础(basis)样条的缩写。

B样条曲线由多个贝塞尔弧组成,并提供了一种统一的机制来定义连接处的连续性。
B样条曲线利用外部条件将多个曲线段连接起来,同时保留控制点的原始概念。
相邻曲线共享一些控制点。外部条件可以是隐式的(均匀曲线),也可以由节点向量显式给出。
节点向量定义了相邻曲线(线段)之间应该共享多少信息。
使用多段低阶Bézier组合的方式,既解决了贝塞尔曲线只能全局修改的缺陷,也解决了高阶贝塞尔需求更多资源计算的问题。

3. NURBS

Non-uniform rational basis spline 非均匀有理B样条 ( NURBS ) 是一种使用 basis splines (B-splines)(B样条)的数学模型,常用于计算机图形学中表示曲线和曲面。
它在处理解析形状(由常用数学公式定义)和建模形状方面都具有极高的灵活性和精确性。
它是一种曲线建模方法,与多边形建模或数字雕刻不同。
NURBS 曲线广泛应用于计算机辅助设计(CAD)、计算机辅助制造(CAM) 和计算机辅助工程(CAE )领域。
它们是众多行业标准(例如IGES、STEP、ACIS和PHIGS)的组成部分。
各种3D 图形、渲染和动画软件 都提供了用于创建和编辑 NURBS 曲面的工具。

它们既能被计算机程序高效处理,又能方便人机交互。
NURBS曲面是两个参数的函数,映射到三维空间中的一个曲面。
曲面的形状由控制点决定。NURBS曲面可以紧凑地表示简单的几何形状。
T-样条和细分曲面 (T-splines, subdivision surfaces) 更适合于复杂的有机形状, 因为和 NURBS 曲面相比,它们可以将控制点的数量减少一半。

一般来说,编辑 NURBS 曲线和曲面是直观且可预测的。
控制点要么直接连接到曲线或曲面,要么就像用橡皮筋连接一样。
根据用户界面的类型,NURBS 曲线和曲面的编辑可以通过控制点(类似于贝塞尔曲线)进行,也可以通过样条建模和分层编辑等更高级的工具进行。

NURBS 曲线由其阶数、一组加权控制点和一个节点向量定义。
NURBS 曲线和曲面是 B样条和贝塞尔曲线和曲面的推广,主要区别在于控制点的加权,这使得 NURBS 曲线是有理数的。

NURBS曲线和曲面有很多用途:
  • 对于给定的阶数,NURBS 集合在仿射变换下是不变的: 可以通过对 NURBS 曲线和曲面的控制点应用旋转和平移等操作来对它们进行变换。
  • 它们为标准解析形状(例如圆锥曲线)和自由形状提供了一种通用的数学形式。
  • 它们提供了设计各种形状的灵活性。
  • 与更简单的方法相比,它们可以减少存储形状时的内存消耗。
  • 它们可以通过数值稳定且精确的算法进行相当快速的评估。
  • 这里,NURBS 主要在一维(曲线)中讨论;它可以推广到二维(曲面)甚至更高维度。
  • 是非有理B样条和非有理和有理贝兹曲线和曲面的推广。

2026-05-29

Bézier-VS-NURBS

1. Bézier 曲线发展时间线
2. 各种曲线包含关系图
3. 曲线要素表
4. 小结
5. 维基百科相关链接

 Bézier-VS-NURBS
关键字: Bézier, Rational Bézier, B-spline, NURBS

1. Bézier 曲线发展时间线

1912年,伯恩斯坦多项式建立,是贝塞尔曲线的数学基础。

1959年,保罗·德·卡斯特里奥(Paul de Casteljau)运用德卡斯特里奥算法,以稳定数值的方法求出贝塞尔曲线。
并率先将其应用于法国汽车制造商雪铁龙的计算机辅助设计。德·卡斯特里奥的方法在法国获得了专利,但直到20世纪80年代才发表。

~1962年,贝塞尔多项式则由法国工程师皮埃尔·贝塞尔(Pierre Bézier )在20世纪60年代广泛宣传,他独立发现了贝塞尔多项式,并将其用于雷诺汽车的车身设计。

~1967年,B-spline B样条曲线稍后提出 (~1967),使用多段低阶曲线复合,解决了贝塞尔曲线全局修改的问题,同时降低了运算量。

~1989年,NURBS曲线最后提出 (~1989之前),定义最复杂,能表达的曲线最灵活。 主要是解决B样条不能画椭圆、正圆和双曲线的问题。

2. 各种曲线包含关系图

. NURBS 非均匀有理B样条
Non-uniform rational basis spline
. B-spline B-样条
basis spline
.
Bézier Rational Bézier
贝塞尔 有理贝塞尔曲线
.

3. 曲线要素表

曲线
Curves
阶数
Degree
控制点
Control Point
权重
Weight
节点向量
knot vector
Bézier
贝塞尔
Y Y
Rational Bézier
有理贝塞尔
Y Y Y
B-spline
B-样条
Y Y Y 等距节点
equidistant knots
NURBS
非均匀有理B样条
Y Y Y 非均匀节点
Non-uniform knot

4. 小结

  • 从小到大的看: 
    • 由最初只能全局修改Bézier 曲线
    • 增加了权重后扩展到有理 Bézier 曲线,可以精确表示圆锥曲线的线段,包括圆弧。
    • 再由多段低阶 Bézier 曲线复合,并提供统一机制(均匀节点)来定义连接处的连续性,组成B-样条曲线支持局部修改,更加容易使用。由多段低阶Bézier组成,也避免过多的运算量
    • 在以上的基础,定义非均匀节点向量,形成非均匀有理B样条,NURBS。能表达的曲线最灵活,定义也最复杂。
  • 反过来看: 
    • NURBS,非均匀有理B样条,最为复杂,也能够表达更加精细的曲线。
    • B-spline,B-样条,是NURBS的特例,使用均匀节点向量。
    • 有理 Bézier 曲线,是B-样条的一部分,B-样条由多段曲线组成。
    • Bézier 曲线有理 Bézier 曲线 的特例,所有节点权重相同的有理 Bézier 曲线就是普通 Bézier 曲线。

5. 维基百科相关链接


2026-05-21

Walking-leg-mechanism-in-Blender

1. Jansen-Linkage
	1.1 Strandbeest
	1.2 詹森连杆比
2. Blender模拟Strandbeest动画
	2.1 建模
	2.2 CAD_Sketcher
	2.3 Blender Armature
	2.4 输出
3. Walking leg mechanism in Blender

1. Jansen-Linkage

詹森连杆机构是由动态雕塑家西奥·詹森(Theo Jansen)设计的一种平面腿部机构,用于产生流畅的行走运动。
詹森已将这种机构应用于多种动态雕塑作品中, 这些作品被称为“沙滩野兽” (Strandbeest, 荷兰语意为“海滩野兽”)。
詹森连杆机构通过简单的旋转输入即可模拟有机行走运动,因此兼具艺术性和机械性。
这些腿部机构可应用于移动机器人和步态分析。 

中心“曲柄”连杆在旋转执行器(例如电动机)的驱动下做圆周运动。
所有其他连杆和销轴关节均未受驱动,其运动是由于曲柄带动曲柄运动而产生的。
它们的位置和方向由曲柄角度唯一确定,因此该机构只有一个自由度(1-DoF)。 
Jansen机构的运动学和动力学已使用圆交点法和键图(牛顿-欧拉力学)进行了详尽的建模。
这些模型可用于评估执行器扭矩,并用于此类系统的硬件和控制器设计。

1.1 Strandbeest

1.2 詹森连杆比

Jansen Linkage Ratios
Segment a l m b d e g h i c f j k
Value 38 7.8 15 41.5 40.1 55.8 36.7 65.7 49 39.3 39.4 50 61.9
Type 支架 半径R 三角形 三角形


2. Blender模拟Strandbeest动画

2.1 建模

如上,参照(詹森连杆比)表格进行建模。
新建 - 图像 – 参考 选择维基百科带有长度参数的图片,作为参考背景,辅助建模。
可以使用 CAD_Sketcher 插件,使用参数精确建模。

2.2 CAD_Sketcher

高效精准的Blender草图插件:CAD_Sketcher参数化设计工具

2.3 Blender Armature

姿态模式下的骨骼颜色
  • 灰色:默认的。
  • 蓝色线框:处于姿态模式。
  • 绿色:带有约束。
  • 黄色:带有 IK解算约束。
  • 橙色:带有无目标解算器约束。
如图或视频,看似复制的动作,实际只用到了2种约束。
绿色的复制位置约束,黄色的ik反向运动学约束,且设置只需要选择目标物体,其他设置只需默认即可。


2.4 输出


3. Walking leg mechanism in Blender

建模参数来自如下视频,同上面一样只用到了2种约束。
Walking leg mechanism in SolidWorks | Solidworks Assembly Tutorial
建模参考图: 


骨架层次参考: 


动画效果,31帧。

补充: 18年前的 Blender 制作的骨架动画。就是说2008年的Blender 就能模拟这种动画了。
Re-inventing the Wheel - Wheel-less Bicycle


2026-05-19

Blender-Armatures

1. Blender-Armatures
	1.1 骨架位置
	1.2 分类
	1.3 骨骼结构
2. 编辑
	2.1 骨骼扭转
	2.2 拆分 split
	2.3 分离骨骼 separate
	2.4 切换方向
3. 镜像编辑
	3.1 镜像挤出
	3.2 命名惯例
	3.3 对称
4. 属性
	4.1 属性结构表
	4.2 柔性骨骼 Bendy Bones
	4.3 姿态
	4.4 关系
5. 骨骼约束
	5.1 骨骼约束列表
	5.2 IK 反向运动学
	5.3 为骨骼添加 IK

1. Blender-Armatures

"骨架(armature)" 是用于绑定用的,而绑定相当于木偶(傀儡)的装配器和牵线来控制网格物体的变形。
以下是阅读手册摘录的部分内容,详细内容见Blender手册页。

1.1 骨架位置

  1. Rest Position 静置位置(简体翻译),静止位置(繁体翻译),
  2. Post Position 姿态位置。Pose,姿态(简体翻译),姿势(繁体翻译)
  • 右侧骨架属性区域,可以在Pose下切换这2种骨架位置。
  • 姿态模式下,可用 Ctrl A 将当前 姿态位置Post  应用为 静置位置Rest。
  • 如果在播放动画时,某个骨架不动了,可以检测右侧骨架属性,是否将姿态设置为Rest静止位置。

1.2 分类

Deform 形变 属性 位于右侧 骨骼属性面板。
  • Deforming Bones 变形骨骼:启用“变形”设置的骨骼会带动 vertices 顶点一起移动。
  • Control Bones 控制骨骼:禁用“变形”设置的骨骼不会拖动任何顶点。相反,它们通常用于控制其他骨骼。
注: Deform, 翻译有时用变形,有些地方会用形变。主要是针对人或动物肢体的肌肉组织。 但对于关节使用轴承的机器人,机械的运动,通常不需要考虑这部分的设置。

1.3 骨骼结构

骨架由骨骼Bone组成。1段或多端彼此连接或不连接的骨骼。
骨骼有三个基本元素:
  • "开始的关节" 叫 根部 (root) 或 头部 (head)。
  • "body (身体)" 部分是骨骼的主体。
  • "结束关节" 部分叫 顶端 (tip) 或 尾端 (tail)。
在编辑模式选择默认的骨架,在这个模式你可以选择根部(root)和尾端(tip),像操作网格顶点一样移动它们。
根部(root)和尾端(tip)(也叫 "关节" Joints)它们各自的位置定义了骨骼。
它们都有半径属性,但只在封套变形模式下有用(见下文)。

扭转
激活轴向复选框将显示每个骨骼尖端的局部轴。 Y 轴始终沿着骨骼对齐,从根部到尖端,这是骨头的 "滚动" 轴。

2. 编辑

Important
了解关于骨架编辑的一个重要之处是编辑骨架的 重置位置,即其 "默认状态"。
骨架位于 重置位置 所有骨骼 没有 旋转并在其局部空间所有缩放到1.0.

你可能之后会创建基于此静置位置的不同姿态。 所以如果你在 编辑模式 下修改它,已经存在的所有姿态也将被修改。
因此,你通常应该在开始蒙皮和姿态之前,确保你的骨架是确定的!

Note: 请注意,一些工具适用于骨骼的关节,而其他工具可以在骨骼本身上工作。小心不要混淆。

变换
骨骼的根部和尖端的行为或多或少类似于网格的顶点,而骨骼本身的行为类似于网格中的边缘。 
骨骼有两种关系:它们是父子关系和连接关系。 

需要注意的是当调整骨(通过直接进行缩放,或者通过移动其关节中的一个)大小时,Blender 自动校正它的封套的末端半径。
因此,建议首先放置所有骨骼,然后才能编辑这些属性。

2.1 骨骼扭转

骨骼滚动是骨骼静止姿态的一部分,它定义了骨骼绕其长度方向的默认旋转。
编辑模式 下可以控制骨骼滚动。
  • 菜单: 骨架 ‣ 骨骼扭转 ‣ (重算扭转/设置扭转/清除扭转)
  • 快捷键: Shift-N 重算扭转. 自动将所有选定骨骼的滚动方向与各种参考点对齐。
  • 快捷键: Ctrl-R 设置扭转. 调整所有选定骨骼的扭转。
  • 快捷键: Alt-R 清除扭转. 将所有选定骨骼的扭转设置为 0°.

2.2 拆分 split

快捷键: Y 或者 菜单: 骨架 ‣ 拆分
拆分 操作会将所选骨骼与骨架的其余部分断开,创建一个新的、无连接的骨骼链。
注意: 此运算符仅影响骨骼连接;骨骼仍位于同一骨架对象内。

2.3 分离骨骼 separate

快捷键: P 或者 菜单: 骨架 ‣ 分离骨骼
你可以像网格那样,分离骨骼为一个新的骨骼物体通过 骨架 ‣ 分离 或 Ctrl-Alt-P, 当然,在 物体模式 下,你可以将所有选择的骨架合并为一个骨架物体,通过 物体 ‣ 合并 或 Ctrl-J.

2.4 切换方向

快捷键: Alt-F 或者 菜单: 骨架 ‣ 切换方向
该工具用于切换所选骨骼的方向(即它们的头部将成为其尾端,反之亦然)。
切换骨骼的方向通常会破坏它所属的链条。
但是,如果你换整个(一部分)链,则切换的骨骼仍将保持父子和链接关系,但是以 "相反的顺序"。

3. 镜像编辑

3.1 镜像挤出

骨骼有一个额外的 "镜像挤出" 工具,通过按 Shift-E 来调用。默认情况下,它的行为与标准拉伸完全相同。
但是,一旦您启用了X 轴镜像编辑选项,每个拉伸的提示将产生 两个新骨骼,除了 "_L"/ "_R" 后缀(对于左/右,请参阅命名约定)之外具有相同的名称。
"_L" 骨骼的行为类似于默认拉伸产生的单个骨骼 -- 您可以以完全相同的方式移动,旋转或缩放它。
"_R" 骨骼是它的镜像对应物(沿着骨架的局部 X 轴),参见图 镜像挤出示例。。

3.2 命名惯例

在Blender命名习惯不仅仅是用于找到正确的骨骼,也告诉Blender哪两个骨骼是配对骨骼。

如果骨架可以镜像另一半(即它是两侧对称),这是值得坚持左/右命名的约定。
这将使您能够使用一些工具,可能会节省您的时间和精力(如 X 轴镜像 的编辑工具,我们上面看到的...)。
有效的分隔符示例:
  • (无): handLeft --> handRight
  • "_" (下划线): hand_L --> hand_R
  • "." (点): hand.l --> hand.r
  • "-" (破折号): hand-l --> hand-r
  • " " (空格): hand LEFT --> hand RIGHT
自动命名
菜单: 骨架 ‣ 名称 ‣ 自动命名左/右、前/后、上/下
骨架 ‣ 名称 的三个 自动命名 条目允许您根据其头部相对于骨架原点及其局部坐标的位置,自动为所有选定骨骼添加后缀:
  • 自动命名左/右:正 X 坐标根部添加".L"后缀,负 X 坐标根部添加".R"后缀,0坐标加"."。
  • 自动命名前/后:正 Y 坐标根部添加 ".Bk" 后缀,负 Y 坐标根部添加 ".Fr" 后缀,0坐标加"."。
  • 自动命名上/下:正 Z 坐标根部添加 ".Top" 后缀,负 Z坐标根部添加 ".Bot" 后缀,0坐标加"."。
翻转名称
菜单: 骨架 ‣ 名称 ‣ 翻转名称
您可以在选定的骨骼名称中翻转左/右标记(参见上文)。
Blender将根据上述命名约定交换骨骼名称中的文本,并在可能的情况下删除数字扩展名。

3.3 对称

“对称化”运算符会使用 Blender 的对称骨架骨骼命名规则,沿 X 轴镜像选定的骨骼 。
骨骼可以 左到右镜像,也可以 右到左镜像,具体取决于选择情况。

对称骨骼和约束属性会进行调整,以反映它们的行为。
对于带有动作约束的骨骼,会在目标动作中添加关键帧,以确保在动作激活时运动对称。

注意:对称化过程中不会创建或影响骨骼或约束驱动器。

4. 属性

4.1 属性结构表

属性 物体模式
Object Mode
编辑模式
Edit Mode
姿态模式
Pose Mode
物体
Object
变换,关系,集合,运动路径
可见性,视图显示,动画,
数据
Data
姿态: (姿态位置, 静置位置)
骨骼集合, 选择集, 运动路径
IK 反向运动 – 解算: (标准, iTaSC)
视图显示, 动画, 自定义属性
骨骼
Bone
°-° 变换 Transform
柔性骨骼 Bendy Bones
关系 – 继承缩放:
(完整, 修复切变, 对齐, 平均, 无)
°-° °-° IK 反向运动
(…)
Deform形变, 视图显示, 自定义属性
约束 °-° °-° 骨骼约束
* 表中,橙色表示骨骼特有的属性。°-°表示该模式下没有本行属性。
更多详细信息,参阅手册页:
除了前面提到过的:骨架位置状态,Deform形变,还有如下几项骨骼特有的属性。
柔性骨骼 Bendy Bones,骨骼关系,IK 反向运动和 FK,骨骼约束

4.2 柔性骨骼 Bendy Bones

柔性骨骼(B-Bones)是取代许多小型刚性骨骼长链的简单方法。弯曲骨骼主要用于脊柱模型或面部骨骼。
显示:只有骨骼视图显示设置为 柔性骨骼 才能看到这些分段。
当视图显示不是 柔性骨骼 时,即使骨骼分段仍然存在并且有效,骨骼总是显示为刚性棍形。
这意味着即使在例如 八面体 可视化的显示方式,如果链中的一些骨头有分段,他们仍然会使他们的几何体平滑变形。

柔性骨骼有两组弯曲骨骼属性 -- 一组用于编辑模式(即静置姿态/基础绑定),另一组用于姿态模式 -- 将它们的值相加或相乘以获得最终变换。
Blender 将柔性骨骼看成通过骨骼关节的贝塞尔曲线一部分。骨骼两端的手柄以控制曲率。

4.3 姿态

Bone State Colors 骨骼的状态颜色
骨骼的颜色基于它们的状态。有六种不同的颜色代码,在这里按优先级排序(即骨骼将是最底部有效状态的颜色):
  • 灰色:默认的。
  • 蓝色线框:处于姿态模式。
  • 绿色:带有约束。
  • 黄色:带有 IK解算约束。
  • 橙色:带有无目标解算器约束。
Note:当 骨骼配色 被启用时,状态颜色将被覆盖。

当设置你的骨架的姿势时,你应该有一个或多个物体的皮肤在上面!
很明显,当你在 姿态模式 下变换一根骨骼时,它的相关物体或物体的形状会相应地实时移动、变形。
不幸的是,如果你有一个复杂的控制器设置和/或一个厚重的蒙皮对象,这可能会在交互式编辑中产生滞后。
如果你遇到这样的麻烦,可以尝试启用 骨架 面板中的 延时变形 按钮,蒙皮对象只有在你确认转换操作后才会被更新。

4.4 关系

在此面板中,您可以管理此骨骼与其父骨骼的关系。它还会显示此骨骼所属的骨骼集合。
骨骼关系对变换行为的影响。默认情况下,子骨骼继承:
  • 其父位置与自身的偏移量。
  • 其父旋转的角度 (即他们保持恒定旋转相对于其父级)。
  • 其父缩放,与自身偏移量。
这些继承行为将沿骨骼的层次结构传播。所以当你缩小骨骼时,它的所有后代子级按默认值相应缩小。
但是,如果在此 "系列" 中设置了一个骨骼的 继承缩放 或 继承旋转 属性,这将打破继承传播,当你缩小它的祖先(父级)时,这个骨骼 和它所有的后代(所有的子级) 将不再受到影响。

  • 完整: 骨骼继承父级缩放和剪切的所有效果。
  • 修复切变: 将完整的父级效果应用于子级的静置状态,之后以保留骨骼方向、长度和体积的方式去除任何剪切,并且最小程度地影响平均滚动。结果与子级的自身变换相结合。如果继承的比例不均匀,这不会阻止剪切由于子级骨骼或其子级的局部旋转而重新出现。
  • 对齐: 父级缩放是继承的,如同子级的方向与父级相同,始终在子级 X缩放基础上应用父级 X 缩放,等等。
  • 平均: 继承表示父级体积总体变化的均匀缩放系数。
  • 无: 忽略父级的所有缩放和剪切。
  • 无(旧版): 忽略所有缩放,前提是父级未被切。如果是,则不能保证。
    • 此选项将复制旧 “继承缩放” 复选框的行为,并可能在将来的版本中删除。
Tip
  • 各种 继承缩放 选项作为工具提供,以避免由不均匀缩放与父级指定和旋转结合引起的切变。
  • 没有明显的最佳方式来实现这一目标,因此不同的选择对不同的情形是有用的。
  • 无 - 用于完全控制子对象的缩放,例如,手动使用约束覆盖其缩放。
  • 平均 - 用于阻止子骨骼之间的挤压和拉伸传播,同时允许尺寸和体积的均匀变化传递。
  • 对齐 – 可用于骨骼链(例如触手),以便无论触手如何弯曲,都能使纵向缩放按纵向传播,横向缩放按横向传播。 类似于将“无”设置为“从父对象复制缩放”。
  • 固定剪切 – 可用于附属物的根部,以便根据父对象和子对象静止姿势方向的差异,重新分配轴向之间的挤压和拉伸。 它的行为最接近“完全”,同时抑制剪切。
因此,在调整骨骼链的姿势时,应该始终从根骨到末端骨逐一编辑。
这个过程称为正向运动学 Forward Kinematics (FK)。
我们将在后面的页面中看到,Blender 还提供了另一种姿势调整方法,称为反向运动学 Inverse Kinematics (IK),它允许您仅通过移动末端骨来调整整个骨骼链的姿势。

5. 骨骼约束

5.1 骨骼约束列表

骨骼约束仅在骨骼的姿态模式下可用,如下是骨骼约束列表。
和普通约束相比,多了IK反向运动学 Inverse Kinematics 和样条线 Spline IK。
运动追踪 Motion Tracking 变换 Transform 关系 Relationship
摄像机结算 Camera Solver 复制位置 Copy Location 动作 Action
跟随轨迹 Follow Track 复制旋转 Copy Rotation 骨架 Armature
物体结算 Object Solver 复制缩放 Copy Scale 子级 Child Of
复制变换 Copy Transforms 基面 Floor
追踪 Tracking 限定距离 Limit Distance 跟随路径 Follow Path
钳制到 Clamp To 限定位置 Limit Location 几何属性 Geometry Attribute
阻尼追踪 Damped Track 限定旋转 Limit Rotation 轴心 Pivot
反向运动学 Inverse Kinematics 限定缩放 Limit Scale 缩裹 Shrinkwrap
锁定追踪 Locked Track 维持体积 Maintain Volume
样条线 IK Spline IK 变换 Transformation
拉伸到 Stretch To 变换缓存 Transform Cache
标准追踪 Track To

5.2 IK 反向运动学

反向运动学(IK)简化了动画过程,并使得以更少的工作量制作更高级的动画成为可能。
反向运动学允许您将骨骼链中的最后一个骨骼定位,其他骨骼会自动定位。
这就像移动某人的手指会导致他们的手臂跟随它一样。

5.3 为骨骼添加 IK

模式: 姿态模式
  • 快捷键: Shift-I 或者 (菜单: 姿态 ‣ 反向运动学 ‣ 为骨骼添加 IK) 或者 (右侧属性区\骼约束面板里添加)
  • 快捷键: Ctrl-Alt-I 或者 (菜单: 姿态 ‣ 反向运动学 ‣ 移除 IK) 从所选骨骼中移除反向运动学约束。
初始链长度为 0,这实际上意味着尽可能遵循与父骨骼的连接,没有长度限制。
因此,第一次按下增加链长度会将长度设置为 1(仅移动所选骨骼),此时,减小长度点会再次将其设置回 0(无限制)。

Blender-Tank-Tracks

导航 (返回顶部) 1. Continuous track 2. 使用Blender模拟履带运动 2.1 履带建模-曲线阵列 2.2 约束-关系-子级 2.3 约束-关系-轴心 2.4 copy 2.5 轮子 2.6 输出简单动画 2.7 复杂道路行驶问题 ...