用于游戏中不同性格怪物移动表现AI演示
来源:互联网 发布:2017网络实名制 编辑:程序博客网 时间:2024/05/16 08:48
一个程序功能或算法的实现很多都可以说是一个分类方案的应用。
在很多arpg游戏中都有一些不同"性格"的怪物,当玩家接触它们的时候它们
会有不同的表现。
有些怪物你接近它,攻击它,他都没反应,这里将这类怪物称之为蒙昧型的。
有些怪物你接近它,他会逃跑,这里将这类称为但小型的。
有些怪物你接近它,他可能主动进攻你,进攻一下又会逃跑,这样反反复复,这类就称之为狡猾型的。
有些怪物你接近它,他会对你穷追不舍,这类这里称之为凶恶型的。
上面所述的四种类型在视觉表现上首先表现为位置的移动变化。这个演示中就来演示控制这些
变化的AI。
上面说实现方案,是一个分类方案的应用。
程序功能很多实现都使用了树状的逻辑结构
首先将怪物所处的环境分为三类: 安全、捕掠、危险
这里按照圆域来计算。以怪物自身为中心画圆,第一个圆内的区域成为危险区域,再画一个半径更大的圆,在这个园
内的区域是捕掠区域,在捕掠区域以外是安全区域。怪物自身通过检测有危险的物体是处于自己的那个区域来判定自
身当前的环境是安全状态是捕掠状态还是危险状态。如果是安全状态既可以什么也不做保持原来的行为方式,如果是
捕掠状态则看看是否是要追击,如果是危险状态则看看是要追击还是要逃跑。
追击或者逃跑或者随意的乱走都是移动状态,所以这里将移动状态也划分为这几类:
静止、随意游走、追击、逃跑。
每一种类型的怪物能"感受"到的环境是不一样的,有的永远感觉到是安全的,有的只能感觉到安全和危险,等等
而每一种环境状态下,不同的怪物会有不同的移动行为表现,例如危险环境下,有的会逃跑,有的会追击,有的
若无其事。
以上所述环境状态和移动状态的不同组合,就模拟了不同类型的行为表现。
在很多arpg游戏中都有一些不同"性格"的怪物,当玩家接触它们的时候它们
会有不同的表现。
有些怪物你接近它,攻击它,他都没反应,这里将这类怪物称之为蒙昧型的。
有些怪物你接近它,他会逃跑,这里将这类称为但小型的。
有些怪物你接近它,他可能主动进攻你,进攻一下又会逃跑,这样反反复复,这类就称之为狡猾型的。
有些怪物你接近它,他会对你穷追不舍,这类这里称之为凶恶型的。
上面所述的四种类型在视觉表现上首先表现为位置的移动变化。这个演示中就来演示控制这些
变化的AI。
上面说实现方案,是一个分类方案的应用。
程序功能很多实现都使用了树状的逻辑结构
首先将怪物所处的环境分为三类: 安全、捕掠、危险
这里按照圆域来计算。以怪物自身为中心画圆,第一个圆内的区域成为危险区域,再画一个半径更大的圆,在这个园
内的区域是捕掠区域,在捕掠区域以外是安全区域。怪物自身通过检测有危险的物体是处于自己的那个区域来判定自
身当前的环境是安全状态是捕掠状态还是危险状态。如果是安全状态既可以什么也不做保持原来的行为方式,如果是
捕掠状态则看看是否是要追击,如果是危险状态则看看是要追击还是要逃跑。
追击或者逃跑或者随意的乱走都是移动状态,所以这里将移动状态也划分为这几类:
静止、随意游走、追击、逃跑。
每一种类型的怪物能"感受"到的环境是不一样的,有的永远感觉到是安全的,有的只能感觉到安全和危险,等等
而每一种环境状态下,不同的怪物会有不同的移动行为表现,例如危险环境下,有的会逃跑,有的会追击,有的
若无其事。
以上所述环境状态和移动状态的不同组合,就模拟了不同类型的行为表现。
这个示例中,深灰色的表示蒙昧型的,绿色的表示胆小型的,紫色的表示狡猾型的,红色表示凶狠型的,请见示例(点击画面可增加更多移动单位):
点击打开链接
- 用于游戏中不同性格怪物移动表现AI演示
- ARPG游戏中怪物AI实现
- < Unity 3D专栏 >游戏中 - 怪物AI基础篇
- [Unity3D]Unity3D游戏开发之怪物AI
- [Unity3D]Unity3D游戏开发之怪物AI
- Unity游戏开发 怪物巡逻AI
- 【Unity3D自学记录】游戏开发之怪物AI
- Cocos2d-x怪物智能AI怪物也有智商----之游戏开发《赵云要格斗》(6)
- 关于怪物AI
- Unity3D怪物基本AI
- 《MFC游戏开发》笔记九 游戏中的碰撞判定初步&怪物运动简单AI
- 《MFC游戏开发》笔记九 游戏中的碰撞判定初步&怪物运动简单AI
- 《MFC游戏开发》笔记九 游戏中的碰撞判定初步&怪物运动简单AI
- Cocos2d-x怪物智能AI怪物也有智商--之游戏开发《赵云要格斗》(6) cocos2dx 3.3移植版
- 怪物如何追随玩家_怪物AI
- java中不同进制数据表现
- unity ShaderForge 移动端与PC端表现不同
- unity3d 怪物的简单ai
- JAVA新手学习笔记——JAVA实战经典(李兴华)第二部分A
- 关于main(int argc,char *argv[])里面参数的说明
- 【第八章】 对ORM的支持 之 8.1 概述 ——跟我学spring3
- SNMPv3 - 用户安全模型
- JAX-WS 异步调用
- 用于游戏中不同性格怪物移动表现AI演示
- 从今天起记录每一个问题
- windows7 隐藏文件怎样查看
- linux内核wait_queue深入分析
- 【第八章】 对ORM的支持 之 8.2 集成Hibernate3 ——跟我学spring3
- 老程序员的忠告:不要做浮躁的软件工程师
- 80386保护模式--分页机制,附pmtest8代码详解
- java基础之IO操作
- 幸福家庭的管理秘诀