所以这是动画之后我要做的事情,它应该自动回到默认状态:))抱歉,动画中的新手,这是我的代码
public GameObject bookLayout;
public GameObject panel;
public void openBook()
{
if (bookLayout != null)
{
Animator animator = bookLayout.GetComponent<Animator>();
if (animator != null)
{
bool isOpen = animator.GetBool("open");
animator.SetBool("open", !isOpen);
}
}
}
问题是它只有在我单击它之后才返回默认状态^ _ ^
答案 0 :(得分:0)
您所描述的被称为“动画事件”,实际上并不难实现。
首先,如果您的bookLayout对象尚未附加MonoBehavior脚本,请向其添加一个。然后在该脚本内添加一个 public 函数,其唯一职责是将状态设置为默认值。我们将此函数称为“ SetStateDefault”。然后确保在层次结构中选择了bookLayout,然后转到Windows-> Animation->并打开Animation选项卡。
在此示例中,动画的结尾位于第4帧。现在,单击“添加事件”按钮
然后在检查器中,转到“函数”下拉菜单,然后选择我们之前创建的那个公共函数,称为“ SetStateDefault”。
假设您的“ SetStateDefault”功能完成了应做的工作,那就应该是。请让我知道您是否有任何不清楚的地方。