【发布时间】:2016-09-16 06:20:17
【问题描述】:
我想在程序运行期间将动画速度更改为我想要的速度。 我有一个 c# 脚本和动画控制器连接到游戏对象。 unity中默认动画速度为1。我将动画的默认速度值设置为0.3f。在程序运行期间,我希望动画的速度为 1。
using UnityEngine;
using System.Collections;
public class wowBoard : MonoBehaviour {
[SerializeField]
Animator anim;
bool changeSpeed;
void Start()
{
anim=GetComponent<Animator>();
playAnim();
changeSpeed=false;
}
public void playAnim()
{
anim.SetBool("show",true);
}
void Update()
{
if(changeSpeed)
playChangeSpeedAnim();
}
public void playChangeSpeedAnim()
{
anim.speed=1;
anim.SetBool("show",true);
}
}
即使 changeSpeed 的布尔值为 true,动画的速度也没有变为 1。
【问题讨论】:
-
最后我用上面提到的相同代码解决了我的问题。唯一的变化是动画状态的参数,默认情况下需要为真。以前我的动画参数“show”默认为false。