博主不是一个会写博客的人,也不会去扫盲什么事有限状态机,但凡会用百度的同学自己搜一下大把大神文章给你们拜读,这里我介绍的是最最最简单的有限状态机写法,当然也是看别人的代码学习来的。
最最最简单的有限状态机就是利用一系列的switch-case语句写的,简单粗暴不容易维护,但是针对只有几个状态的模型就非常实用了。
现在给大家安利的是利用Unity协程的方式实现有限状态机,废话不多说,上码~
private string locoState = "Locomotion_Stand";
void Start()
{
//起一个协程,处理动画状态机
StartCoroutine(AnimationStateMachine());
}
上面试有限状态机的入口。
IEnumerator AnimationStateMachine()
{
//根据locoState不同的状态来处理,调用相关的函数
while (Application.isPlaying)
{
yield