C4D角色动画绑定详解

原创  2021年8月11日  ofso 未经作者授权,禁止转载

模型要在全局的世界中心

步骤:

1、塌陷身体对象,调整坐标,身体坐标轴对齐Y-100%;

2、模型归零,XYZ位置坐标归零;

3、以身体归零为基准调整其他部位;

4、创建骨骼:角色-关节工具-CTRL+关节工具(创建一个关节链条以后全选这条关节,在对象属性中轴向Z轴对齐,这样做保障使上一个骨骼的Z轴方向始终指向下一个关节)


  ①脊柱:髋关节-腰部-胸部-脖子-头部-头顶(全选关节链条,Z轴对齐)

  

blob.png

 

blob.png

  


  ②腿足:L_大腿-L_膝盖-L_脚腕-L_脚掌-L_脚尖(全选关节链条,Z轴对齐)

  

blob.png

 

blob.png

 


 ③手臂:L_肩膀-L_大臂-L_小臂-L_手腕

 

blob.png


 

blob.png

 


  

 ④手指创建

  选中身体对象进入点层级,U~L循环选择;

  选择要建立关节的位置一圈的点

  

blob.png


  角色-转化-所选到关节(一定要按住SHIFT然后点击这个所选到关节这个按钮,否则只能生成一个)

  

blob.png



  调整关节位置

  建立父子级关系:L_小拇指0-L_小拇指1-L_小拇指2-L_小拇指3(全选关节链条,Z轴对齐)

blob.png

  



blob.png




同样方法建立:无名指、中指、食指、大拇指、手掌骨;


blob.png

 

blob.png



调整手指轴向,使手指关节旋转时和指尖方向一致

⑤建立各骨骼间的层级关系(保证原有层级关系不被打乱,比如大腿的父级是髋关节,和腰部同级,但大腿要放在腰部下面,肩膀同理和脖子同级,放在脖子下面)

blob.png


5、腿部和脚部控制器建立

控制器其实就是用来控制骨骼运动的一些对象,通常我们用空对象作为控制器。

 资料:什么时候用IK什么时候用FK,Ik和FK的区别


创建IK:

选中要创建IK的关节-角色-命令-创建IK链


blob.png

blob.png




会自动生成一个控制器


blob.png


移动控制点后关键形成反向动力学关联运动



blob.png



创建控制器:控制器建立在所有共同运动的关节的支撑点或子级末尾的关节,父级控制器将带动子级控制器在受反向动力学影响的情况下做出运动,例如脚步控制器可以产生抬脚脚尖旋转脚腕旋转等效果。

脚部控制:控制脚的运动

脚尖抬起:控制脚尖的旋转


blob.png



拓展控制器便捷生成方法:


blob.png

blob.png



脚掌控制脚腕抬起

blob.png

blob.png



将脚尖抬起替换脚尖目标IK


blob.png


               脚尖抬起替换脚尖.目标,删除脚尖目标(原来自动生成的脚尖.目标不能旋转,重新替换一个空对象就可以旋转)


blob.png


脚腕旋转

添加大腿的旋转手柄(作用是运动过程中关节朝向限制)

选中大腿IK链便签在属性-极向量-添加旋转手柄


blob.png


大腿旋转手柄朝前

blob.png



脚腕旋转手柄在后脚跟


blob.png

blob.png


6、表达式


在选择对象管理器中选中对象-右键-CINEMA 4D标签-XPresso标签

blob.png

blob.pngblob.png

blob.png


blob.png

拓展:添加到HUD(选中属性,右键-添加到HUD,HUD的位置,是在使图中的位置,和对象坐标同步,也就是说想将HUD放在哪,就把坐标 视图移动到哪,是视图)

blob.pngblob.png


 

7、手臂控制器建立

blob.png



8、手部控制器建立(FK方式绑定)




选中一个手指的每一个关节,角色-转化-关节转换为空对象,生成这个手指的控制器

blob.png

然后全选这个手指的骨骼,右键-角色标签-约束,打开PSR,将生成的空对象对应的绑定给约束标签目标blob.png

blob.png

创建XPresso,新建用户数据,创建每个手指的张开和旋转,将手掌控制器拖入XPresso,将输出引入新建的用户数据,拖入手指控制器,将输入引入对应的属性,链接每一个属性。

blob.png


blob.pngblob.png

blob.png



9、颈椎绑定(FK方式绑定)

选中关节-角色-转化-关节转化为空白对象

blob.pngblob.png

建立约束

blob.png


10、镜像骨骼和控制器(之前的命名规范一定要带前缀,例如:L_)

全选带L的控制器、旋转手柄、骨骼。

blob.png

角色-镜像工具
blob.png

blob.png

镜像:+代表L左,-代表右

调整选项-属性轴:镜像轴

命名:前缀替换(谁替换谁)

blob.png

工具-镜像

blob.pngblob.png

检查:骨骼、控制器、命名、XPresso、约束等。



11、绑定蒙皮

当我们建立好骨骼和控制器,将骨骼和模型之间建立连接就是蒙皮。


整理骨骼:新建空白对象-将模型以外的对象放进去,命名“全身”。blob.pngblob.png

选中髋关节—头顶的控制器,ALt+G打组,命名上半身。

blob.png999.gif

绑定对象:骨骼和塌陷的可编辑模型,五官、头发放入髋关节中头部骨骼带动,后面可以通过表情动画制作。

绑定步骤:全选所有骨骼和身体-角色-命令-绑定

blob.pngblob.png

会在身体上生成权重表达式标签和蒙皮,蒙皮实质上是变形器。(父级骨骼如果隐藏了,需要将作为其子级的模型开启强显)blob.png99999.gif



