我们做游戏的时候经常会有流程控制,流程控制的方法有很多,行为决策树,状态机等。本质差别都不大,就是把每一段执行逻辑做成一个一个的节点,根据条件执行某个节点,切换到某个节点。今天给大家分享一下基于状态机来做游戏流程的控制。
1 一个简单的状态机案例
我们先来拆解一个使用案例,通过这个案例让大家对状态机的流程控制有一个基本的了解。首先我们来构建一些状态节点,放入到状态机中。编写伪代码如下:
创建一个状态机:

往状态机里面加入所有控制流程状态的逻辑节点:

初始化逻辑节点NodeInit,用来做初始化的逻辑控制, NodeLogin,用来做登录场景的逻辑控制, NodeTown节点用来做游戏战斗场景的逻辑控制。

每个状态机节点,都有几个统一的固定的入口,这些入口如何设计与行业相关,比如我们的游戏行业,设计状态机节点接口一般如下:
Name: 状态机节点的名字;
OnEnter: 状态机进入到这个状态节点时执行,一般用于初始化;
游戏开发中的状态机控制与实现

本文介绍了游戏开发中如何使用状态机进行流程控制,包括设计状态节点、接口实现、状态切换步骤,以及如何扩展特殊状态控制如顺序执行状态机。
最低0.47元/天 解锁文章
748

被折叠的 条评论
为什么被折叠?



