首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >蜘蛛模型碰撞响应

蜘蛛模型碰撞响应
EN

Stack Overflow用户
提问于 2013-12-06 22:34:39
回答 1查看 44关注 0票数 0

我正在使用legs演示的一个调整,从开放进程和尝试一个简单的回避AI为我生成的蜘蛛。目标是让AI蜘蛛避开玩家控制的蜘蛛。我的代码:

代码语言:javascript
复制
float distance = sqrt((c2.currentX - creature.currentX)*(c2.currentX - creature.currentX)+(c2.currentY-creature.currentY)*(c2.currentY-creature.currentY));      

if (distance < c2.radius){
    c2.heading = atan(c2.heading);
    if(millis() - time >= wait){
        time = millis();
    }
}

这位于我更新后的draw() andI中,它收到了AI的响应,但得到的响应要么是AI静止不动,要么是离开屏幕。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2013-12-07 09:01:55

如果你想让AI爬虫直接离开玩家,那么像这样计算你的方向可能会更好(尽管在看不到所有代码的情况下很难确定):

代码语言:javascript
复制
c2.heading = atan2(c2.currentY - creature.currentY, c2.currentX - creature.currentX);

这样做的目的是计算从creaturec2的角度,并将其用作标题。结果应该是c2将直接离开creature

(我假设c2就是这里的AI爬虫!)

顺便说一句,向atan传递一个角度可能不会给你带来任何有用的东西。它被设计为接受三角比率作为参数。atan2非常类似,但它通常更有用,因为它为您做了更多的工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20426473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档