📃

Animation DCC Process

Animation DCC Process

In general, the Animation DCC(Digital Content Creating) process includes:
  • Mesh
  • Skeleton binding
  • Skinning
  • Animation creation
  • Exporting

Mesh building

notion image
动画制作首先要去构建一个 mesh。
美术在构建 mesh 的时候都是很高精度的 mesh,但是实际上非常高精度的 mesh 做动画做 Skinning 是很麻烦的。所以一般会用它的 low poly mesh (低精度的 mesh)去做动画。

Mesh Adjustment for Animation

notion image
为了保证动画的效果,在很多的关节的地方,动画师会额外的加几圈 mesh。这样保证动的时候,这个地方不会变形。(上图是在手肘地方加了圈 mesh)

Skeleton Binding

notion image
接下来开始做骨架。
现在工具已经非常发达了,比如像 3DMAX、Maya 会有现成的 biped 骨架(两足生物)。当艺术家做好角色的 APos 或者 TPos 时,艺术家可以直接在工具里面拉出一个骨架,然后一个个地把它对上。这样就可以完成一个跟这个 mesh 相匹配的 bonding 的一个 skeleton。

Skeleton Binding – Add Game Play Joints

notion image
然后加上 Game Play 相关的 Joint,比如上图在手的部分加武器的骨骼。

Skeleton Binding – Add Root Joint

notion image
一般还要在 Pelvis 加上 root 骨骼。

Skinning – Auto Calculation

notion image
Skinning 一般都是工具自动算出来的。
自动的 Auto Skinning 是现在基于深度学习的一些前沿的引擎的算法里比较热点研究的东西。
因为简单的 Skinning,3DMax Maya 已经算的非常好了,但是这个 Skinning 会让这个人看起来像橡皮糖一样软(看下图比较细的部分),这个时候艺术家需要手动做校正,需要手动地做一些调整,但这已经比之前要快非常多了。

Skinning – Manual Fixing

notion image
notion image
颜色代表了每一根骨骼对顶点影响的权重是多少。

Animation Creation

notion image
开始做动画。
做动画核心的思想跟刚才 Live2D 很像,它并不会一帧一帧地做,而是只做关键帧,设置每个关键帧之间的时间间隔。当这东西做好了之后,这个角色就能动起来。

Exporting

这个时候,我们引擎的程序员就要去写导出工具。
这里讲一个细节,大部分动画我们就直接导出。但是如果它的 Pelvis,也就是它的 root,也发生了位移(例如跳跃的时候 root 会变),那动画里面 一般不会 root 的动画存下来,而是会把 root 单独导成位移曲线,这个曲线给引擎用。
notion image
可以导出成 FBX 格式。
 
可以参考 nfrechette/acl, bone pro
压缩数据可以参考 GDC 2017