文章目录
- Blender里的三种绑定.
- 骨骼.
- 骨骼基础.
- 骨骼的父子关系.
- 挤出骨骼.
- 细分骨骼.
- 骨骼分层.
- 骨骼分组.
- 骨骼约束.
- 骨骼被遮挡.
- 对称骨骼.
- 为模型绑定骨骼.
- 刚体物体,只跟随骨骼的移动,不随骨骼移动发生形变,如机械.
- 软体物体,跟随骨骼的移动,且随骨骼移动发生形变,如人体.
- 限制骨骼的旋转角度.
- 为骨骼设置权重.
- 方法1 使用顶点组.
- 方法2 调整单一顶点.
- 方法3 权重绘制.
- 为一个物体整体设置权重.
- 骨骼封套.
- Rigify骨骼插件.
- 使用Rigify创建骨骼.
- 骨骼系统.
- 生成骨骼系统.
- 骨骼系统使用.
- 绑定物体到骨骼系统.
- 保存姿态.
- 删除脸部骨骼.
- FK与IK.
- 添加IK.
- 绑定模型到IK骨骼.
Blender里的三种绑定.
1 Blender中一共有三种绑定模式,分别是 主从绑定,约束,骨骼
骨骼.
骨骼基础.
1 这是一段骨骼:1是尾 2 是身体,点击身体可以选中整个骨骼 3是头。移动头和尾不会改变骨骼的整体位置,要改变位置需要选中身体
骨骼的父子关系.
1 如果我们在编辑模式下新建一个骨骼,新旧骨骼之间没有关系,移动一个骨骼不会影响另一个骨骼,想让骨骼间产生联系,必须为骨骼间建立父子关系
2 建立骨骼父子关系(同一个骨架的编辑模式,而不是两个骨骼物体),先选子骨骼,再同时选中选父骨骼,ctrl+P,有两种模式
-
保持偏移量:不会移动子骨骼的位置,但是子骨骼的头会远程连到父骨骼的尾上。此时在编辑模式下移动父骨骼的尾不会影响子骨骼的头,但是在姿态模式下移动父骨骼会改变子骨骼的位置。这种连接方式主要用于受主体骨骼影响但不直接相连的骨骼,例如两个耳朵和头骨的关系
-
相连项:子骨骼的头会吸附到父骨骼的尾上,此时在编辑模式移动父骨骼会影响子骨骼,在姿态模式下同样会影响子骨骼
挤出骨骼.
1 在编辑模式下,选择尾,然后按E键挤出一个新骨骼,新骨骼是旧骨骼的子物体
2 在编辑模式下,选择头,然后按E键挤出一个新骨骼,新骨骼和旧骨骼没有任何关系
细分骨骼.
1 细分骨骼可以把一整根完整的骨骼拆为多个小的骨骼。
2 编辑模式下,选中骨骼的中段,左上角骨架,选择细分,在临时菜单里选择细分段数
骨骼分层.
1 可以在骨骼的物体数据属性(绿色)里对骨骼进行分层
2 点击一个格子,来只显示这一层的骨骼,对于空层,可以新建骨骼
3 使用shift单击来同时显示多个层的骨骼
4 删除一个层里所有的骨骼后,这个层就会消失
骨骼分组.
1 骨骼分组必须在姿态模式下进行
2 选择物体数据属性(绿色)/骨骼组,点击加号新建一个骨骼组,然后选中几个骨骼,点击指定即可
3 点击骨骼组右下角的选择来选择当前骨骼组的骨骼,点击弃选来取消选择当前骨骼组的骨骼,注意,点击选择后,如果之前有选中的其他骨骼,其他骨骼仍将保持选中状态
骨骼约束.
1 骨骼可以添加骨骼约束,骨骼约束是添加给单根骨骼的,和约束的选项相同
骨骼被遮挡.
1 如果骨骼被挡住,可以勾选 骨骼的物体数据属性(绿色小人)/视图显示/显示/在前面
对称骨骼.
1 先设置好一半的骨骼,骨骼的名字里必须使用_L或_R的后缀区分左右(每一根需要对称的骨骼都要改,否则对称不生效),然后选择一半的骨骼,不包含脊柱,左上角,骨骼/对称,即可自动生成另一半骨骼,名字也会自动改为对应的左右
为模型绑定骨骼.
刚体物体,只跟随骨骼的移动,不随骨骼移动发生形变,如机械.
1 先选中模型,再同时选中骨骼,ctrl+P建立父子关系,选择 骨骼
2 如果想把一个模型绑到一根骨骼上,如车轮,物体模式下,可以先选中车轮,然后同时选中骨架,进入姿态模式,再选中车路处的一根骨骼,然后再建立父子关系(骨骼模式)
软体物体,跟随骨骼的移动,且随骨骼移动发生形变,如人体.
1 确保骨骼在模型内部
2 最简单的绑定,我们不会使用这种方式绑定骨骼,太笨了。将模型设置为骨骼的子物体(ctrl+P,使用物体模式),在模型的物体数据属性里添加顶点组(模型的物体数据属性(绿色)/顶点组),将顶点组设置为对应骨骼的名字(名字必须对的上),然后为顶点组添加合适的顶点,然后在骨骼的姿态模式里调整姿态,即可控制模型
3 自动绑定骨骼与顶点组,将模型设为骨骼的子物体(ctrl+p),在弹出来的菜单里,选择附带空顶点组,附带封套权重,附带自动权重
- 附带空顶点组:自动为骨骼创建顶点组,但不会自动绑定顶点,没用
- 附带封套权重:自动为骨骼创建顶点组,自动绑定顶点,但自动绑的顶点不理想,没用。封套是什么参考本节骨骼封套部分
- 附带自动权重:自动为骨骼创建顶点组,自动绑定顶点,但不是完全完美的,有些顶点需要调整,用这个
4 需要注意的是,模型的布线会影响骨骼的动画效果,关节处的线需要够多,如果关节处的线离得远,弯曲的内侧不会重叠,外侧拉伸比较严重,如果离得太近,弯曲的内侧会重叠,外侧的拉伸则不太明显,可以套用一个表面细分修改器来改善效果,可以查看B站上关于关节如何布线的视频
限制骨骼的旋转角度.
1 骨骼默认是可以360度旋转的,但大部分情况下我们不希望他能随便转
2 只能限制添加了IK或被IK控制的骨骼,有两种方式限制,进入姿态模式,选中一根骨骼,在骨骼数据属性(绿色骨骼)/反向运动学
- 方式一:选择锁定IK 的XYZ轴向,这样将彻底限制一个轴的旋转
- 方式而:使用 X/Y/Z限值,调整最大值(0-180)和最小值(-180-0)。来限制角度,对于汽车的悬挂建议用这个,因为汽车的转向装置并不是在某个轴上锁死的,而是只能转一个角度
为骨骼设置权重.
1 当我们绑定好骨骼后,有时候需要手动调整权重,有三种方法可以调整权重
2 绘制权重是需要注意,有的部分或点不会被自动设置权重,我们可以通过在骨骼的姿态模式里移动骨骼,如果有模型的顶点没有跟随移动,则检查是否有顶点没有被加入顶点组,或者没有正确绘制权重
方法1 使用顶点组.
1 进入物体的编辑模式,选择一个顶点组,然后选择需要调整的顶点(只选择需要的顶点组内需要调整 的顶点即可),在权重处调整顶点
方法2 调整单一顶点.
1 编辑模式下单击一个顶点,在条目里可以看到影响当前顶点的所有骨骼,可以去除骨骼和调整一根骨骼的权重
方法3 权重绘制.
1 进行顶点绘制需要选中骨架,再同时选中物体,然后左上角进入物体的权重绘制模式。先选中骨骼的目的是为了在绘制中可以通过ctrl+左键点击骨骼自由切换当前显示的骨骼权重。如果不同时选中骨架,直接进入物体的权重绘制模式,可以通过切换物体数据属性里的顶点组来显示不同骨骼的权重。
2 使用权重绘制左侧的不同笔刷即可涂抹权重,权重为1 是红色,权重为0是蓝色
为一个物体整体设置权重.
当已经绑定好网格与骨骼,但有某些单独的物体没有被骨骼控制
1 首先选中骨骼,同时选中物体,进入权重绘制模式,ctrl+左键 单击目标骨骼,查看是够有对应的顶点组(骨骼),然后进入物体的编辑模式,将物体指定进骨骼的顶点组即可
骨骼封套.
1 选中一个骨骼,在骨骼的物体数据属性(绿色小人)/显示为,改为封套,即可看到封套骨骼,骨骼越粗,代表权重越大
2 进入骨骼的姿态模式,选中一根骨骼 ,可以看到白色线框,这是封套的影响范围,只有被白框框起来的顶点才会被刷上权重,且权重大小和封套的粗细有关
3 姿态模式,选中一根骨骼,在骨骼的骨骼属性(绿色骨骼)/形变 里,可以调整封套的范围和粗细。
- 封套间距:整体调整封套的影响范围
- 尾端:骨骼尾部的粗细
- 头部半径:骨骼的头部半径无法调整
Rigify骨骼插件.
Rigify是Blender自带的骨骼插件,可以快速创建各种预设骨骼
使用Rigify创建骨骼.
1 启用插件后,新建骨骼里会多出很多选项
- Human:人体骨骼,包含面部骨骼和手指骨骼。面部骨骼仅用于写实人体,动漫人体的表情不用骨骼。而是使用形态键直接修改面部顶点,参考文章形态键
- Animals:动物骨骼,包含 鸟,猫,马,鲨鱼,狼
- 基本:包含一个基本人体骨骼,没有面部骨骼和手指骨骼,只有躯干骨架
2 自动创建的人体骨骼通常不符合我们的模型,我们需要手动缩放(建议脸部对齐),在编辑模式里手动调整骨骼位置。有以下几个注意点
-
编辑模式,可以打开舞台右上角的镜像对称
-
脚后跟处有一段单独的骨骼,要放在脚后跟处
-
脊柱不应该是直的,人的脊呈S型
-
- 调整手指时,可以打开吸附功能,调整到体积模式,这样比较容易放在模型内部,但还是需要注意有没有吸附错误
-
手掌骨骼的末端 应该低于手指骨骼的头端,且四个手指头部应该是向内呈半圆聚拢的
-
如果在调整完位置后,发现骨骼有扭滚的现象,可以在编辑模式选中骨骼,N键菜单,调整 扭转 属性,一般设为0即可(调整的结果以八面锥的一个平面冲上为准)。或者选中骨骼,在 属性栏/骨骼属性(绿色骨头)/变换 里调整扭转属性。这种现象是因为父级骨骼发生了转动。
-
脸部骨骼不是放在模型内部,而是要尽可能贴近面部
-
眼睛上方的骨骼并不是眼皮,而是放在眉毛和眼睛之间
-
嘴里的骨骼分别是上下牙,舌头
-
眼球的骨骼要稍微凸出一点
-
-
-调整完毕后,回到物体模式,ctral+A套用全部变换
骨骼系统.
生成骨骼系统.
骨骼系统是我们实际使用的骨骼,这个系统是Blender自带的
1 调整完骨骼后,一定要ctral+A套用全部变换
2 物体模式,然后进入骨骼的物体数据属性(绿色小人)然后选择生成rig
3 生成完毕
骨骼系统使用.
1 进入姿态模式
2 骨骼系统的控制分为FK与IK,其中红色的控制点(如手掌上的红色半圆)是IK节点,绿色的控制点(如胳膊上的绿色圆圈)是FK节点。黄色是旋转节点,这些节点应该只用旋转控制。红色箭头可以通过旋转调整手臂的扭转
3 默认是IK控制的方式,调整FK节点不会影响姿态,如果想让动作应用到FK节点的状态,在N键菜单的 条目 里找到并点击 IK->FK
4 如果想要回到最初姿态,可以左上角 姿态/清空变换
5 查看骨骼:骨骼系统实际上为我们生成了一套新的骨骼,回到物体模式,选中骨骼系统,找到物体数据属性(绿色小人)/层,右下角的是三个层就是骨骼。我们应该只看这三个里的左边第一个
绑定物体到骨骼系统.
1 选中所有须有的模型,最后同时选中骨骼系统,然后ctrl+p,自动权重绑定
2 有可能出现骨骼热权重提示骨骼解算出错,但绑定仍会继续,且大部分骨骼仍将成功,除非出现问题,可以忽略这个警告
保存姿态.
1 现在的姿态需要保存到资产浏览器里
2 需要安装内置插件 poslibrary。这个插件是默认安装的
3 姿态模式,选择修改过的骨骼系统的骨骼,N键菜单,动画创建姿态资产。如果不知道修改了那些骨骼,就A全选
4 在窗口里打开资产浏览器,双击姿态,即可打开姿态
删除脸部骨骼.
1 除了脸部骨骼外,头骨里还有一根内部的骨骼,要打开透视模式shift+z才能看见,这根骨骼也要删掉
FK与IK.
1 FK即正向运动学,就是普通的骨骼控制
2 IK即反向运动学,通过小骨骼带动大骨骼。当使用IK时,需要额外拉出一根骨骼,并断绝父子关系,用于控制IK
3 IK是通过添加 骨骼约束(骨骼特有的约束)/追踪/反向运动学 约束实现的
添加IK.
1 进入编辑模式,先拉出(E)一根额外的骨骼,用于控制IK,然后断开父子关系,
2 进入姿态模式,先选中Ik控制骨骼,然后选中小腿的骨骼,shift+I添加IK约束,小腿变成黄色,说明已经添加了IK约束。也可以手动为骨骼添加IK约束,姿态模式选中一根骨骼,在骨骼约束里,添加 追踪/反向运动学 约束,目标选择骨架,骨骼选择IK控制骨骼
3 此时移动IK控制骨骼,会发现大腿也会受到控制,我们可以看到有一根线指示控制骨骼连接到了大腿,即使IK约束在小腿上
4 此时查看小腿的IK约束,调整链长为1,则可以只让小腿受到IK影响,大腿不受影响。链长为0时,影响将会追踪到当前骨骼的跟骨骼,如果设置了链长,则为影响的范围为,从当前骨骼往根骨骼方向数第几个骨骼
5 当我们移动IK控制骨骼时,小腿会跟着移动,但是如果我们旋转IK控制骨骼,小腿不受影响。如果需要让骨骼跟随IK控制骨骼旋转,可以为骨骼添加骨骼约束(不是普通约束)的子级约束,将骨骼(这次不是目标)设置IK控制骨骼
绑定模型到IK骨骼.
1 和普通绑定方式一致,但是需要注意,进入编辑模式,选择IK控制骨骼,关闭 骨骼属性(绿色骨骼)/形变。然后再进行 自动权重绑定。关闭形变的目的是防止IK控制骨骼对模型产生影响