二维上怪物的随机移动、有倾向性移动的小算法

本文深入探讨了游戏开发中怪物的两种移动算法:随机移动与有倾向性移动。通过数学原理,如单位向量和勾股定理,详细解释了如何生成怪物的移动方向。在有倾向性移动中,引入了玩家与怪物的相对位置,以及随机因素的权重调整,展示了更复杂的游戏AI设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

随机移动:

假设怪物是完全不定向移动,
建立XY轴,使用单位向量(X,Y)表示方向,
随机一个在 -1~1 之间的浮点数,设为X,
单位向量有勾股定理 X2 + Y2 = 1,求得Y,此处Y>0所以要再随机一下决定正负号,
于是得到怪物的移动方向(X,Y)。

有倾向性地移动:

假设怪物还是随机移动但是会逐渐向玩家靠拢,
先如之前那样随机一个方向(X,Y),
然后根据怪物和玩家的相对位置,相减得到位置差,记做(X0,Y0),
那么计算得到新矢量(X0,Y0)+K(X,Y),
此处K代表随机因素影响的权重,K越小,怪物向玩家移动的倾向越明显,
于是得到怪物的移动方向(X0+KX,Y0+KY)。(注:此向量不是单位向量,一般还需要单位化)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值