在unity中制作live2d参数的AnimationClip[简单随笔]
假定:已经成功导入模型。相关文档参考:https://github.com/gtf35/live2d_unity_sdk_chinese_document
(人力翻译版的Live2d SDK文档)
全部步骤
- 确保模型上有Animator组件,在Project面板创建动画控制器(AnimatorController),并让Animator引用之。不论你是否使用动画控制器控制模型,都应该创建一个动画控制器。(注:新版Unity推荐使用Playable控制动画)
- 在Project面板器创建动画片段(AnimationClip;创建时,选择Animation这一项)
- 把创建的动画片段拖入动画控制器
- 回Project面板,双击即可编辑该动画。如果你在Animation面板中找不到可以编辑的地方,请确保你已经选中模型。
- 确保Animation面板中,左上角显示的动画名称是你想要的那个(否则,点击这个名称,选择你想要的动画)。
- 点击Add Property按钮即可选择参数,你会发现模型本身没有参数可选。滑动滚轮到靠后的位置,展开"Parameters",这些是你可以控制的参数,他们就是你的模型的Parameters这个GameObject的子物体。找到你需要的参数(比如 ParamABC1),依次展开并找到 ParamABC1->Cubism Parameter->Value。在Value右侧有"+"按钮,按下后即可添加参数。
- 接下来就可以进行K帧、参数调整的操作了。关于参数的大小、范围,可以仔细观察模型带有的Cubism Parameters Inspector组件暴露给你的操作面板。
原理
①在编辑动画片段时,动画片段需要一个动画控制器作为参考。因此,打开无依无靠的动画文件,你会发现什么都编辑不了。
②虽然你能够在模型的Cubism Parameters Inspector中手动操作模型的参数,但编辑动画时却发现模型本身没有这些参数,因为这个面板是纯粹的编辑器扩展,没有实际内容(你可以对这个组件Edit Script试试),实际的参数请在Hierarchy中展开你的模型子物体,在模型->Parameters的子物体中。
③虽然实际的参数在Parameters这个物体之下,但是从这些物体的面板上却看不到可以控制的地方,因为在代码中,实际起作用的参数"CubismParameter.Value"添加了[HideInInspector]标记,在面板上隐藏了。