码迷,mamicode.com
首页 > 编程语言 > 详细

浅谈在Unity3D中实现Finite State Machine System有限状态机框架系统

时间:2020-03-05 10:44:53      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:switch   程序员   继承   tool   tst   documents   保存   编写   ima   

本有限状态机系统是为拥有FSM有限状态机知识概念的程序员所开发.

技术图片


特点

  • 在本插件中包含了一个关于坦克之间战斗的Demo场景,其中的AI坦克就是由本有限状态机框架所实现的。
    通过研究Demo示例中的代码,您可以轻松学会使用此框架。

    技术图片

  • 在本插件中,通过继承FSMState类来创建您自己的状态类,如果有必要,还可以在创建好的状态类中对OnEnter(),OnUpdate() 和 OnExit()进行override ,不需要像有的状态机框架那样,去编写愚蠢的枚举变量以及Switch条件跳转语句。

-在本插件中,一个State链接到里另一个State实例是通过Transition类实现的。一个State链接到里另一个State之间的Transition保存着下个State的引用以及一系列Condition实例,这些Condition决定了状态机是否要切换到下一个状态。

技术图片

  • 在本插件中,每个condition类都是单独存在的。您可以通过实现 IFSMTransitionCondition 接口来创建自己的condition 类。

  • 在本插件中,当您想要将一个State链接到另一个State时,不需要通过自己创建Transition,只需要使用本框架中的CreateFSMStateToAnotherFSMStateTransition 函数即可,您所需要做的就是在调用这个API函数的时候,传进你想要进行链接的两个State实例,然后框架它将会自动地在两个State之间创建一个Transition。

  • 在本插件中的说明文档详细地阐述了如何使用本FSM框架以及在Demo场景中的AI坦克师是如何被编码的。


在线说明文档

Manual


所支持的Unity的版本

5.6.6 或 更高


下载地址

您可以从Unity Asset Store上进行下载:Finite State Machine System


更多插件请访问本人的个人网站:

https://www.swordmaster.info/

浅谈在Unity3D中实现Finite State Machine System有限状态机框架系统

标签:switch   程序员   继承   tool   tst   documents   保存   编写   ima   

原文地址:https://www.cnblogs.com/SwordMaster/p/12418633.html

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