因此,动画播放"自动播放"但是当我无法从我的C#中播放它时。这是运行它的代码:
[SerializeField]
private GameObject theThing;
theThing.gameObject.GetComponent<Animation>().Play();
//i also tried using Animator but no luck
我也在动画文件中启用了Legacy
答案 0 :(得分:1)
如果要将Legacy
用于动画,则必须在动画中设置每个state
的速度。以下代码应该完成这项工作:
private GameObject theThing;
public void PlayAnim()
{
foreach (AnimationState state in theThing.GetComponent<Animation>())
{
state.speed = 0.5f;
}
this.GetComponent<Animation>().Play();
}
答案 1 :(得分:0)
所以,我的问题是我设置预制件来播放动画而不是实例化的动画。 我也像这样再次使用Animator:
theThingIns.gameObject.GetComponent<Animator>().Play();