Unity5使用所遇难点及解决方案(基于与unity4的比较)(三.管理状态)

一.状态机的开发和使用

状态机:使用不同的形式,来指定对象在其生命周期内为响应事件而呈现的各种转态及其转变。通常由当前状态,触发事件,转变动作以及最终状态四部分组成。
常用形式:

  • 流程图:基本形式:以触发事件开始(椭圆),指向结果状态(长方形),可能会在根据当前状态条件判断处分支(菱形),混合油多个对象的状态可能会成指数倍得增加分支数。以触发事件为核心。
  • UML图(统一建模语言):以状态为核心,箭头表示转变方向,在箭头上指明转变动作。没有说明触发时间。会由于对象间状态的相互影响而使状态转变复杂化。简化uml图:1.可以使用数字替代状态,如0/1表示开关。2.还可以将具体的转变动作及状态转变形式(自身状态的转变或使其他对象的状态转变)写成文本组件的形式包含在状态中,
  • 将信息存储成状态数据表中:存储对象的元数据(状态及到该状态的动作(可以是具体的动画和音频剪辑)),以及说明辅助对象转变进入的状态。存储的是进入当前状态的数据
  • 查找表:包含自身状态转变,具体的触发对象以及各种辅助对象的新状态的表。存储的是由当前状态经过触发事件的数据,注意与状态数据表的差别。
     利用查找表可以依次从前到后地评估一次状态转变,流程为:确定对象->确定状态->确定事件->判断终止状态(需要处理一些意料外的无效事件)->执行动作->改变辅助对象的状态。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值