从unity的一个例子中移植的一个RVO2例子

动态添加确实存在这个问题,就是添加的障碍物范围内有移动对象,需要新建一个。那目前最快捷的方式就是每次删除,都清空obstacles,其他所有障碍物都重新添加,虽然这很蠢。

等下个版本我改了障碍物的存储方式解决吧,现在的数组形式对移除很不友好。

我尝试过,会很消耗性能,导致游戏很卡

确实,找不到指定的障碍物点

目前我还没有放进项目中使用,但是可以预见的是性能将会是瓶颈,所以也在想办法优化,后面也计划出一个项目级的版本进行演示。


大佬好像更新位置 设置他的速度 也会有抖动问题 是使用的方式不对吗。、、

单纯的改速度不行,比如两者之间的距离比你设置的速度长度要小,或者预警距离比你的速度长度要小,就会发生鬼畜一样的情况。这里目前没有做保护处理,我记录一下,后面会改掉。

1赞

假设我需要改动速度 是直接设置maxspeed吗?现在好像有点乱了 哈哈哈哈

目前是测试版,只改maxSpeed就可以了,后面会在游戏逻辑层给一个参数去修改,类似于你截图里的200会成为一个变量。最近比较忙,更新会慢一些。 :sweat_smile:

好滴!大佬这个是真的牛逼 我自己从git上下的 1200个不分帧计算 卡的爆炸 你这个1200fps既然还有59 太猛了 !_IX1TE``TP8%V23$OT

joy:我也是把unity的一个例子翻成了ts版,原版git地址在上面的回复中有。

可能是我自己的人的问题 哈哈哈哈 :rofl:

大佬 下午试了一下 好像改maxspeed没有效果 移动速度还是一样的

哦,记错了,就是改你看到的200那里。改个1和5做对比就可以看出变化了。

好滴 可以用了

版本小更了一下,修改了障碍物数据结构,方便增加和删除。

1赞

大佬还有在维护这个项目吗 发现对象间碰撞有时候会把其中一个对象顶出去 位移的幅度有点大 这个地方能怎么处理吗

我也发现了这个现象,但是目前没有定位到问题。最近很忙,更新得比较慢。刚刚下班 :joy:

大佬,你好,比如说现在我的项目是通过每帧去x和y都是去+=增量然后设置坐标的,能用这个吗?发现加了之后,每个对象碰撞后的坐标一直在瞬移

可以的,只要每帧将gameAgent里的targetPos换成你想要坐标就可以了。不能RVO算出了一个坐标并设置后,再自己去设置node的坐标。