在Mecanim中启用动态渐变
最終更新: 2020年1月30日
本页说明如何将MotionFade用于Cubism模型,并将Cubism渐变应用于在Unity的Mecanim中播放的动画。
以下内容以追加到已执行“载入SDK”的项目为前提。
概述
要在Unity上使用motion3.json中设置的动态渐变和参数渐变等渐变功能,请在Cubism SDK for Unity中使用“MotionFade”。
使用Cubism的渐变功能,在动态之间切换时的混合比例可以呈曲线进行平滑切换,或者在仅切换特定参数时更改时间。
参考“渐变值设置”了解有关渐变功能的详细信息。
如果是选中Unity Editor菜单中的“Live2D/Cubism/OrignalWorkflow/Should Import As Original Workflow”并载入的模型,
则在模型上设置MotionFade。
要在没有上述设置的模型上使用MotionFade时,请按照以下步骤操作。
- 附加CubismFadeController
- 设置“模型名称.fadeMotionList”
- 将CubismFadeStateObserver附加到AnimatorController的各层
1. 附加CubismFadeController
将控制渐变的“CubismFadeController”附加到作为模型根的GameObject。
– Cubism Fade Motion List:设置“模型名称.fadeMotionList”。详细内容将在步骤2中进行说明。
2. 设置“模型名称.fadeMotionList”
选择模型并将“模型名称.fadeMotionList”从Inspector视图拖放到CubismFadeController的“Cubism Fade Motion List”。
* “模型名称.fadeMotionList”是将AnimationClip的InstanceId与“.fade”资产相关联并将它们放在一个列表中的资产。
* “.fade”资产是保存动态数据的资产。它是从motion3.json自动生成的。
3. 将CubismFadeStateObserver附加到AnimatorController的各层
选择AnimatiorController,并将“CubismFadeStateObserver”附加到Animator视窗中各层的Inspector视图。
这样就完成了使用MotionFade控制渐变的设置。
如果在此状态下执行Scene,则在动画渐变时将应用在Cubism Editor上设置的渐变值。
下面是一个Animator Controller以不采用设置了MotionFade的模型进行的播放,其中Transition值设置为0。
由于左侧没有设置MotionFade,所以在Transition中设置的0秒退出。
由于MotionFade设置在右侧,Animator的Transition被Cubism的动态渐变和参数渐变覆盖。
* 未附加CubismFadeStateObserver的层的动画渐变将在Transition设置中渐变。