码迷,mamicode.com
首页 > 其他好文 > 详细

有限状态机

时间:2019-08-14 21:28:25      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:脚本   图片   游戏   有一个   组件   状态   mat   技术   alt   

 unity中已经包含了自动给定的状态机组件Animator,但是面对不同脚本的触发,往往会使状态冲突,所以我们需要使用自己定义的状态机来解决这个问题

    我们在进行游戏的时候,控制的人物会有各种状态,站立,跑动都是状态,那么所有的状态都有一个共同的属性,那就是
    他们都是状态 .......我编不下去了 总之我们可以抽象出来一个状态的基类,然后让不同的具体状态去继承这个状态类,那么这个基类里面要有什么呢
    我们换状态的时候,新状态要进入,旧状态要退出,在不换状态的时候,则要一直执行当前状态,所以基类中要有三个方法,分别为进入状态,状态持续,退出状态的三个方法,为了区分不同的状态,还要有个状态的标识,可以用数字来标识当前状态是什么

    然后打包一个状态事件,包括带有动画机的游戏物体,动画机,一个自定义的有限状态机

代码

代码技术图片

  然后为了演示,简单定义一个走动的状态

技术图片

 自定义状态机本身要持有一个当前状态对象,一个上一个状态对象,一个当前状态执行时需要的数据,还要有一个转变状态的方法技术图片

 

 

 

 



 

有限状态机

标签:脚本   图片   游戏   有一个   组件   状态   mat   技术   alt   

原文地址:https://www.cnblogs.com/D25T/p/11354711.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!