数字人C4D角色动画研究之九:骨骼系统基础入门-2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数字人C4D角色动画研究之九:骨骼系统基础入门-2相关的知识,希望对你有一定的参考价值。

参考技术A 【前言】

       上一篇《骨骼系统基础入门-1》中,通过几个问题,解释一些关于骨骼系统经常涉及的一些概念。看完之后,初步知道骨骼、蒙皮、绑定等是怎么回事,这一篇就初步谈谈如何建立骨骼。

【研究】

看下图,BONES 翻译为骨骼,JOINT 翻译为关节, JOINT-OBJECT 关节对象 。

一、 C4D的骨骼系统基础来源于父子关系。 从上图的对象列表关系就可以看出来。骨骼的组织结构有时被称为一个骨架( skeleton ),其中的任一关节点叫做骨头( bone )。还有锁链(chain)、骨架(skeleton)、层级(hierarchy)、连接(link)、 骨头(bone)、关节(joint)、节点 (node)...等,懂翻译不知道CG,知道CG的人不会翻译。

而在C4D中是这样的:

二、关节(JOINT)实际上是一个点。 一个骨骼(BONES)是由两个关节构成,由粗指向细,粗的关节为细的关节的父。

1、比如,点击关节工具,点击两次,建立两个关节。由于它们在空间位置一样,没有构成父子关系,所以场景什么也没有。

2、把关节向下移动一段距离。场景中什么也没有。

3、把关节拖到关节.1的下面,构成父子关系。

4、场景中出现了骨骼。由关节.1(父)指向关节(子),由粗到细。所以关节表示就是一种层级的逻辑关系。

5、骨骼在动画中并不会被渲染,它的作用相当于一个支架,模拟真实生物的骨骼和机械等的动力学构架,对主要的关节或轴进行移动和旋转等操作;然后,通过各种设置,为骨骼添加关键帧动画,再由骨骼驱动绑定好的模型。如何才能渲染这个骨骼呢?

点击角色菜单--转化--转化关节为多边形。再渲染就有了。

三、如何绘制关节呢? 方法有很多种,常用就有四种方法:

第一种方法就是用“关节工具“。

1、关节工具设置很多,一般情况下默认即可。重点要说的是下边“修改”的面板。

2、默认控制就是CTRL建,按住CTRL+鼠标左键,可以自由绘制骨骼。

3、按住SHIFT建可以细分骨骼。

4、在上面绘制的骨骼中间,按住SHIFT建点击,骨骼被切分。实际上就是在两个关节中间又加了一个关节。

什么都不按,直接点击关节,就可以移动关节。

5、这些设置可以更改,比如SHIFT键可以当做量化绘制。

6、量化绘制你懂得,就是直线、45度角、90度角绘制。

7、这是形成的关节对象。

第二种方法先绘制曲线,在转换关节。

1、在正视图绘制曲线。

2、选择“样条转化为关节”。

3、骨骼会按照曲线的控制点建立关节。曲线白色为开始,转为根关节;蓝色为曲线末端,转化为末关节。

4、形成的关节链。

第三种方法先建立关键点,生成关节。

1、在场景不同位置建立空白对象。取其在场景空间的位置。

2、位置如下所示。

3、选择所有的空白点,点击菜单。(样条转化为关节,我认为他们汉化错误)。

4、在不同的空白对象位置转化为关节(位置相同)。

5、当场景中并没有出现关节链。

6、把空白3当成跟关节,建立父子关系。

7、场景中出现了关节链。

第四种方法:

1、建立一个圆柱,按C转化多边形,去掉上下底。

2、选择边模式,按UL选择如下的边。

3、点击转化“所选到关节”,如果直接点选命令,就会出现一个公共的关节。

4、 它的的秘籍是: 点击这个命令,同时按住SHIFT键,就会各自生成一个关节点。

5、在对象窗口中看到各个关节。

6、同理,建立父子关系。

7、按照要求生成关节。

8、关节位置对的非常好。

小结: 制作关节链方法很多,这里没有细谈每个关节坐标等问题,以后详谈。

四、如何建立骨骼控制器呢?

关节最后会驱动模型运动,但如何控制关节呢?

第一种:一般方法是在控制的关节位置建立空白对象:

1、图中有一个关节链,你能知道哪个是根关节,哪个是末关节?

2、这是对象窗口中的关节列表。现在我们想控制末关节---关节.5。

3、选中它,选中角色菜单--转化--关节转换为空白对象。C4D会在关节.5位置上生成一个空白物体。

(注意这是生成空白物体的方法)

4、这个控制末关节的空白物体,不能放在关节链中,把它拖出来。

5、为关节.5添加-角色标签--约束--PSR约束。把”关节.5“空白物体对象拖入目标栏中。

6、为了观看方便,设置空白物体在场景中的显示。移动空白物体,发现末关节也移动了。

第二种:常用的方法。 用 特殊曲线对象 控制关节。

为什么用 特殊曲线 控制关节呢?因为用空白物体控制关节也是可以,但是有个毛病。就是控制点多的时候,你在场景中直接点击空白物体,你会选不到控白物体,你只能在对象列表中,先选择要控制的空白物体,然后,到场景中去移动它。控制太麻烦!我们要的是“所见即所得”。所以控制关节不用空白物体,而用“特殊曲线对象”。 这个特殊曲线就是你自己做的曲线。

