Unityforums上的原始问题here
我一直试图让动画不仅减速和加速,而且还根据我的Hololens应用程序的用户输入向后播放。我使用的是Mecanim系统,而不是传统的动画。
整个事情应该在运行时通过动态用户输入发生。
我知道可以通过脚本编写,因为我在一些Unity-Collaborate问题中失去了本地进度和一些文件之前就已经开始工作了。听起来很愚蠢,从那时起我就无法记住我的做法与我目前的做法有什么不同。
现在我正在操纵值Animator.speed,但这仅适用于值> = 0。
非常感谢任何帮助!
编辑:如果链接不起作用或对任何人都可见,这是我的代码:
private Animator anim;
//...
anim = gameObject.GetComponent<Animator>();
//...
public void OnManipulationUpdated(ManipulationEventData eventData)
{
if (anim.isActiveAndEnabled)
{
anim.speed = eventData.CumulativeDelta.x;
anim.Play("KA_Cover_Anim");
return;
}
//...
}
Edit2:错误地标记为重复!链接的问题不考虑类似的问题,需要不同的解决方案
Edit3:为了澄清,链接的“复制”使用与我的问题无关的遗留动画系统。在Mecanim,Unity 5.xx中的新动画系统中,您无法直接访问Animations,如所选答案中所示。也没有可能改变动画速度,如第二个答案所示。