状态机和行为树

最近在思考游戏AI,看到一些文章在鼓吹状态机(fsm)已经过时,行为树才是现在和将来。目前我的水平,对这个结论无法做评判。但是从读到的文章本身,没有看到有力的证据。

诚然,在复杂状态下,fsm的维护难度是倍增的,但行为树也面临同样问题(不要看那些半吊子文章中画的清晰的属性结构,真的复杂场景哪里有这么好看的树)。fsm的分层能缓解一部分复杂度问题,我相信行为树也是通过类似子树的方式处理,所以就是个半斤八两。

另外,看到说行为树的判别因子有{前置条件 , 当前状态, 输入},较之fsm的{当前状态, 输入} 上下文更加完整。对于这个说法,只能说是实现的问题,和行为树/fsm一点关系都没有。

如果把fsm和图,行为树和树(废话。。)比较一下,可以有印象:既然树是图的简化形式,行为树也像是fsm的简化版。从直观上看,fsm似乎效率还略高一点,而行为树细分了一些节点类型,概念上会更清晰一点。以上就作为本文大概的结论吧,欢迎讨论(pen)。

状态机和行为树

时间: 2024-11-20 18:02:42

状态机和行为树的相关文章

2014年读过的书总结

编程技术: 1  <Lua游戏开发实践指南> 2  < C++ primmer >c++基础必备 3  <C++ effective> C++进阶必备,还需要点Boost基础 4  <大话设计模式>浏览完,入门可以看看,看完即忘是必然,还是要多思考,翻了两遍,后面还回去去看HeadFirst那本. 5  <C++数据结构与算法基础> 数据结构是我心中的痛,曾经挂过,现在重新温习,不过缺少对手的过成,还会再回来看. 6 <c#核心编程>

Unity3D游戏开发从零单排(五) - 导入CS模型到Unity3D

游戏动画基础 Animation组件 Animation组件是对于老的动画系统来说的. 老的动画形同对应的动画就是clip,每个运动都是一段单独的动画,使用Play()或CrossFade(),直接播放动画 或淡入淡出播放动画. animation.Play("name"); animation.CrossFade("name"); 下面的是它的几个属性 Animation:默认的动画片段: Aniamtions:包含的动画片段: Play Automaticall

游戏人工智能开发之6种决策方法

人工智能遵循着:感知->思考->行动 决策方法:有限状态机(Finite-State Machines),分层状态机(Hierarchical Finite-State Machines),行为树(Behavior Trees),效用系统(Utility Systems),目标导向型行动计划(Goal-Oriented Action  Planners),分层任务网络(Hierarchical Task Networks) 有限状态机 有限状态机是目前游戏AI中最常见的行为模型.状态机的代码简

Unity3D游戏开发之Unity3D动画与Mecanim动画系统

Unity3D游戏开发之Unity3D动画与Mecanim动画系统 欢迎来到unity学习.unity培训.unity企业培训教育专区,这里有很多U3D资源.U3D培训视频.U3D教程.U3D常见问题.U3D项目源码,[狗刨学习网]unity极致学院,致力于打造业内unity3d培训.学习第一品牌. Mecanim是Unity新增的动画系统,其功能强大而灵活,让人类和非人类角色栩栩如生.Mecanim的重定向极大的提供了工作效率,而且占用极少CPU周期.使用从Unity资源商店找到的动画资源,或

Unity 3D游戏开发Mecanim动画系统讲解

本期教程和大家分享Mecanim动画系统的重定向特性,Mecanim动画系统是Unity3D推出的全新的动画系统,具有重定向.可融合等诸多新特性,通过和美工人员的紧密合作,可以帮助程序设计人员快速地设计出角色动画.一起跟着人气博主秦元培学习吧! 博主今天想和大家分享的是Mecanim动画系统的重定向特性,众所周知,<仙剑奇侠传>是一部经典的RPG游戏,这部游戏到今天依然焕发着强大的生命力.博主在网上认识了一个制作<仙剑奇侠传>同人游戏的小团队,他们目前正在着手制作一个称为<仙

【Unity】第10章 Mecanim动画系统

分类:Unity.C#.VS2015 创建日期:2016-05-02 一.简介 Unity提供了两种动画系统:一种是早期版本提供的旧版(Legacy)动画系统,旧版本(Legacy)以后将逐步被淘汰掉并在新版中不再支持.另一种是Mecanim动画系统,这是建议使用的新版动画系统. 如果你是初学者,就不要去学旧版(Legacy)动画了,直接学习Mecanim动画系统即可. 二.什么是Mecanim动画系统 Mecanim(肌肉线条)是Unity提供的新版动画系统,Unity计划将工作流完全并入Me

二、Mecanim 动画系统(第二部分)

一.Mecanim概述 Mecanim是Unity一个丰富且精密的动画系统,它提供了: 1.为人形角色提供的简易的工作流和动画创建能力. 2.Retargeting(运动重定向)功能,即把动画从一个角色模型应用到另一个角色模型上. 3.针对Animation Clips(动画片段)的简易工作流,即针对动画片段以及它们之间的过渡和交互过程的预览能力.这样可以使动画师更加独立地进行工作,而不用过分地依赖程序员,从而在编写游戏逻辑代码之前即可预览动画效果. 4.一个用于管理动画间复杂交互作用的可视化编

Mecanim 工作流

Mecanim概述: Mecanim是Unity提供第一个丰富而复杂的动画系统,提供了: 针对人形角色的简易的工作流和动画创建能力 Retargeting(运动重定向)功能,即把动画从一个角色模型应用到另一个角色模型上的能力. 针对Animations Clips(动画片段)的简易工作流,针对动画片段及他们之间的过度和交互预览能力. 一个用于管理动画间复杂交互作用的可视化窗口. 通过不同逻辑来控制不同身体部位的运动能力. Mecanim工作流: 1.资源导入,这一阶段由美术师或动画师通过三维工具

Unity3D之Mecanim动画系统

Mecanim动画系统 Mecanim Animation System Date:2013-05-16 07:48 Unity has a rich and sophisticated animation system called Mecanim. Mecanim provides: Unity有一个丰富并且精密的动画系统叫做Mecanim.Mecanim提供了: Easy workflow and setup of animations on humanoid characters. 为类