1、在正视图建立一个类似大腿的骨骼。

2、建立IK,把末尾的”关节.4“拖入结束栏,目标栏先不管。

3、在场景中建立XZ平面方向的一个圆环。

4、按C 编辑成特殊曲线。

5、把它拖到”根对象“下为子物体,相对坐标归零。目的使圆环与根对象位置相同。(这是对位的常用方法)

6、然后把特殊曲线-圆环改名为“上部控制”,作为最上层的父级。

7、再建立一个ZX平面方向的圆环,拖到关节.4下面为子,相对坐标归零,你懂得。

8、按C ,把曲线编辑成为脚印的形状。

9、就是这样。

10、为末关节添加PSR约束。

11、然后,把圆环拖入变为上部控制的子对象。

12、这样我们在场景中,只要点击上部控制曲线,那么就能控制整个骨骼,这是旋转。

13、这是骨骼整体缩放,移动也可以,就不演示了。总之,这是一个总控的方法。

14、但当你拖动脚型的控制器的时候,发生了问题,只有一节骨骼跟随。这个可是IK关节,应该整个关节链移动才对。问题出在哪里?

问题出在:我们不能直接用特殊曲线制作的控制器去控制关节。

15、改正:

选择IK标签,为末关节添加目标。

16、然后,把PSR约束标签拖给“关节.4.目标”。圆环控制这个目标来控制末关节,通过IK系统反向上控制整个关节链,要记住。

17、这个时候,在场景中点击圆环,这个特殊制作的脚形状控制器,移动它,整个关节链移动,正常。

18、我们还可以为这两个自己制作的特殊曲线控制器,分别赋予颜色。

小结:

要记住最后控制器制作的常用的方法。

五、关节位置冻结、复位

关节建立以后,就是初始位置。当与模型发生绑定以后,你调整骨骼,如果导致混乱的时候,假如在初始化的时候没有冻结相关坐标,任凭你如何按CTRL+Z或者 SHIFT+Z,你的关节就再也回不到初始状态了。所以,关节与模型绑定初始位置的时候,一定要冻结关节坐标,这样你可以再调乱得时候,有机会恢复到关节初始位置。

1、利用关节工具建立如下关节链。

2、关节链是一条直线。

3、选择所有关节,点击下面的坐标面板--冻结全部。C4D系统就会记住各个关节的初始位置。

4、现在调乱关节。

5、选择所有关节。点击菜单 复位PSR。

6、所有关节又回到初始位置。

7、下面再看另一中情况。选择关节,右键角色标签--IK标签。把末关节.6拖入结束栏,再点击目标栏后的添加按钮,添加一个控制点。这个控制点与末关节.6位置一致。

8、那么这个关节链就是IK 反向关节链(由子控制父,反向上控制),拖动末关节控制点,可以控制整个关节。与FK(正向关节相反,由父控制子,逐级向下控制)。调整空白点的显示。

9、你可以选择全部关节,但对于IK关节链,关节的位置变化是受“关节.6.目标”控制。

10、所以,你只要选择“关节.6.目标”,然后到坐标面板--冻结全部。冻结IK控制点一个坐标即可,而不用冻结所有关节坐标。

11、现在移动控制点,几乎所有关节位置发生变化。

12、点击菜单“复位PSR"。

13、因为“关节.6.目标”控制点复位,回到原来初始化位置,所以IK关节立刻复位。

14、利用菜单太麻烦,C4D最大特点就是:可以创建你自己的按钮和命令(C4D系统提供菜单、按钮、命令供你使用)如何用命令和建立按钮呢?

按SHIFT+C,调出命令窗口,输入PSR。找到"复位PSR",回车即可执行。

15、你也可以用鼠标把”复位PSR"拖到一个位置,用的时候点击它即可。

【后记】

1、又没少写,不写则已,总想用一篇文章把知道的都写出来,如滔滔江水.......没办法,当老师的时间太长了,你还没让我说呢?

2、《骨骼系统-1》写完之后,不少吧友催我赶紧写《骨骼系统-2、3、4》。其实在博客的草稿箱,我已经把这个系列写到-8了,但我想把角色建模谈完之后,再陆续贴出骨骼系统及动画文章。可是吧友着急,那就先避开“角色”,只能往外贴了。

3、写的这些东西,初学者可能不解渴,认为是磨叽。可是如果你不掌握这些基础的东西,直接操作骨骼关节出错的时候,你都不知道错在什么地方。

4、学习骨骼动画,首先要学会角色建模,然后学绑定控制,最后学习动画曲线去控制动画的姿态、节奏等等。没有好的角色模型,你用骨骼绑定什么?不深入学习动画曲线,角色动起来,感觉非常别扭。当然,还必须观察生活和多看经典的动画作品。

以上是关于数字人C4D角色动画研究之九:骨骼系统基础入门-2的主要内容,如果未能解决你的问题,请参考以下文章

数字人C4D角色动画研究之一:约束Constraint -1

UE4骨骼动画新手入门

记一次Unity动画入门之二专家技能评定

React Three Fiber动画入门

Spine开始绑定骨骼做动画(二)

unity能不能导入顶点动画?