zoukankan      html  css  js  c++  java
  • 浅谈在Unity3D中实现Finite State Machine System有限状态机框架系统

    本有限状态机系统是为拥有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/

  • 相关阅读:
    Android简易注解View(java反射实现)
    android注解[Jake Wharton Butter Knife]
    Android渠道汇总
    SVN管理规范
    马上着手开发iOS应用程序一 todolist
    MVC记录
    OC中intValue要注意的地方
    将从数组中取到的字符串赋值给了UIImage导致的错误
    一个null引发的错误
    记录一些容易忘记的属性 -- UITabBarController
  • 原文地址:https://www.cnblogs.com/SwordMaster/p/12418633.html
Copyright © 2011-2022 走看看