有限状态机 java 开源_开源可视化有限状态机编辑器

用过Unity开发的工程师们一定对Mecanim的方便快捷印象深刻,用过之后再也不想回到刀耕火种的时代了。

目前在做egret项目,首先就动手做了一个仿制Mecanim的FSM编辑器。工具做得越早,受益越多。

简要说明:

State:状态。成员变量中包含Transition数组。

Transition:状态跳转。成员变量包含from(初始状态)和to(跳转状态),以及condition数组。

Condition:跳转条件。成员变量包含Parameter,和logic(因Parameter而异,如number型逻辑包括">","

Parameter:参数。成员变量包含类型(bool,number,trigger,complete,其中complete相当于Mecanim中的exitTime,代表跳转条件为动画播放结束)

示例:

45308add16b549d5be56bb72fbb1f9a2.gif

导出json文件格式:

大概就是下面这样事儿的。为了方便理解,只与编辑器有关的字段我没有给出,如果是用在动画以外的情景使用状态机,animation字段也可以忽视。

1 {2 "state": [3 {4 "state": "idle",5 "transition": [6 {7 "condition": [8 {9 "value": 1,10 "logic": 0,11 "id": "run",12 "type": 1

13 }14 ],15 "nextState": "run"

16 }17 ],18 "default": true,19 "animation": "idle_animation"

20 },21 {22 "state": "run",23 "transition": [24 {25 "condition": [26 {27 "value": 0,28 "logic": 0,29 "id": "run",30 "type": 1

31 }32 ],33 "nextState": "idle"

34 }35 ],36 "animation": "run_animation"

37 }38 ]39 }

后续再给出demo和针对egret的dragonBones的一些便捷用法,这篇先到这里吧:)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值