12、刷权重信息(动作要求越高权重越精细,后期的动画运动如果出现穿模的情况,需要根据出现问题的点,使用权重管理器查看权重情况,使用权重工具重新添加或减去权重,并设置权重大小,得以改善。)

blob.png(已修复)

权重信息是在点上面的!权重就是骨骼对当前模型点位置的控制强度,在关闭细分曲面后可以看到。

角色-管理器-权重管理器

blob.png

选中权重标签,查看权重管理器

blob.png

权重工具:和画笔一样,按住鼠标中键左右拖拽代表画笔大小,上下拖动代表强度。

blob.pngblob.pngblob.png

权重标签

blob.png
权重信息解释:当前点的名称和位置,(100%)代表整体权重,整体权重不到100%或出现点面穿插,被髋关节(98.56%)控制98.56%,L大腿(1.44%)L_大腿控制1.44%。

blob.png

先调整左侧权重(L_)

膝盖:将脚部的权重去掉

blob.pngblob.png

点模式选择脚部——权重管理器:修改强度为0——应用到所选

blob.png888.gif

脚腕和脚掌

blob.png

权重平滑过渡:选中脚腕和脚掌,循环选择交接的点,强度28%,应用到所选
blob.png
blob.png

胸部、肩膀、L_大臂、L_小臂、L_手腕、L_手掌权重,不同的姿势可能需要不同的权重,随时调整。
选中L_左侧权重,点击镜像+到-,blob.png,右侧自动和左侧一样。

blob.pngblob.png


绑定好的模型

blob.pngblob.png

8888.gif

13、直线行走动画
创建顺序:首尾预备动作f0、f32相同的循环动作帧z轴向前p:z-170,然后f16过渡动作z轴向后p:z140,f24为f16和f32过渡动作Y轴脚部抬起p:y70(示例图之后再次调整),在行走动作总实际上f16为关键动作起始,F32为关键动作结束,F24为过渡动作。
f0f32f16f24

blob.png


blob.png



blob.png



blob.png


888888.gif
调整速度曲线:(f0-f16设置为线性匀速,这部分在实际运动中,没有脚部没有滑动位移,而是地面向后,脚尖和脚掌做了跟随动作。)

blob.pngblob.png


f16-f32做缓冲,下图为缓动对比

blob.png

blob.png

88888888.gif

8888888888.gif

脚掌和脚尖细节调整:上—下—平—上—平

f0f32f5f14f18f24

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

L_左脚走路动作完成

8888888888.gif

R_右脚动作

分别将左脚的位置、控制器动作复制给右脚

步骤:

①选中右脚的控制器,在控制器和位置坐标右键-动画添加轨迹。

blob.pngblob.png

————————————————————————————————————

②分别在时间线(摄影表)中复制左脚位置坐标、控制器的帧给右脚
blob.png

全选所有的关键帧,在属性中设置之前和之后为重复,设置重复次数,设置动作的循环(拓展:什么是重复之前和之后)blob.png

blob.png

Off关闭、Constant常数、Continue继续、Repeat重复、Offset Repeat偏移重复、Oscillate震荡
012837.jpg

全选R_右脚的全部帧,错帧一半16帧的位置(因为总共32帧,当左脚抬起右脚落下,左脚向后(相对地面),右脚向前),总帧数32*4=128帧。

2223.gif



手臂动作
f0f32f16f8f24

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

2223.gif
上半身脊椎运动
f0
f32f16f8f24

blob.png

blob.pngblob.png

blob.png

blob.png

blob.png

blob.pngblob.png

blob.png

blob.png
直线行走动画

全身位移,计算步幅位移大小,Z轴位移量,精确地计算防止出现脚部滑步。

左右脚一个步幅周期:f0—f32,左右脚位移=(f16pz-f16pz=140-(-170))*2=310*2=620,128帧的动画有4个运动,则身体位移总量为:620*4=2480cm,根据这个在f0和f128对全身的p z进行K帧。

f0 L_脚步控制器z p:-170f16 L_脚步控制器z p:140f32 L_脚步控制器z p:140

blob.png

blob.png

blob.png



f0
f128修改全身运动为匀速运动


blob.png

blob.png

blob.png




333.gif
角色绑定及直线运动工程文件:

角色绑定直线运动.ra





角色沿曲线行走

角色绑定曲线运动.ra


1、删除之前直线运动的动画快捷键:CTRL+SHIFT+点击

①在顶视图新建螺旋线blob.png,螺旋线作为位移路径长度的限定。

起点半径:0

终点半径:0

高度:2480(角色位移路径长路)

平面:XY

②草绘工具blob.png画一段曲线,作为运动轨迹。

③使用平滑工具blob.png将曲线平滑一下(看情况)
blob.png

④给螺旋线添加样条线约束变形器blob.png,使螺旋线保持长度,并且形状变成曲线形状,但变形器只是对螺旋线样条进行了形变,

并没有生成样条(不知是否可以塌陷成样条)

blob.pngblob.png

⑤给全身添加blob.png标签

⑥运动图形-运动样条(参考:C4D非常有趣的运动图形:运动样条的应用):因为螺旋线只是通过样条约束改变形状,

所以需要得到一条螺旋线转换的样条线,用运动样条作为中转。

可以看到螺旋线经过样条约束和运动样条的区别。

blob.pngblob.png

blob.pngblob.png

⑦选择对齐曲线标签,将运动样条拖入到对齐曲线的曲线路径中,在f0帧K对齐曲线标签位置100%,最后一帧K0%。

blob.pngblob.png

222.gif(走路打滑)

⑧打开时间线(摄影表)窗口将对齐曲线位置动画波形设置为线性。

blob.pngblob.png

4444.gif