Unity3D_FSM

FSM有限状态机


简单说:

就是让动画有三种触发状态(进入触发,保持触发,退出触发),当条件触发了"进入触发"就开始执行动画;"保持触发"就是保持动画的运行;"退出触发"就是退出动画播发,停止播放动画----这样就有了 动画的状态类State 

但这还是不够的,还要让状态类能够自我进行识别运行起来,这样就需要一个机器来控制"动画的状态类",来执行(进入触发,保持触发,退出触发)这三个状态----控制状态的机器类Machine

不同的动画属于不同的角色,所以还要有个模板类继承自动画的状态类State,用<T>中的T来定义所属的角色----Template<T>

IdleState,RunState等继承自 动画的状态类State 



State 状态类,由机器类控制
Machine 机器类,控制状态的切换、保持,状态的存储
Template 模板类,继承自State类,定义了状态机的拥有着
IdleState 角色所有状态中的的某个状态(通常状态),继承自Template<PlayerControl>状态类
PlayerControl 角色控制脚本


State 包含了动画的进入,保持,退出这三种触发状态
Machine 负责控制 State类中的触发状态 在什么情况下执行

        负责存储 编号-State类(例如0-IdleState)

State基类:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class S
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值