flocking0703
文章目录
- 概要
- 整体架构流程
- 技术名词解释
- 技术细节
- 小结
1.理论学习
flocking:模拟群体行为的简单技术
Flocking,拥有4项简单的规则,把它们组合在一起时,为自治主体群给出一个类似于鸟群、鱼群的群体行为的逼真形式。
定向行为规则:分离原则、列队原则、聚合原则、躲避原则
分离原则:定向时要避免与本地flock同伴拥挤。即定时检测邻近同伴,避免拥挤;
列队原则:驶向本地flock同伴的平均航向。即检测邻近同伴航向、速度,获取平均值并调整自己;
聚合原则:定向时朝着本地flock同伴的平均位置移动。即检测邻近同伴,平均位置然后调整其匹配航向;
躲避原则:使避免撞上局部区域内的障碍或敌人。即“向前看一段距离”,遇到障碍物、敌人调整航向、速度进行躲避。
游戏开发实际应用:Flocking为个体运动和构造一个更真实的玩家可探索环境提供了了强有力帮助;它可以用于许多怪兽以及威胁性小的生物,以及控制不对队形与越过3D环境的运动。与简单的脚本结果相比,被创造的动物群体能在地形中更真实地游走。怪兽能以一种更自然的方式在场景中徘徊,躲避玩家可能袭击的位置,当flock(群体)变得足够强大时也许会发动反击。可能性几乎是无穷的。大致的应用场景有:
- 游戏中的NPC:在角色扮演游戏或模拟游戏中,可以使用flocking算法来模拟NPC之间的群体行为。例如,一群野兽可以追逐玩家或彼此之间相互追逐,创造出动态和有趣的游戏体验。
- 群体敌人:在动作游戏中,可以使用flocking算法来模拟敌人群体的行为。例如,一群敌人可以向玩家移动并试图攻击玩家,或者在玩家攻击后逃离或反击。
- 鸟群和飞行器:在飞行游戏中,可以使用flocking算法来模拟鸟群或飞行器之间的行为。例如,一群飞行器可以相互协作或互相攻击,创造出更加真实的战斗场景。
- 虚拟世界模拟:在虚拟世界模拟中,可以使用flocking算法来模拟人群、交通流等。例如,在一个城市规划游戏中,可以使用flocking算法来模拟人群的运动和交通流,以评估不同设计方案的优劣。
- 论文构想:
Flocking算法可以用于模拟人群船舱甲板等海上遇险疏散逃生的情况。在模拟人群疏散逃生的场景中,可以使用flocking算法来模拟人群的运动和交互,以评估不同方案的效率和安全性。
具体来说,可以使用flocking算法来模拟人群的个体行为,例如人们的行走速度、转向方式、避免碰撞等。同时,可以设置不同的逃生场景,例如火灾、恐怖袭击、建筑物倒塌等,以及不同的出口和障碍物,来模拟人群在不同情况下的逃生行为。
通过模拟人群疏散逃生,可以评估不同逃生方案的有效性和安全性。此外,还可以研究人群在逃生过程中的心理和行为反应,以及不同引导措施对人群疏散效率的影响。
需要注意的是,在模拟人群疏散逃生的场景中,需要考虑多个因素,如人群数量、空间大小和布局、时间等因素,同时还需要考虑算法的性能和可扩展性。因此,在具体应用中需要根据实际情况选择合适的flocking算法实现方式和优化策略。
注:
为flock添加生命时钟规则,使其拥有时间的概念——偏离同伴的成员联系越来越低,配偶之间能进行“繁衍”产生下一代,年老的成员会逐渐老死。以及捕食者和捕食行为——一种flock被喂养另一种。
flocking0703相关推荐
最新文章
- 扫盲 about session,Bean,网关等
- 给Ubuntu 开启 root 帐号并可 SSH 登录
- 深度学习-Tensorflow2.2-tf.data输入模块{2}-tf.data基础用法-09
- python apache mysql_在Linux系统上部署Apache+Python+Django+MySQL环境
- Excel VBA 重要参考(原始的VBA代码)
- 安卓9 webview打开指定url报错或者空白
- Tokenisation word segmentation sentence segmentation
- win10安装kali组双系统
- MS SQL Server 2000 游标的使用方法
- 《编程珠玑》---笔记。浏览此文,一窥此书。
- SpringBoot上传文件类型检测
- 计算机学院运动会加油,学校运会加油稿
- git 的详细使用 操作暂存区
- 搞笑生活短视频为何涨粉飞快?有三个原因,抓住用户心理是关键
- 10----编程分苹果
- 织梦标签全攻略[转]
- (UE4 4.27)自定义PrimitiveComponent
- 使用封装的API接口,在控制台输出undefined
- VMware vCenter突然无法正常登陆,出现[503 Service Unavailable]
- 浏览器发声 Oscillator 无音频文件